Trigger não chama Procedure...

OseasTormen mentux em gmail.com
Sex Ago 1 16:08:13 -03 2008


camarada, acho que isso ae deveria ter dado uma excecao

tenta isso aki

execute procedure ATUALIZA_SALDO_PAGAR(NEW.CODIGO);


flw


-- 
____________________________
OseasTormen
Chapecó - SC
"VBSHAR" <sharmaq em terra.com.br> escreveu na 
mensagem news:g6v9jb$480$1 em ger.gmane.org...
> Bom dia
>
>
> pessoal, eu tenho uma base FB 1.5 e nela uma procedure que serva para 
> atualizar o valor pago de uma conta, esta procedure é chamada por uma 
> trigger numa tabela de cheques recebidos. Seguem as mesmas:
>
> A procedure:
> ===================================================
> CREATE PROCEDURE ATUALIZA_SALDO_PAGAR (
>    COD_LANCTOS INTEGER)
> AS
> DECLARE VARIABLE TOTAL_GERAL NUMERIC(12,2);
> DECLARE VARIABLE TOTAL_CHEQUE NUMERIC(12,2);
> DECLARE VARIABLE TOTAL_CARTAO NUMERIC(12,2);
> DECLARE VARIABLE TOTAL_BOLETOS NUMERIC(12,2);
> begin
>  /*TOTALIZA O JA PAGO EM CHEQUES*/
>     SELECT COALESCE(SUM(VALOR),0)
>       FROM contas_cheques
>       WHERE COD_LANCTO=:COD_LANCTOS and contas_cheques.COMPENSADO='S'
>       INTO :TOTAL_CHEQUE;
>  /*TOTALIZA O JA PAGO EM CARTOES*/
>     SELECT COALESCE(SUM(VALOR),0)
>       FROM contas_cartoes
>       WHERE COD_LANCTO=:COD_LANCTOS and contas_cartoes.pago=-1
>       INTO :TOTAL_CARTAO;
>  /*TOTALIZA O JA PAGO EM BOLETOS*/
>     SELECT COALESCE(SUM(VALOR),0)
>       FROM contas_boletos
>       WHERE COD_LANCTO=:COD_LANCTOS and contas_boletos.pago=-1
>       INTO :TOTAL_BOLETOS;
>  /*UNE TODAS AS VARIAVEIS NUM SO*/
>  TOTAL_GERAL=TOTAL_CHEQUE + TOTAL_CARTAO;
>
>  UPDATE contas_lancamentos
>  SET CONTAS_LANCAMENTOS.valor_pago=:TOTAL_GERAL
>  WHERE CONTAS_LANCAMENTOS.CODIGO=:COD_LANCTOS;
>
> /*SE O VALOR PAGO FOR IGUAL OU MAIOR QUE O VALOR DEVIDO POE A CONTA COMO 
> PAGA*/
>
>  UPDATE contas_lancamentos
>  SET CONTAS_LANCAMENTOS.pago=-1
>  WHERE CONTAS_LANCAMENTOS.CODIGO=:COD_LANCTOS AND 
> CONTAS_LANCAMENTOS.VALOR_PAGAR<=contas_lancamentos.valor_pago;
>  suspend;
> End
> ===================================================
> A triger é:
> ===================================================
> CREATE TRIGGER CONTAS_CHEQUES_AIUD0 FOR CONTAS_CHEQUES
> ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 0
> AS
> begin
>    execute procedure ATUALIZA_SALDO_PAGAR NEW.CODIGO;
> end
> ===================================================
>
> Bom, a procedure funciona se eu chamar ela manualmente pelo IBExpert, mas 
> quando eu altero a tabela cheques a trigger parece não disparar a 
> procedure. Não dá mensagem de erro nenhum, só não funciona....
>
> O que pode ser?
>
>
>
>


--------------------------------------------------------------------------------


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 







Mais detalhes sobre a lista de discussão lista