Problemas com stored procedure ?

23/09/2004

Utilizo delphi 6 e firebird 1.5, tenho uma stored procedure que funciona perfeitamente. Só que coloquei esta procedure dentro de um timer da seguinte maneira:
 
  procedure Tform1.timer1......
    begin
      timer1.enabled:=false;   
      storedproc.parambyname(´num´).asstring:=´1´;
      storedproc.execproc;
      showmessage(storedproc.parambyname(´resp´).asstring);
      timer1.enabled:=true;   
    end;




Se eu colocar esta stored procedure para executar de dentro de um botão ela funciona perfeitamente se eu colocar dentro do timer não traz nada como resposta. Não sei mais o que fazer, já deletei a stored procedure e coloquei, já coloquei um sleep(5000) depois que a executo e nada.
Se alguém puder me ajudar ?


Jc_analista

Respostas

23/09/2004

Motta

não deveria ter nada a ver, bote num bloco protegido (try excepty) e veja se houve erro na execução


Responder Citar

23/09/2004

Gandalf.nho

Está abrindo uma transação para a procedure?


Responder Citar

23/09/2004

Beppe

Verificou se o timer está habilitado e interval com um valor correto?


Responder Citar

23/09/2004

Jc_analista

Não esta ocorrendo erro, utilizo o ibexpert e lá ela roda normalmente eu tenho um objeto da paleta interbase que e uma ibtransaction que esta relacionado com o ibdatabase o estranho e que se eu colocar em um botão ele funciona corretamente quando clico no botão. O timer eu ativo no evento oncreate do form e o intervalo esta correto


Responder Citar

23/09/2004

Jc_analista

fiz um teste coloquei na ultima linha da procedure um valor como resposta tipo resp:=15;
e fiz o teste, não esta executando a stored procedure;
mas quando faço a execução passo a passo ele passa em cima da linha storedproc.execproc; não tem nada desviando.


Responder Citar

23/09/2004

Beppe

fiz um teste coloquei na ultima linha da procedure um valor como resposta tipo resp:=15;


Na última linha deve haver um [b:98c5ff36f8]SUSPEND[/b:98c5ff36f8]. O estranho é que vc disse que no botão funciona...


Responder Citar

23/09/2004

Jc_analista

Desculpe última linha antes do suspend, fiz uma aplicação nova e coloquei do mesmo jeito que estava na antiga e funcionou.

Só que este e meu form principal, não posso perde-lo


Responder Citar

23/09/2004

Beppe

Vc deve ter mexido em algo mais depois de ter testado com o botão. O param ´resp´ está configurado como de saída? O ShowMessage exibe o que?


Responder Citar

23/09/2004

Vinicius2k

fiz uma aplicação nova e coloquei do mesmo jeito que estava na antiga e funcionou.


Mas a aplicação entra ou não no evento OnTimer do Timer ?
Verifique no Object Inspector se o Evento OnTimer do Timer está devidamente associado à procedure TForm1.Timer1OnTimer...

T+


Responder Citar

23/09/2004

Jc_analista

entra no evento on timer e o parametro resp e de saida. Não tem lógica, esse erro.


Responder Citar

23/09/2004

Beppe

entra no evento on timer e o parametro resp e de saida. Não tem lógica, esse erro.

E o que o ShowMessage mostra?


Responder Citar

23/09/2004

Jc_analista

resolvi, apaguei a stored procedure no banco, apaguei tudo relacionado com ela compilei, fiz tudo de novo e funcionou e pau do delphi. valew todo mundo que me ajudou.


Responder Citar