Não executa a mensagem do goto error (raiserror)
Boa Tarde Pessoal, conseguem me ajudar?
NO IF onde verifico se retorna algum registro, o select do do mesmo retorna 1 registro, porem não sai do select do iff, não entra no begin para ir para o goto error.
Grifado de vermelho
ALTER TRIGGER [DBO].[LXD_LOJA_VENDA] ON [DBO].[LOJA_VENDA] FOR DELETE NOT FOR REPLICATION AS
/ DELETE trigger on LOJA_VENDA /
/ default body for LXD_LOJA_VENDA /
BEGIN
DECLARE @NUMROWS INT,
@NULLCNT INT,
@VALIDCNT INT,
@INSCODIGO_FILIAL CHAR(6),
@INSTICKET CHAR(8),
@INSDATA_VENDA DATETIME,
@ERRNO INT,
@ERRMSG VARCHAR(255),
@USUARIOS_AUT VARCHAR(MAX)
SELECT @NUMROWS = @@ROWCOUNT
*/*-- Verifica Movimentacao Estoque PA ---------------------------------------------------------------------------------*/*
DECLARE @XDATASALDO *DATETIME*
SELECT @XDATASALDO='18000101'
SELECT @XDATASALDO=**ISNULL**(*CONVERT*(*DATETIME*,VALOR_ATUAL,103),'18000101')
FROM PARAMETROS
WHERE PARAMETRO='DATA_BLOQUEIO_MOV_PA'
IF
(
SELECT *Count*(*)
FROM DELETED
WHERE DATA_VENDA <= @XDATASALDO ) > 0
BEGIN
SELECT @ERRNO=30002,
@ERRMSG='Nao e possivel Excluir Movimentacao de Estoque anterior a '+*CONVERT*(*CHAR*(10),@XDATASALDO,103)+' !' GOTO ERROR
END
*--declare @USUARIOS_AUT VARCHAR(MAX), @ERRMSG VARCHAR(MAX), @ERRNO INT*
IF *Suser_sname*() NOT IN ('SA')
BEGIN
*--RAISERROR('NÃO TEM PERMISSAO',0,42)*
IF EXISTS
(
SELECT *
FROM DELETED,
LOJA_VENDA_PRODUTO,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_PRODUTO.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_PRODUTO.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_PRODUTO.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_PRODUTO.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_PRODUTO.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE )
OR
EXISTS
(
SELECT *
FROM DELETED,
LOJA_VENDA_TROCA,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_TROCA.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_TROCA.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_TROCA.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_TROCA.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_TROCA.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE )
BEGIN
SELECT @ERRNO=30002,
@ERRMSG='NAO E POSSIVEL EXCLUIR MOVIMENTACAO DE ESTOQUE ANTERIOR AO AJUSTE !' GOTO ERROR
END
END
ELSE
*--SELECT * FROM TT_REPROCES_ESTOQUE_PROD*
BEGIN
*--RAISERROR('TEM PERMISSAO',0,42)*
INSERT TT_REPROCES_ESTOQUE_PROD
SELECT ESTOQUE_PRODUTOS.PRODUTO,
DELETED.CODIGO_FILIAL,
DELETED.DATA_VENDA,
ESTOQUE_PRODUTOS.DATA_AJUSTE,
NULL DATA_REPROSS
FROM DELETED,
LOJA_VENDA_PRODUTO,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_PRODUTO.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_PRODUTO.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_PRODUTO.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_PRODUTO.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_PRODUTO.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE
UNION
SELECT ESTOQUE_PRODUTOS.PRODUTO,
DELETED.CODIGO_FILIAL,
DELETED.DATA_VENDA,
ESTOQUE_PRODUTOS.DATA_AJUSTE,
NULL DATA_REPROSS
FROM DELETED,
LOJA_VENDA_TROCA,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_TROCA.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_TROCA.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_TROCA.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_TROCA.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_TROCA.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE
END
*/*---------------------------------------------------------------------------------------------------------------------*/*
*/* LOJA_VENDA R/2684 LOJA_VENDA_VENDEDORES ON PARENT DELETE CASCADE */*
DELETE LOJA_VENDA_VENDEDORES
FROM LOJA_VENDA_VENDEDORES,
DELETED
WHERE LOJA_VENDA_VENDEDORES.CODIGO_FILIAL = DELETED.CODIGO_FILIAL
AND LOJA_VENDA_VENDEDORES.TICKET = DELETED.TICKET
AND LOJA_VENDA_VENDEDORES.DATA_VENDA = DELETED.DATA_VENDA
*/* LOJA_VENDA R/1222 LOJA_VENDA_PRODUTO ON PARENT DELETE CASCADE */*
DELETE LOJA_VENDA_PRODUTO
FROM LOJA_VENDA_PRODUTO,
DELETED
WHERE LOJA_VENDA_PRODUTO.CODIGO_FILIAL = DELETED.CODIGO_FILIAL
AND LOJA_VENDA_PRODUTO.TICKET = DELETED.TICKET
AND LOJA_VENDA_PRODUTO.DATA_VENDA = DELETED.DATA_VENDA
*/* LOJA_VENDA R/975 LOJA_VENDA_TROCA ON PARENT DELETE CASCADE */*
DELETE LOJA_VENDA_TROCA
FROM LOJA_VENDA_TROCA,
DELETED
WHERE LOJA_VENDA_TROCA.CODIGO_FILIAL = DELETED.CODIGO_FILIAL
AND LOJA_VENDA_TROCA.TICKET = DELETED.TICKET
AND LOJA_VENDA_TROCA.DATA_VENDA = DELETED.DATA_VENDA
RETURN ERROR:
RAISERROR @ERRNO @ERRMSG
ROLLBACK TRANSACTIONEND
ALTER TRIGGER [DBO].[LXD_LOJA_VENDA] ON [DBO].[LOJA_VENDA] FOR DELETE NOT FOR REPLICATION AS
/ DELETE trigger on LOJA_VENDA /
/ default body for LXD_LOJA_VENDA /
BEGIN
DECLARE @NUMROWS INT,
@NULLCNT INT,
@VALIDCNT INT,
@INSCODIGO_FILIAL CHAR(6),
@INSTICKET CHAR(8),
@INSDATA_VENDA DATETIME,
@ERRNO INT,
@ERRMSG VARCHAR(255),
@USUARIOS_AUT VARCHAR(MAX)
SELECT @NUMROWS = @@ROWCOUNT
*/*-- Verifica Movimentacao Estoque PA ---------------------------------------------------------------------------------*/*
DECLARE @XDATASALDO *DATETIME*
SELECT @XDATASALDO='18000101'
SELECT @XDATASALDO=**ISNULL**(*CONVERT*(*DATETIME*,VALOR_ATUAL,103),'18000101')
FROM PARAMETROS
WHERE PARAMETRO='DATA_BLOQUEIO_MOV_PA'
IF
(
SELECT *Count*(*)
FROM DELETED
WHERE DATA_VENDA <= @XDATASALDO ) > 0
BEGIN
SELECT @ERRNO=30002,
@ERRMSG='Nao e possivel Excluir Movimentacao de Estoque anterior a '+*CONVERT*(*CHAR*(10),@XDATASALDO,103)+' !' GOTO ERROR
END
*--declare @USUARIOS_AUT VARCHAR(MAX), @ERRMSG VARCHAR(MAX), @ERRNO INT*
IF *Suser_sname*() NOT IN ('SA')
BEGIN
*--RAISERROR('NÃO TEM PERMISSAO',0,42)*
IF EXISTS
(
SELECT *
FROM DELETED,
LOJA_VENDA_PRODUTO,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_PRODUTO.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_PRODUTO.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_PRODUTO.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_PRODUTO.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_PRODUTO.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE )
OR
EXISTS
(
SELECT *
FROM DELETED,
LOJA_VENDA_TROCA,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_TROCA.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_TROCA.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_TROCA.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_TROCA.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_TROCA.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE )
BEGIN
SELECT @ERRNO=30002,
@ERRMSG='NAO E POSSIVEL EXCLUIR MOVIMENTACAO DE ESTOQUE ANTERIOR AO AJUSTE !' GOTO ERROR
END
END
ELSE
*--SELECT * FROM TT_REPROCES_ESTOQUE_PROD*
BEGIN
*--RAISERROR('TEM PERMISSAO',0,42)*
INSERT TT_REPROCES_ESTOQUE_PROD
SELECT ESTOQUE_PRODUTOS.PRODUTO,
DELETED.CODIGO_FILIAL,
DELETED.DATA_VENDA,
ESTOQUE_PRODUTOS.DATA_AJUSTE,
NULL DATA_REPROSS
FROM DELETED,
LOJA_VENDA_PRODUTO,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_PRODUTO.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_PRODUTO.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_PRODUTO.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_PRODUTO.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_PRODUTO.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE
UNION
SELECT ESTOQUE_PRODUTOS.PRODUTO,
DELETED.CODIGO_FILIAL,
DELETED.DATA_VENDA,
ESTOQUE_PRODUTOS.DATA_AJUSTE,
NULL DATA_REPROSS
FROM DELETED,
LOJA_VENDA_TROCA,
ESTOQUE_PRODUTOS,
LOJAS_VAREJO
WHERE DELETED.CODIGO_FILIAL = LOJA_VENDA_TROCA.CODIGO_FILIAL
AND DELETED.TICKET = LOJA_VENDA_TROCA.TICKET
AND DELETED.DATA_VENDA = LOJA_VENDA_TROCA.DATA_VENDA
AND DELETED.CODIGO_FILIAL=LOJAS_VAREJO.CODIGO_FILIAL
AND ESTOQUE_PRODUTOS.FILIAL=LOJAS_VAREJO.FILIAL
AND ESTOQUE_PRODUTOS.PRODUTO=LOJA_VENDA_TROCA.PRODUTO
AND ESTOQUE_PRODUTOS.COR_PRODUTO=LOJA_VENDA_TROCA.COR_PRODUTO
AND DELETED.DATA_VENDA < ESTOQUE_PRODUTOS.DATA_AJUSTE
END
*/*---------------------------------------------------------------------------------------------------------------------*/*
*/* LOJA_VENDA R/2684 LOJA_VENDA_VENDEDORES ON PARENT DELETE CASCADE */*
DELETE LOJA_VENDA_VENDEDORES
FROM LOJA_VENDA_VENDEDORES,
DELETED
WHERE LOJA_VENDA_VENDEDORES.CODIGO_FILIAL = DELETED.CODIGO_FILIAL
AND LOJA_VENDA_VENDEDORES.TICKET = DELETED.TICKET
AND LOJA_VENDA_VENDEDORES.DATA_VENDA = DELETED.DATA_VENDA
*/* LOJA_VENDA R/1222 LOJA_VENDA_PRODUTO ON PARENT DELETE CASCADE */*
DELETE LOJA_VENDA_PRODUTO
FROM LOJA_VENDA_PRODUTO,
DELETED
WHERE LOJA_VENDA_PRODUTO.CODIGO_FILIAL = DELETED.CODIGO_FILIAL
AND LOJA_VENDA_PRODUTO.TICKET = DELETED.TICKET
AND LOJA_VENDA_PRODUTO.DATA_VENDA = DELETED.DATA_VENDA
*/* LOJA_VENDA R/975 LOJA_VENDA_TROCA ON PARENT DELETE CASCADE */*
DELETE LOJA_VENDA_TROCA
FROM LOJA_VENDA_TROCA,
DELETED
WHERE LOJA_VENDA_TROCA.CODIGO_FILIAL = DELETED.CODIGO_FILIAL
AND LOJA_VENDA_TROCA.TICKET = DELETED.TICKET
AND LOJA_VENDA_TROCA.DATA_VENDA = DELETED.DATA_VENDA
RETURN ERROR:
RAISERROR @ERRNO @ERRMSG
ROLLBACK TRANSACTIONEND
Discussão (0)
Carregando comentários...