[firebase-br] Exception

Ricardo Rodrigues ricardopd em gmail.com
Qui Jul 31 10:06:31 -03 2014


Bom dia galera, estou tendo problema em uma execução de uma triguer mais
não estou conseguindo identificar o erro, gostaria que quando a mesma
executasse o sql estorasse o sql na tela pra mim verifica o que está erro,
deu uma olha em when any mais nao consegui utilizar. Segue a trigue abaixo :


CREATE OR ALTER TRIGGER TG_VAL_ATUA_PROD FOR PRODUTO_REFERENCIA_VALORES
ACTIVE AFTER UPDATE POSITION 0
AS

DECLARE VARIABLE pSQL VARCHAR(500);

BEGIN

  IF ((NEW.ultima_venda<>OLD.ultima_venda) OR
(NEW.ultima_compra<>OLD.ultima_compra)) THEN
  BEGIN

      IF (NEW.cod_produto>0) THEN

      BEGIN

         pSQL =' update PRODUTO set'

             ||'  PRODUTO.ULTIMA_COMPRA="'||new.ULTIMA_COMPRA||'"'

             ||', PRODUTO.ULTIMA_VENDA ="'||new.ULTIMA_VENDA||'"'

             ||'where
PRODUTO.COD_PRODUTO_REFERENCIA='||new.COD_PRODUTO_REFERENCIA

             ||'  and PRODUTO.COD_PRODUTO='||new.COD_PRODUTO;

  pSQL = pSQL||case when new.cod_empr in  (1,2,3)  then ' and
produto.cod_empr in  (1,2,3) '
               end;

  END

      ELSE

      BEGIN

         pSQL =' update PRODUTO_REFERENCIA set'

             ||'
 PRODUTO_REFERENCIA.ULTIMA_COMPRA="'||new.ULTIMA_COMPRA||'"'

             ||', PRODUTO_REFERENCIA.ULTIMA_VENDA
="'||new.ULTIMA_VENDA||'"'
             ||'where
PRODUTO_REFERENCIA.COD_PRODUTO_REFERENCIA='||new.COD_PRODUTO_REFERENCIA;

  pSQL = pSQL||case when new.cod_empr in  (1,2,3)  then ' and
PRODUTO_REFERENCIA.cod_empr in  (1,2,3) '
               end;

      END

      EXECUTE STATEMENT pSQL;

  END

END



Mais detalhes sobre a lista de discussão lista