Bom dia pessoal,

Não sei que esta errado com a minha function, ao fazer o update ela 
atualizando os valor com null.
O que pode estar errado?,
Segue abaixo:

CREATE OR REPLACE FUNCTION public.baixa_saldo_conta_pagar (
)
RETURNS trigger AS
$body$
      BEGIN
         IF (TG_OP = 'INSERT') THEN
            UPDATE contas SET
            vlr_saldo_sai = (vlr_saldo_sai + NEW.vlr_pgto),
            vlr_saldo = (vlr_saldo - NEW.vlr_pgto),
            dt_usualt = now(),
            nm_usualt = new.nm_usualt
            WHERE cd_conta = NEW.cd_conta;
            RETURN NEW;
         END IF;
       IF (TG_OP = 'UPDATE') THEN
           UPDATE contas
           SET vlr_saldo_sai = ((vlr_saldo_sai - OLD.vlr_pgto) + 
NEW.vlr_pgto),
           vlr_saldo = ((vlr_saldo + OLD.vlr_pgto) - NEW.vlr_pgto),
           nm_usualt = new.nm_usualt
           WHERE cd_conta = NEW.cd_conta;
           RETURN NEW;
       END IF;
       IF (TG_OP = 'DELETE') THEN
           UPDATE contas
         set vlr_saldo_sai = (vlr_saldo_sai - OLD.vlr_pgto),
                 vlr_saldo = (vlr_saldo + OLD.vlr_pgto),
                 dt_usualt = OLD.dt_usualt,
                 nm_usualt = OLD.nm_usualt
             where cd_conta = OLD.cd_conta;
             RETURN OLD;
       END IF;
      END;
$body$
LANGUAGE 'plpgsql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100;

[]'s

Edson
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a