¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo agregar la tabla de entrega ODLN a un query de Ordenes de Venta y Facturas

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

Saludos a todos.

Tengo el siguiente query

SELECT distinct

T0.[DocNum] 'Orden Ventas',

T0.[DocDate] 'Fecha OV',

T3.[SlpName] 'Vendedor',

T0.[U_FCOrden] 'Fecha Fin',

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

T0.[Project] 'UN',

T0.[U_OrdTecni] 'Instalador',

T0.[DocTotal] 'Total',

T0.[DiscPrcnt] 'Desc OV',

t2.[DocNum] 'Factura',

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] between [%0] and [%1]

La idea es que me de las Ordenes de Venta y las Facturas, pero tengo problemas cuando existe una Entraga de pormedio.

Y no se como agregar las tabla de entrega ODLN y me muestre tanto las que tiene entregas como las que no.

Si alguien me puede ayudar.

Saludos y gracias de antemano.

Que todo sea para bien..

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

2 Respuestas

0
Cargando...

Hola Diego, gracias por la ayuda.

Te comento, con el siguiente query, creo, que logré lo que necesitaba, pero no entiendo la diferencia entre la forma en que lo hice y la que me indicas.

Para aprender y, si es posible, me gustaría que me lo aclares.

SELECT DISTINCT

T0.[DocNum]     'Orden de Venta',

T0.[DocDate]    'Fecha OV',

T7.[SlpName]    'Vendedor',

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

T0.[U_FCOrden]  'Instalador',

T0.[Project]    'UN',

T0.[U_OrdTecni] 'Fecha Fin',

T0.[DocTotal]   'Monto',

T0.[DiscPrcnt]  'Desc OV',

T4.[DocNum]     'Factura',

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] between [%0] and [%1]

Gracias de antemano.

Saludos.

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

Buen día Christian.

Para vincular las tablas de órdenes de ventas y entregas, debes hacerlo de la siguiente manera.

El campo TrgetEntry de la tabla RDR1 indica la existencia de una entrega en una orden de venta, por lo tanto, puedes hacer lo siguiente:

SELECT ...

...

...

...

...

FROM ORDR t0

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

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

...

De esta manera, solo obtendrás las órdenes de venta que tienen entregas, y en la misma consulta agregarías el enlace a la tabla OINV, que ya sabes cómo hacer.

Saludos y mucha suerte.

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?