2012/11/5 Danilo Silva <[email protected]>
> > > 2012/11/5 Edson Lidorio <[email protected]> > >> Boa tarde, >> >> Estou com um probleminha na minha function, o segundo comando, o update >> não esta sendo executado! >> O que esta errado? >> >> >> CREATE OR REPLACE FUNCTION fluxo_caixa_contas_pag() >> RETURNS trigger AS >> $BODY$ >> BEGIN >> >> IF (new.cd_conta is not NULL) and (new.dt_pgto is not NULL) and >> (new.vlr_pgto is not NULL) and (new.fg_paga = 'S') THEN >> INSERT INTO fluxcaix( >> cd_fil,dt_mov, fg_tipo_lcto, fg_forma_lcto, fg_origem, >> no_origem, historico, no_doc, vlr_doc, dt_usuinc, nm_usuinc, >> dt_usualt, nm_usualt,fg_origem_apto) >> VALUES ( >> new.cd_fil, >> new.dt_pgto, >> 'S', >> new.fg_tipo_pgto, >> 'A', >> new.cd_titulo, >> new.historico, >> new.no_doc, >> new.vlr_pgto, >> new.dt_usuinc, >> new.nm_usuinc, >> new.dt_usualt, >> new.nm_usualt, >> new.fg_origem); >> RETURN NEW; >> END IF; >> RETURN NULL; >> >> update contapag set >> fg_paga = 'S' >> where cd_titulo = NEW.cd_titulo; >> >> END; >> $BODY$ >> LANGUAGE plpgsql VOLATILE >> COST 100; >> ALTER FUNCTION fluxo_caixa_contas_pag() >> OWNER TO postgres; >> >> O update está depois do RETURN, ou seja, não está sendo executado. Para > que todas as operações sejam executadas, as mesmas devem estar antes do > RETURN; > > Tome cuidado com RETURN NULL, pois se não me engano, o return null "NÃO" > executa a operação a qual foi disparada a trigger. > > []s > Danilo > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
