cancel
Showing results for 
Search instead for 
Did you mean: 

Actualizar query

Former Member
0 Kudos

Hola a todos, tengo que actualizar una query que fué creada por un compañero de trabajo, y me complica porque estoy recién entrando al mundo de las Query en SAP. Espero puedan ayudarme.

Esta es la query:

SELECT 
T3.Slpname AS 'Vendedor',
T1.DocNum AS 'Número Pago',
T0.DocNum AS 'Número de Factura', 
T0.CardName AS 'Nombre de deudor/acreedor', 
T1.DocDate AS 'Fecha Pago',
T0.TaxDate AS 'F.Emision Factura', 
T0.DocDueDate AS 'F.Vcto Factura.', 
DATEADD(day, 60,T0.TaxDate) AS 'Fecha Vence Pago', 
DATEDIFF(day, DATEADD(day, 60,T0.TaxDate), T1.DocDate) AS Numdias,
T4.SumApplied AS 'Monto Pagado',
T0.DocTotal AS 'Total factura', 
(T0.DocTotal-T0.VatSum) AS 'Neto Factura',
T7.ItemCode AS 'Nuevo campo'



FROM  
[dbo].[OINV] T0 
INNER JOIN [dbo].[RCT2] T4 ON T4.DocEntry = T0.DocEntry
INNER JOIN [dbo].[ORCT] T1 ON T4.DocNum = T1.DocNum 
INNER JOIN [dbo].[OSLP] T3 ON T0.SlpCode = T3.SlpCode

WHERE ( T1.DocDate >='[%0]' and T1.DocDate <='[%1]' ) and T1.CheckSum = 0


UNION ALL


SELECT 
T3.Slpname as 'Vendedor',
T1.DocNum AS 'Número Pago',
T0.DocNum AS 'Número de Factura', 
T0.CardName AS 'Nombre de deudor/acreedor', 
T5.DueDate AS 'Fecha Pago',
T0.TaxDate AS 'F.Emision Factura', 
T0.DocDueDate AS 'F.Vcto Factura.', 
DATEADD(day, 60,T0.TaxDate) AS 'Fecha Vence Pago', 
DATEDIFF(day, DATEADD(day, 60,T0.TaxDate), 
T5.DueDate) AS Numdias,
T5.CheckSum AS 'Abonado a la fecha',
T0.DocTotal AS 'Total factura', 
(T0.DocTotal-T0.VatSum) AS 'Neto Factura',


FROM  [dbo].[OINV] T0 INNER JOIN [dbo].[RCT2] T4 ON T0.DocEntry = T4.DocEntry 
INNER JOIN [dbo].[ORCT] ON T4.DocNum = T1.DocNum 
INNER JOIN [dbo].[RCT1] T5 ON T1.DocNum = T5.DocNum 
INNER JOIN [dbo].[OSLP] T3 ON T0.SlpCode = T3.SlpCode

WHERE ( T5.DueDate >='[%0]' and T5.DueDate <='[%1]' )

Ahora, a esa query debo agregarle los campos ItemCode y Dscription, pero no se de cual tabla y como enlazarla a las otras tablas.

Saludos, espero sus comentarios.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Por favor, inténtelo de este:


SELECT 
T3.Slpname AS 'Vendedor',
T1.DocNum AS 'Número Pago',
T0.DocNum AS 'Número de Factura', 
T0.CardName AS 'Nombre de deudor/acreedor', 
T1.DocDate AS 'Fecha Pago',
T0.TaxDate AS 'F.Emision Factura', 
T0.DocDueDate AS 'F.Vcto Factura.', 
DATEADD(day, 60,T0.TaxDate) AS 'Fecha Vence Pago', 
DATEDIFF(day, DATEADD(day, 60,T0.TaxDate), T1.DocDate) AS Numdias,
T4.SumApplied AS 'Monto Pagado',
T0.DocTotal AS 'Total factura', 
(T0.DocTotal-T0.VatSum) AS 'Neto Factura'
  
FROM  
[dbo].[OINV] T0 
INNER JOIN [dbo].[RCT2] T4 ON T4.DocEntry = T0.DocEntry
INNER JOIN [dbo].[ORCT] T1 ON T4.DocNum = T1.DocNum 
INNER JOIN [dbo].[OSLP] T3 ON T0.SlpCode = T3.SlpCode
INNER JOIN [dbo].[INV1] T7 ON T0.DocEntry = T7.DocENtry
 
WHERE ( T1.DocDate >='[%0]' and T1.DocDate <='[%1]' ) and T1.CheckSum = 0

UNION ALL
 
SELECT 
T3.Slpname as 'Vendedor',
T1.DocNum AS 'Número Pago',
T0.DocNum AS 'Número de Factura', 
T0.CardName AS 'Nombre de deudor/acreedor', 
T5.DueDate AS 'Fecha Pago',
T0.TaxDate AS 'F.Emision Factura', 
T0.DocDueDate AS 'F.Vcto Factura.', 
DATEADD(day, 60,T0.TaxDate) AS 'Fecha Vence Pago', 
DATEDIFF(day, DATEADD(day, 60,T0.TaxDate), 
T5.DueDate) AS Numdias,
T5.CheckSum AS 'Abonado a la fecha',
T0.DocTotal AS 'Total factura', 
(T0.DocTotal-T0.VatSum) AS 'Neto Factura'
 
FROM  [dbo].[OINV] T0 INNER JOIN [dbo].[RCT2] T4 ON T0.DocEntry = T4.DocEntry 
INNER JOIN [dbo].[ORCT] T1 ON T4.DocNum = T1.DocNum 
INNER JOIN [dbo].[RCT1] T5 ON T1.DocNum = T5.DocNum 
INNER JOIN [dbo].[OSLP] T3 ON T0.SlpCode = T3.SlpCode
 
WHERE ( T5.DueDate >='[%0]' and T5.DueDate <='[%1]' )

Gracias,

Gordon

Answers (1)

Answers (1)

Former Member
0 Kudos

Muchas gracias Gordon, la Query quedó OK.