Autor Tópico: Scriptcase e MySql Stored Procedures  (Lida 610 vezes)

graciela_boschetti

  • Novato
  • *
  • Mensagens: 8
    • Email
Scriptcase e MySql Stored Procedures
« Online: Março 10, 2016, 07:15:00 pm »
Pessoal, já tem bastante tempo, então gostaria de saber se alguém já conseguiu usar uma Stored Procedure que retorne valores para serem usados em campos de uma consulta no Scriptcase.
Por favor não me deixem no vacuo!
Ví gente perguntando sem resposta. Peço aos amigos que me ajudem. Tenho muitas Stored Procedures que fazem cálculos de campos que vou precisar incluir na consulta/relatório, mas não sei como fazer.

Desde já obrigada!

ricardosenaspbr

  • Intermediário
  • ***
  • Mensagens: 101
  • Non scholae, sed vitae discimus
Re:Scriptcase e MySql Stored Procedures
« Responder #1 Online: Março 10, 2016, 07:56:05 pm »
Tem sim...

Eu chamo direto no sc_exec
---------------------
// ---- EXECUTA A PROCEDURE
$proc = "calcular_icms";

$sql ="CALL ".$proc."(5,".{pr_item_pedido}.", @vl_icms)";
sc_lookup(rs,$sql);
sc_lookup(rs,"SELECT @vl_icms ");
//-- RETORNO DA PROC
$v_icms = {rs[0][0]};
//---atualizando o VALOR DO ICMS  NA TABELA DE PEDIDOS ITENS
// SQL statement parameters
$update_table  = 'gec_pedidos_itens';      // Table name
$update_where  = "idgec_pedidos_itens = {idgec_pedidos_itens}"; // Where clause
$update_fields = array(   // Field list, add as many as needed
     "vl_icms_item_pedido = $v_icms",
 );
// Update record
$update_sql = 'UPDATE ' . $update_table
    . ' SET '   . implode(', ', $update_fields)
    . ' WHERE ' . $update_where;
sc_exec_sql($update_sql);
--------------------------
atenciosamente,

Ricardo Sena
Analista de T.I.
V. 8.1
"Non scholae, sed vitae discimus"(Não estudamos para a escola, mas para a vida)

graciela_boschetti

  • Novato
  • *
  • Mensagens: 8
    • Email
Re:Scriptcase e MySql Stored Procedures
« Responder #2 Online: Março 10, 2016, 09:52:30 pm »
Olá Ricardo,

Muito obrigada!! Mesmo!!
abraços,
Graciela

abdmelo

  • Novato
  • *
  • Mensagens: 3
Não Resolvido ~> Scriptcase e MySql Stored Procedures
« Responder #3 Online: Novembro 27, 2016, 11:44:06 am »
Olá,

Alguém poderia dar um exemplo prático de como usar o resultado de uma Stored Procedure (query onde são passados parâmetros como data inicial e final e o resultado são vários registros, cujo os campos [cabeçalhos] são: id, nome, telefone, e-mail, etc) em uma aplicação do tipo consulta, no ScriptCase, sem e/ou com filtro(s) como data inicial e final?

Fiz vários testes, inclusive usando o novo campo "Preparação SQL" , sem sucesso.

Erro frequente:

Atenção:
Erro ao acessar o banco de dados
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'call nome_procedure('2016-01-03', '2016-01-08') ; ) nm_s' at line 1
select count(*) from (call nome_procedure('2016-01-03', '2016-01-08') ; ) nm_sel_esp

Obs.: pelo que entendi, o SC tenta fazer uma "sub consulta" com o resultado da chamada da SP (erro de sintaxe). Não encontrei nada semelhante nos fóruns, manuais e vídeos disponíveis. O banco utilizado é o MySQL v. 5.6.28-0.

Faço das minas, as palavras da Graciela: "Por favor, não me deixem no vácuo!"