Olá a todos,
Eu escrevi a seguinte consulta para bloquear a fatura que possui preços diferentes dos da lista de preços, conforme mostrado abaixo.
-- Para bloquear faturas com preços diferentes da lista de preços
IF (@transaction_type='A' OR @transaction_type = 'U') AND CAST(@OBJECT_TYPE = '18')
BEGIN
SELECT T1.ItemCode,
T1.Price AS PO_Price,
T2.U_ListPrice AS Listed_Price
FROM OPCH AS T0
INNER JOIN
PCH1 AS T1 ON
T0.DocEntry = T1.DocEntry
LEFT OUTER JOIN
[dbo].[@PRICELISTS] AS T2 ON
T1.ItemCode = T2.U_ItemNo
WHERE
T1.DocEntry = @list_of_cols_val_tab_del) AND
(T1.Price <> T2.U_ListPrice)
BEGIN
SET @error = 123
SET @error_message = 'Desvio no preço'
END
END
Mas após a execução, recebi os seguintes erros
Msg 137, Nível 15, Estado 2, Linha 2
Deve declarar a variável escalar "@transaction_type".
Msg 137, Nível 15, Estado 2, Linha 19
Deve declarar a variável escalar "@list_of_cols_val_tab_del".
Msg 137, Nível 15, Estado 1, Linha 22
Deve declarar a variável escalar "@error".
Msg 137, Nível 15, Estado 1, Linha 23
Deve declarar a variável escalar "@error_message".
Por favor, ajuda
Saudações
Hitul