Avalados por :

Como adicionar a tabela de entrega ODLN a uma consulta de Ordens de Venda e Faturas

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

Saudações a todos.

Tenho a seguinte consulta

SELECT distinct

T0.[DocNum] 'Ordem de Vendas',

T0.[DocDate] 'Data OV',

T3.[SlpName] 'Vendedor',

T0.[U_FCOrden] 'Data de Conclusão',

t4.[LastName]+' '+t4.[FirstName] 'DP',

T0.[Project] 'UN',

T0.[U_OrdTecni] 'Instalador',

T0.[DocTotal] 'Total',

T0.[DiscPrcnt] 'Desc OV',

t2.[DocNum] 'Fatura',

t2.[DiscPrcnt] 'Desc Fac'

FROM ORDR T0

INNER JOIN INV1 T1 ON T1.[BaseEntry] = T0.[DocEntry] AND T1.BaseType='17'

INNER JOIN OINV T2 ON T2.[DocEntry] = T1.[DocEntry]

left outer join oslp t3 on t3.[slpcode] = t0.[slpcode]

left outer join ohem t4 on t4.[empId] = t0.[OwnerCode]

Where T0.[DocDate] entre [%0] e [%1]

A ideia é me dar as Ordens de Venda e as Faturas, mas tenho problemas quando há uma Entrega no meio.

E não sei como adicionar a tabela de entrega ODLN e me mostrar tanto as que têm entregas como as que não têm.

Se alguém puder me ajudar.

Saudações e obrigado antecipadamente.

Que tudo seja para o bem.

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

2 Respuestas

0
Cargando...

Olá Diego, obrigado pela ajuda.

Queria dizer que, com a seguinte consulta, acho que consegui o que precisava, mas não entendo a diferença entre a forma como fiz e a que você indica.

Para aprender e, se possível, gostaria que você esclarecesse.

SELECT DISTINCT

T0.[DocNum] - 'Ordem de Venda',

T0.[DocDate] - 'Data OV',

T7.[SlpName] - 'Vendedor',

T8.[lastName]+' '+T8.[firstName] - 'DP',

T0.[U_FCOrden] - 'Instalador',

T0.[Project] - 'UN',

T0.[U_OrdTecni] - 'Data de Término',

T0.[DocTotal] - 'Montante',

T0.[DiscPrcnt] - 'Desc OV',

T4.[DocNum] - 'Fatura',

T4.[DiscPrcnt] - 'Desc Fac'

FROM ORDR T0

INNER JOIN DLN1 T1 ON T1.[BaseEntry] = T0.[DocEntry] and t0.[ObjType] = t1.[BaseType]

INNER JOIN ODLN T2 ON T2.[DocEntry] = T1.[DocEntry]

INNER JOIN INV1 T3 ON T3.[BaseEntry] = T2.[DocEntry] and t2.[ObjType] = t3.[BaseType]

INNER JOIN OINV T4 ON T4.[DocEntry] = T3.[DocEntry]

INNER JOIN OSLP T7 ON T0.[SlpCode] = T7.[SlpCode]

INNER JOIN OHEM T8 ON T0.[OwnerCode] = T8.[EmpID]

WHERE T0.[DocDate] entre [%0] e [%1]

Desde já agradeço.

Saudações.

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

Bom dia, Christian.

Para vincular as tabelas de Ordens de Vendas e Entregas, você deve fazer da seguinte maneira.

O campo TrgetEntry da tabela RDR1 indica a existência de uma entrega em uma ordem de venda, portanto, você pode fazer o seguinte:

SELECT ...

...

...

...

...

FROM ORDR t0

LEFT JOIN RDR1 t1 ON t0.docentry = t1.docentry

LEFT JOIN ODLN t2 ON t1.TrgetEntry = t2.docentry e t1.TrgetEntry > 0

...

Desta forma, você obterá apenas as Ordens de Vendas que possuem entregas e na mesma consulta adicionará o link para a tabela OINV, que você já sabe como fazer.

Saudações e boa sorte.

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?