Avalados por :

Como bloquear faturas com preços diferentes da lista de preços - Consulta SQL e solução de erros.

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 1 Vistas
0
Cargando...

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

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Olá,

Experimente isso, se houver algum erro, publique uma captura de tela da mensagem de erro aqui.

IF (@transaction_type='A' OR @transaction_type = 'U') AND (@OBJECT_TYPE = '18')

BEGIN

IF EXISTS (SELECT T0.docentry

FROM OPCH T0

INNER JOIN

PCH1 T1 ON

T0.DocEntry = T1.DocEntry

LEFT OUTER JOIN

[dbo].[@PRICELISTS] 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

Obrigado e cumprimentos,

Nagarajan

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá, Nagarajan,

Tentei a consulta anterior, mas continuo recebendo o mesmo erro.

Saudações,

Hitul

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá,

Experimente isto:

SE (@transaction_type='A' OU @transaction_type = 'U') E (@OBJECT_TYPE = '18')

INÍCIO

SE EXISTE (SELECIONE T0.docentry

DE OPCH T0

INNER JOIN

PCH1 T1 EM

T0.DocEntry = T1.DocEntry

LEFT OUTER JOIN

[dbo].[@PRICELISTS] T2 EM

T1.ItemCode = T2.U_ItemNo

ONDE

T1.DocEntry = @list_of_cols_val_tab_del) E

(T1.Price <> T2.U_ListPrice)

INÍCIO

SET @error = 123

SET @error_message = 'Desvio no preço'

FIM

FIM

Obrigado e Cumprimentos,

Nagarajan

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá,

Se você recebeu uma resposta, por favor, encerre esta discussão marcando a resposta correta.

Obrigado e cumprimentos,

Nagarajan

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?