cancel
Showing results for 
Search instead for 
Did you mean: 

ayuda con query ventas reales de un articulo x sucursal

angeles804
Active Contributor
0 Kudos

TEngo un problemita no entiendo bien como funciona esto de los informes de venta

dentro de sap por que tengo 5 sucursales todas ellas venden igua y sacan del almacen,

etc. Pero al tratar de sacar el analisis de ventas la mayoría de los clientes si no estan

casados con una sucursal se van por default al ventas de mostrador y segun yo no tomo

asi las ventas reales, si no de donde los clientes compran, es decir un cliente compra en

la sucursal 1 y en los datos maestros esta dentro de sucursal 2, pero compro en la 1, entonces esa venta quiero que se refleje en venta 1, Para esto no se mucho todavia parametrizar sap pero le he buscado y no se donde moverle.

Ahora tengo la idea de en el query manager poner un query donde ponga todas las facturas

de deudores, reserva por series así me avienta la sucursal, solo que tengo un problema por

que tengo que poner ahi tambien las notas de crédito restarlas las notas de debido sumarlas

y las notas por devoluciones restarlas tambien y sobre todo por que estoy haciendo un reporte

por articulos. Tengo una vaga idea para comenzar algo de esta manera:


//*query para facturas que tienen notas de credito y facturas deudores
sELECT T0.[DocNum],T0.[DocDate], T0.[CardCode], T0.[CardName],
'Estado' = CASE WHEN (t0.InvntSttus = 'C') and (t0.isins'Y') 
              THEN 'Cancelado' 
                 ELSE '' END, 
'Total' = CASE WHEN (t0.InvntSttus = 'C') and (t0.isins'Y') 
THEN 0 
ELSE t0.doctotal END FROM OINV T0 WHERE t0.docnum>=[%0] and t0.docnum<=[%1] and
(t0.docdate>=[%2] and t0.docdate<=[%3]) and t0.doctype='i' and t0.canceled='n' and t0.docstatus<>'o'


soy algo neofica con SQL Y Trato de entenderle un poco mas. Pero tambien la estoy haciendo por lineas con INV1. por esto es ahi donde se me complica que meto tantas tablas. y quiero dejarlo como

No. documento | tipo de documento | fecha | total precio | cantidad |

Accepted Solutions (0)

Answers (5)

Answers (5)

angeles804
Active Contributor
0 Kudos

Gracias oscar me ha ayudado mucho tu respuesta.

Former Member
0 Kudos

Mary lo siento, no se nada bien el query en la página. Escríbeme, para enviarte el query.

Atte.

Former Member
0 Kudos

Buenas tardes Mary:

Yo resolvi ya ese problema, sólo que cada compañia tiene sus particularidades, lo qué hice fué una vista uniendo tablas. El objetivo es crear un log, tipo un kardex de transacciones, al final he podido sacar la venta neta y me pega contra contabilidad.

Espero te sirva de módelo, al considerar el detalle, ya qué dices que quieres sacar ventas por artículos, hay qué analizar bien los cálculos para qué te pege con el encabezado.

SELECT YEAR(T1.DocDate) AS Anio, MONTH(T1.DocDate) AS Mes, T1.U_Division AS CodDivi, T3.U_Nombre_div AS NomDivi, T1.SlpCode AS CodVend,

T5.SlpName AS NomVend, T1.CardCode AS CodClte, T4.CardName AS NomClte, T1.DocNum, T1.DocDate AS Fecha, T0.ItemCode AS CodArti,

T2.ItemName AS NomArti, T0.Quantity AS Cantidad, T2.InvntryUom AS Unidad, T0.StockPrice, CONVERT(decimal(16, 4),

ROUND(T0.LineTotal / T0.Quantity, 4)) AS SalesPrice,

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal WHEN T1.DiscPrcnt > 0 THEN T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100))

WHEN T1.DiscPrcnt < 0 THEN T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)) ELSE T0.LineTotal END AS LineNeto, T0.VatSum AS Impuesto,

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal + T0.VatSum WHEN T1.DiscPrcnt > 0 THEN (T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum WHEN T1.DiscPrcnt < 0 THEN (T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum ELSE T0.LineTotal + T0.VatSum END AS LineTotal,

CASE WHEN T1.DocSubType = 'DN' THEN 'NDE' WHEN T1.DocSubType = '--' THEN T4.U_Tipo_doc ELSE 'N/A' END AS TipoDoc,

T1.Project AS Proyecto, '00' AS U_Motivos

FROM dbo.INV1 AS T0 LEFT OUTER JOIN

dbo.OINV AS T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN

dbo.OITM AS T2 ON T2.ItemCode = T0.ItemCode LEFT OUTER JOIN

dbo.[@DIVI] AS T3 ON T3.Code = T1.U_Division LEFT OUTER JOIN

dbo.OCRD AS T4 ON T4.CardCode = T1.CardCode LEFT OUTER JOIN

dbo.OSLP AS T5 ON T5.SlpCode = T0.SlpCode

WHERE (T0.Quantity <> 0) AND (T1.DocType = 'I') AND (T0.ItemCode <> 'M2520') AND (T0.ItemCode <> 'ANULA') AND (T0.ItemCode <> 'FL0001') AND

(T0.ItemCode <> 'SE0001')

UNION ALL

SELECT YEAR(T1.DocDate) AS Anio, MONTH(T1.DocDate) AS Mes, T1.U_Division AS CodDivi, T3.U_Nombre_div AS NomDivi, T1.SlpCode AS CodVend,

T5.SlpName AS NomVend, T1.CardCode AS CodClte, T4.CardName AS NomClte, T1.DocNum, T1.DocDate AS Fecha, T0.ItemCode AS CodArti,

T2.ItemName AS NomArti, T0.Quantity AS Cantidad, T2.InvntryUom AS Unidad, T0.StockPrice, CONVERT(decimal(16, 4),

ROUND(T0.LineTotal / T0.Quantity, 4)) AS SalesPrice,

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal WHEN T1.DiscPrcnt > 0 THEN T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100))

WHEN T1.DiscPrcnt < 0 THEN T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)) ELSE T0.LineTotal END AS LineNeto, T0.VatSum AS Impuesto,

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal + T0.VatSum WHEN T1.DiscPrcnt > 0 THEN (T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum WHEN T1.DiscPrcnt < 0 THEN (T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum ELSE T0.LineTotal + T0.VatSum END AS LineTotal, CASE WHEN T1.DocSubType = '--' THEN T4.U_Tipo_doc ELSE 'N/A' END AS TipoDoc,

T1.Project AS Proyecto, '00' AS U_Motivos

FROM dbo.DPI1 AS T0 LEFT OUTER JOIN

dbo.ODPI AS T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN

dbo.OITM AS T2 ON T2.ItemCode = T0.ItemCode LEFT OUTER JOIN

dbo.[@DIVI] AS T3 ON T3.Code = T1.U_Division LEFT OUTER JOIN

dbo.OCRD AS T4 ON T4.CardCode = T1.CardCode LEFT OUTER JOIN

dbo.OSLP AS T5 ON T5.SlpCode = T0.SlpCode

WHERE (T0.Quantity <> 0) AND (T1.DocType = 'I') AND (T0.ItemCode <> 'M2520') AND (T0.ItemCode <> 'ANULA') AND (T0.ItemCode <> 'FL0001') AND

(T0.ItemCode <> 'SE0001')

UNION ALL

SELECT YEAR(T1.DocDate) AS Anio, MONTH(T1.DocDate) AS Mes, T1.U_Division AS CodDivi, T3.U_Nombre_div AS NomDivi, T1.SlpCode AS CodVend,

T5.SlpName AS NomVend, T1.CardCode AS CodClte, T4.CardName AS NomClte, T1.DocNum, T1.DocDate AS Fecha,

CASE WHEN T1.DocSubType = '--' THEN 'SERV001' WHEN T1.DocSubType = 'DN' THEN 'NDEB001' ELSE 'N0DE001' END AS CodArti,

CASE WHEN T0.Dscription IS NULL THEN 'NOTA DE DEBITO' WHEN T0.Dscription IS NOT NULL

THEN T0.Dscription ELSE 'N0 DEFINIDO' END AS NomArti, T0.Quantity AS Cantidad, T0.unitMsr AS Unidad, T0.StockPrice, T0.Price AS SalesPrice,

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal WHEN T1.DiscPrcnt > 0 THEN T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100))

WHEN T1.DiscPrcnt < 0 THEN T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)) ELSE T0.LineTotal END AS LineNeto, T0.VatSum AS Impuesto,

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal + T0.VatSum WHEN T1.DiscPrcnt > 0 THEN (T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum WHEN T1.DiscPrcnt < 0 THEN (T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum ELSE T0.LineTotal + T0.VatSum END AS LineTotal,

CASE WHEN T1.DocSubType = 'DN' THEN 'NDE' WHEN T1.DocSubType = '--' THEN T4.U_Tipo_doc ELSE 'N/A' END AS TipoDoc,

T1.Project AS Proyecto, '00' AS U_Motivos

FROM dbo.INV1 AS T0 LEFT OUTER JOIN

dbo.OINV AS T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN

dbo.[@DIVI] AS T3 ON T3.Code = T1.U_Division LEFT OUTER JOIN

dbo.OCRD AS T4 ON T4.CardCode = T1.CardCode LEFT OUTER JOIN

dbo.OSLP AS T5 ON T5.SlpCode = T0.SlpCode

WHERE (T1.DocType = 'S')

UNION ALL

SELECT YEAR(T1.DocDate) AS 'Anio', MONTH(T1.DocDate) AS 'Mes', T1.U_Division AS 'CodDivi', T3.U_Nombre_div AS 'NomDivi', T1.SlpCode AS CodVend,

T5.SlpName AS 'NomVend', T1.CardCode AS 'CodClte', T4.CardName AS 'NomClte', T1.DocNum, T1.DocDate AS 'Fecha',

CASE WHEN T1.DocSubType = '--' THEN 'SERV001' WHEN T1.DocSubType = 'DN' THEN 'NDEB001' ELSE 'N0DE001' END AS 'CodArti',

CASE WHEN T0.Dscription IS NULL THEN 'NOTA DE DEBITO' WHEN T0.Dscription IS NOT NULL

THEN T0.Dscription ELSE 'N0 DEFINIDO' END AS 'NomArti', T0.Quantity AS 'Cantidad', T0.unitMsr AS 'Unidad', T0.StockPrice, T0.Price AS 'SalesPrice',

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal WHEN T1.DiscPrcnt > 0 THEN T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100))

WHEN T1.DiscPrcnt < 0 THEN T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)) ELSE T0.LineTotal END AS 'LineNeto', T0.VatSum AS 'Impuesto',

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal + T0.VatSum WHEN T1.DiscPrcnt > 0 THEN (T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum WHEN T1.DiscPrcnt < 0 THEN (T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100)))

+ T0.VatSum ELSE T0.LineTotal + T0.VatSum END AS 'LineTotal', CASE WHEN T1.DocSubType = '--' THEN T4.U_Tipo_doc ELSE 'N/A' END AS TipoDoc,

T1.Project AS Proyecto, '00' AS U_Motivos

FROM dbo.DPI1 AS T0 LEFT OUTER JOIN

dbo.ODPI AS T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN

dbo.[@DIVI] AS T3 ON T3.Code = T1.U_Division LEFT OUTER JOIN

dbo.OCRD AS T4 ON T4.CardCode = T1.CardCode LEFT OUTER JOIN

dbo.OSLP AS T5 ON T5.SlpCode = T0.SlpCode

WHERE (T1.DocType = 'S')

UNION ALL

SELECT YEAR(T1.DocDate) AS Anio, MONTH(T1.DocDate) AS Mes, T1.U_Division AS CodDivi, T3.U_Nombre_div AS NomDivi, T1.SlpCode AS CodVend,

T5.SlpName AS NomVend, T1.CardCode AS CodClte, T4.CardName AS NomClte, T1.DocNum, T1.DocDate AS Fecha, T0.ItemCode AS CodArti,

T2.ItemName AS NomArti, T0.Quantity * - 1 AS Cantidad, T2.InvntryUom AS Unidad, T0.StockPrice, CONVERT(decimal(16, 4),

ROUND(T0.LineTotal / T0.Quantity, 4)) AS SalesPrice,

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal * - 1 WHEN T1.DiscPrcnt > 0 THEN (T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100)))

  • - 1 WHEN T1.DiscPrcnt < 0 THEN (T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100))) * - 1 ELSE T0.LineTotal * - 1 END AS LineNeto,

T0.VatSum * - 1 AS Impuesto, CASE WHEN T1.DiscPrcnt = 0 THEN (T0.LineTotal + T0.VatSum)

  • - 1 WHEN T1.DiscPrcnt > 0 THEN ((T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100))) + T0.VatSum)

  • - 1 WHEN T1.DiscPrcnt < 0 THEN ((T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100))) + T0.VatSum) * - 1 ELSE (T0.LineTotal + T0.VatSum)

  • - 1 END AS LineTotal, 'NCR' AS TipoDoc, T1.Project AS Proyecto, T0.U_Motivos

FROM dbo.RIN1 AS T0 LEFT OUTER JOIN

dbo.ORIN AS T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN

dbo.OITM AS T2 ON T2.ItemCode = T0.ItemCode LEFT OUTER JOIN

dbo.[@DIVI] AS T3 ON T3.Code = T1.U_Division LEFT OUTER JOIN

dbo.OCRD AS T4 ON T4.CardCode = T1.CardCode LEFT OUTER JOIN

dbo.OSLP AS T5 ON T5.SlpCode = T0.SlpCode

WHERE (T0.Quantity <> 0) AND (T1.DocType = 'I') AND (T0.ItemCode <> 'M2520') AND (T0.ItemCode <> 'ANULA') AND (T0.ItemCode <> 'FL0001') AND

(T0.ItemCode <> 'SE0001') AND (T0.U_Motivos <> '05' OR

T0.U_Motivos IS NULL)

UNION ALL

SELECT YEAR(T1.DocDate) AS 'Anio', MONTH(T1.DocDate) AS 'Mes', T1.U_Division AS 'CodDivi', T3.U_Nombre_div AS 'NomDivi', T1.SlpCode AS 'CodVend',

T5.SlpName AS 'NomVend', T1.CardCode AS 'CodClte', T4.CardName AS 'NomClte', T1.DocNum, T1.DocDate AS 'Fecha',

CASE WHEN T1.DocSubType = '--' THEN 'NCSE001' ELSE 'NCND001' END AS 'CodArti', CASE WHEN T0.Dscription IS NULL

THEN 'NOTA DE CREDITO' WHEN T0.Dscription IS NOT NULL THEN T0.Dscription ELSE 'NC N0 DEFINIDO' END AS 'NomArti',

T0.Quantity * - 1 AS 'Cantidad', T0.unitMsr AS 'Unidad', T0.StockPrice, T0.Price AS 'SalesPrice',

CASE WHEN T1.DiscPrcnt = 0 THEN T0.LineTotal * - 1 WHEN T1.DiscPrcnt > 0 THEN (T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100)))

  • - 1 WHEN T1.DiscPrcnt < 0 THEN (T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100))) * - 1 ELSE T0.LineTotal * - 1 END AS 'LineNeto',

T0.VatSum * - 1 AS 'Impuesto', CASE WHEN T1.DiscPrcnt = 0 THEN (T0.LineTotal + T0.VatSum)

  • - 1 WHEN T1.DiscPrcnt > 0 THEN ((T0.LineTotal - (T0.LineTotal * (T1.DiscPrcnt / 100))) + T0.VatSum)

  • - 1 WHEN T1.DiscPrcnt < 0 THEN ((T0.LineTotal + (T0.LineTotal * (T1.DiscPrcnt / 100))) + T0.VatSum) * - 1 ELSE (T0.LineTotal + T0.VatSum)

  • - 1 END AS 'LineTotal', 'NCR' AS TipoDoc, T1.Project AS Proyecto, T0.U_Motivos

FROM dbo.RIN1 AS T0 LEFT OUTER JOIN

dbo.ORIN AS T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN

dbo.[@DIVI] AS T3 ON T3.Code = T1.U_Division LEFT OUTER JOIN

dbo.OCRD AS T4 ON T4.CardCode = T1.CardCode LEFT OUTER JOIN

dbo.OSLP AS T5 ON T5.SlpCode = T0.SlpCode

WHERE (T1.DocType = 'S') AND (T0.U_Motivos <> '05' OR

T0.U_Motivos IS NULL)

Saludos.

angeles804
Active Contributor
0 Kudos

Este es el query de los reportes que yo quiero... solo que en este caso

no me envia las facturas de reserva con nota de credito y aparte de esto

las notas de credito que cancelan facturas anteriores no se visualizan en

el reporte de ventas. a ver si alguien puede ayudarme sobre todo con

la parte de las facturas de reserva que busco como puedo moverle o que

condiciones ponerle pero no tengo idea, no encuentro las diferencias.


SELECT t0.docnum,'factura' as 'tipo documento',t0.docdate, 
'estado'= CASE WHEN (t0.InvntSttus = 'C') and (t0.isins<>'Y') THEN 'Cancelado' END, 
t1.quantity as 'cantidad', T1.[PriceBefDi] as 'Precio', T1.[GTotal] as 'TOTAL BRUTO'
FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry 
WHERE t1.itemcode=[%0] and t0.doctype='i' and t0.docstatus='c' and (t0.docdate>=[%1] and t0.docdate<=[%2]) 
UNION ALL SELECT t0.docnum,'Nota de crédito' as 'tipo documento',t0.docdate, 
'estado'= CASE WHEN (t0.InvntSttus = 'C') and (t0.isins<>'Y') THEN 'Nota Crédito' END,
-(t1.quantity) as 'cantidad', T1.[PriceBefDi] as 'Precio', -(T1.[GTotal]) as 'TOTAL BRUTO'
FROM OINV T0 INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry 
WHERE t1.itemcode=[%0] and doctype='i' and t0.docstatus='c' and (t0.docdate>=[%1] 
and t0.docdate<=[%2] )and (t0.isins<>'y' and t0.invntsttus='c') 
UNION ALL SELECT t0.docnum,'nota de debito' as 'tipo documento', t0.docdate,
'estado'= case when (t0.docsubtype='DN') then 'NOTA DE DEBITO' else '' end,t1.quantity as 'cantidad', t1.[pricebefdi] as 'precio', t1.gtotal as 'TOTAL BRUTO'
FROM OINV t0 INNER JOIN INV1 t1 ON T0.docentry=t1.docentry
WHERE T1.itemcode=[%0] and t0.docstatus='c' and (t0.docdate>=[%1] and t0.docdate<=[%2]) and (t0.docsubtype='DN') 
UNION ALL SELECT T0.docnum, 'nota de credito' as 'tipo documento', t0.docdate,
'nota de credito' as 'estado', -t1.quantity as 'cantidad', T1.pricebefdi as 'Precio', -t1.gtotal as 'Total Bruto' 
FROM ORIN T0 INNER JOIN RIN1 T1 ON T0.docentry=t1.docentry 
where t1.itemcode=[%0] and doctype='i' and t0.docstatus='c' and (t0.docdate>=[%1] and t0.docdate<=[%2]) and (t0.docnum>=1 and t0.docnum<=5500000)

former_member210784
Active Contributor
0 Kudos

Hola.

He ejecutado tu consulta en mi BD de pruebas y si trae las facturas de reserva y las notas de crédito.

Observaciones:

1. Tal vez se dificulta la identificación de las facturas canceladas si no aparece el estado.

Si no aparece el estado Cancelado para la factura, intenta cambiar la comparación del campo t0.isins en la primera parte de la consulta (antes de la primera UNION).


'estado'= CASE WHEN (t0.InvntSttus = 'C') and (t0.isins = 'Y') THEN 'Cancelado' END

De esta manera si apareció el estado para las facturas canceladas.

2. No me queda claro para qué es la sentencia que va con la primera UNION, donde etiquetas nota crédito, pero haces referencia a la tabla OINV de facturas

Quedo en espera de tus comentarios.

angeles804
Active Contributor
0 Kudos

SAbes, ese no es el problema, el problema aqui es que tengo cancelados anteriores a un periodo, ejemplo mensual y esos no me salen por ende, mis reportes no son otalmente reales... ese es el unico problema... o posteriores de esa factura, por que me baso en las facturas y de ahi a los documentos destinos. si me comprendes?

Former Member
0 Kudos

Pruebe esta una:


SELECT T0.[DocNum],T0.[DocDate], T0.[CardCode], T0.[CardName],
'Estado' = CASE WHEN (t0.InvntSttus = 'C') and (t0.isins !='Y') 
              THEN 'Cancelado' 
                 ELSE '' END, 
'Total' = CASE WHEN (t0.InvntSttus = 'C') and (t0.isins != 'Y') 
THEN 0 
ELSE t0.doctotal END
 FROM OINV T0 WHERE t0.docnum>=[%0] and t0.docnum<=[%1] and
(t0.docdate>=[%2] and t0.docdate<=[%3]) and t0.doctype='i' and t0.canceled='n' and t0.docstatus<>'o'
UNION ALL
SELECT T0.[DocNum],T0.[DocDate], T0.[CardCode], T0.[CardName],
'Estado' = CASE WHEN (t0.InvntSttus = 'C') and (t0.isins !='Y') 
              THEN 'Cancelado' 
                 ELSE '' END, 
'Total' = CASE WHEN (t0.InvntSttus = 'C') and (t0.isins != 'Y') 
THEN 0 
ELSE -t0.doctotal END
 FROM ORIN T0 WHERE t0.docnum>=[%0] and t0.docnum<=[%1] and
(t0.docdate>=[%2] and t0.docdate<=[%3]) and t0.doctype='i' and t0.canceled='n' and t0.docstatus<>'o'

Gracias,

Gordon

Former Member
0 Kudos

REPORTE DE RANGOS


Ayuda

Hola por favor tu ayuda

necesito relacionar las tablas SPP2 , OITM, INV1

para generar un reporte de rangos basado en la columna

SPP2LNum de la tabla SPP2

generando como resultado que cantidad de productos/articulos vendo por rangos relacionado las tablas que te indico.

ayudame por favor