on 06-13-2015 9:50 PM
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..
Buen día Christian.
Para ligar las tablas de ordenes de ventas y entregas debes vincular de la siguiente manera.
El campo TrgetEntry de la tabla RDR1 es el que indica la existencia de una entrega en una orden de venta por lo tanto puedes hacer algo así:
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 traerías las Ordenes de Venta que tienen Entregas y en el mismo query agregarías el vínculo a la tabla OINV que ya sabes como hacer.
Saludos y mucha suerte.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hola Diego, gracias por la ayuda.
Te comento, con el siguiente query, creo, que logre lo que ocupaba, pero no se la diferencia entre la forma como lo hice y la que me indicas.
Para aprender y si es posible me gustaria 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.
User | Count |
---|---|
99 | |
12 | |
11 | |
6 | |
6 | |
4 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.