SET TERM ^ ;

CREATE OR ALTER TRIGGER TTBREMESSA_SETOR_B03U FOR TBREMESSA_SETOR
ACTIVE BEFORE UPDATE POSITION 3
AS
DECLARE VARIABLE PARCELA_TALAO_ID INTEGER;
BEGIN
  IF(NEW.SITUACAO = 0 AND OLD.SITUACAO = 1 AND NEW.ESTOQUE = '1')THEN
  BEGIN
     EXECUTE PROCEDURE SPU_TALAO_AGRUPAMENTO(NEW.REMESSA, NEW.TALAO_ID, 2);
  END

  IF(NEW.SITUACAO <> OLD.SITUACAO AND OLD.SITUACAO = 1 AND NEW.SITUACAO = 0)THEN
  BEGIN
    :PARCELA_TALAO_ID = COALESCE((SELECT FIRST 1 B.NFE_ID FROM TBPEDIDO_ITEM_PROCESSADO B WHERE B.CONTROLE = NEW.TALAO_ID AND B.NFE_ID > 0),0);
    IF(:PARCELA_TALAO_ID > 0 OR NEW.NFE_ID > 0)THEN
    BEGIN
       EXCEPTION "..." 'TALAO POSSUI PARCELAS GERADAS PARA PAGAMENTO, ALTERACAO CANCELADA!';
    END
  END
END^

SET TERM ; ^