Enlasar producto con numero de Serie de equipos

@Willy_Caldero
sean mis primeras líneas para saludarlo y a vez desearle éxitos y que usted y su familia se encuentren muy bien.

deseo consultarle ya que no se si el SAP puede hacerlo. paso explicar la situación .

La empresa para la que laboro . coloca a sus clientes equipos y estos cliente debe comprar mensualmente cierta cantidad de producto para este equipo.

  1. En algún módulo de Sap se podrá amarrar con el número de serie del equipo con los productos que se le facture a Dicho equipo

  2. Ya que en cierto cliente hay incluso hasta 2 , 3 equipos y lo que se quiere es saber cual es el consumo de cada equipo.

  3. Tenemos clientes que tienen equipos puestos por la empresa y además equipos que nos han comprado que pertenecen a los clientes.

  4. Lo que desea saber que es lo que se le a factura al equipo .

Le agradecería si hay alguna manera de me puedan orientar.

Sin más por el momento y en espera de su respuesta.

inicialmente me parece que podrías usar el modulo de servicio, ahi puedes registrar “tarjeta de equipo”, que puede estar atada a un item vendido o a un item que no hubiera pasado por stock.
En cuanto a la facturación, podrias generar llamadas de servicio mensuales, donde conectarías las facturas para ese equipo específicamente.

@Willy_Caldero
Buenos días
Ing. Willy Caldero

De esta forma podría generar una consulta con el cantidad total por items facturado con su respectivo total en dolares a un equipo

es correcto, la relación ya la tendrías.
La otra opcion es que crees directamente UDO’s para registrar los equipos, y en las facturas coloque un UDF para identificar el equipo, y con eso tendrías también la relación para sacar informes por equipo.

@Willy_Caldero
Buenas Tades
Ing. Willy
Realice esta consulta pero cuando trato de amarar o unir las tablas Oinv y inv1 con las tablas OSCL,SCL2, SLC4., me envía error o si no me duplica los items. Le muestro la consulta realizada a ver si usted me puede dar alguna tipo de ayuda en la misma

SELECT T0.[customer], T0.[custmrName], T0.[itemCode], T0.[itemName], T1.[ItemCode], T1.[ItemName],  SUM(T1.[Delivered]- T1.[Returned]) FROM [dbo].[OSCL]  T0 INNER JOIN SCL2 T1 ON T0.[callID] = T1.[SrcvCallID] INNER JOIN SCL4 T2 ON T0.[callID] = T2.[SrcvCallID] WHERE T0.[createDate] >=[%3] AND  T0.[createDate] <=[%4] AND  T2.[Object] ='17' GROUP BY T0.[customer], T0.[custmrName], T0.[itemCode], T0.[itemName], T1.[ItemCode], T1.[ItemName] /*T2.[DocAbs]*/

Esta es la consulta que he realizado pero como le comente me hace falta unir las tablas OINV y INV1 para traer los totales por ITEM.

primero debes relacionar la OSCL con la SCL4:
OSCL.Callid = SCL4.SrcvCallid
Luego relacionas las SCL4 con la OINV:
OINV.docentry = SCL4.docabs and SCL4.ObjectType = ‘13’

Y con eso ya puedes relacionar con la INV1.

@Willy_Caldero
Buenas noches
Ing Willly

Le pidio el favor me revise esta consulta ya realice los pasos que me idijo pero me si duplicnado los datos no se los que estoy realizando mal. lo que deseo hacer es esta consulta es extraer los producto que se le han entregado a un cierto equipo y el mismo debe obtener las cantidades entregas y los el costo de cada items ya que estos productos no se facturan se ya que son equipos que nuestra empresa se los coloca a los clientes y cuando sufrende un daño debemos repararlos y solo deseamos saber el costos de una reparación. para hacer esra consulta utilice las tablas [OSCL] SCL2, SCL4, ODLN ,DLN1, LE MUESTRO LA CONSULTA A CONTINUACIÓN

@Willy_Caldero

SELECT T0.[customer], T0.[custmrName], T0.[itemCode], 
T0.[itemName], T0.[manufSN], T2.[ItemCode], T2.[ItemName],
 T2.[Delivered],  T4.[GrossBuyPr]
 FROM OSCL T0  
INNER JOIN SCL4 T1 ON T0.[callID] = T1.[SrcvCallID] 
INNER JOIN SCL2 T2 ON T0.[callID] = T2.[SrcvCallID] 
INNER JOIN ODLN T3 on T1.DocAbs = T3.DocNum and Object='17'
 INNER JOIN DLN1 T4 ON T3.[DocEntry] = T4.[DocEntry]
WHERE T0.[createDate] >=[%3] AND  T0.[createDate] <=[%5] 
GROUP BY T0.[customer],T0.[custmrName],
 T0.[itemCode], T0.[itemName], T0.[manufSN],
 T2.[Delivered], T4.[GrossBuyPr], T2.[ItemCode], T2.[ItemName

le agradeceria me pueda orientar en el mismo

1 me gusta

Cuando usas un group by, necesitas tener columnas con agrupadores como Count o SUM, o AVG,
Intenta primero ejecutar sin el group by para ver con que datos quieres agrupar.
Y de lo que requieres toma en cuenta que la cantidad entregada, esta en el campo “Quantity” de la DLN1, y el campo “StockPrice” de la misma tabla devuelve el costo del producto para esa transaccion.
No veo ninguno de estos campos en tu consulta.

1 me gusta

@Willy_Caldero
Buenos Tardes
Ing Willy le doy la gracias por las sugerencias dadas realice la consultas como me lo explico y y la misa dio resultado exitosos. a continuación le muestro como realice la consulta.

SELECT DISTINCT T0.[customer], T0.[custmrName],
 T0.[itemCode], T0.[itemName],T0.[internalSN],
 T1.[ItemCode], T1.[ItemName], /*T2.DocAbs,*/ 
/*SUM(T1.[Delivered]-T1.[Returned])*/  
SUM(T4.[Quantity]) AS CANTIDAD,/*T4.[GrossBuyPr]*/ 
T4.[StockPrice] AS COSTO, /*SUM(T4.[GPTtlBasPr])*/
SUM(T4.[Quantity])*(T4.[StockPrice]) AS 'COSTO TOTAL'
FROM [dbo].[OSCL]  T0 
INNER JOIN SCL2 T1 ON T0.[callID] = T1.[SrcvCallID]
INNER JOIN SCL4 T2 ON T0.[callID] = T2.[SrcvCallID] 
INNER JOIN ODLN T3 ON T2.[DocAbs]=T3.[DocNum]  AND  T2.[Object] ='15' 
INNER JOIN DLN1 T4 ON T3.[DocEntry] = T4.[DocEntry]
and T1.[ItemCode]=T4.[ItemCode]
WHERE T0.[createDate] >=[%3] AND  T0.[createDate] <=[%4] 
GROUP BY T0.[customer], T0.[custmrName], 
T0.[itemCode], T0.[itemName], T0.[internalSN],
T1.[ItemCode], T1.[ItemName], /*T2.[DocAbs],*/
 /*T4.[GrossBuyPr]*/ T4.[StockPrice] 

UNION ALL 

SELECT DISTINCT T0.[customer], T0.[custmrName], 
T0.[itemCode], T0.[itemName],T0.[internalSN],
 T1.[ItemCode], T1.[ItemName], /*T2.DocAbs,*/ 
/*-SUM(T1.[Delivered]-T1.[Returned])*/ 
-SUM(T4.[Quantity]) AS CANTIDAD,
 /*-T4.[GrossBuyPr]*/
 -T4.[StockPrice] AS COSTO, 
 /*-SUM(T4.[GPTtlBasPr])*/ -
-SUM(T4.[Quantity])*(T4.[StockPrice]) AS 'COSTO TOTAL'
 FROM [dbo].[OSCL]  T0 
INNER JOIN SCL2 T1 ON T0.[callID] = T1.[SrcvCallID] 
INNER JOIN SCL4 T2 ON T0.[callID] = T2.[SrcvCallID] 
INNER JOIN ORDN T3 ON T2.[DocAbs]=T3.[DocNum]  AND  T2.[Object] ='16' 
INNER JOIN RDN1 T4 ON T3.[DocEntry] = T4.[DocEntry]
and T1.[ItemCode]=T4.[ItemCode]
WHERE T0.[createDate] >=[%3] AND  T0.[createDate] <=[%4]
GROUP BY T0.[customer], T0.[custmrName], T0.[itemCode], T0.[itemName], 
T0.[internalSN],T1.[ItemCode], T1.[ItemName], /*T2.[DocAbs],*/ /*T4.[GrossBuyPr]*/ /*T4.[GPTtlBasPr]*/
 T4.[StockPrice] ORDER BY 1

Para lo de la factura por medio de las llamadas de servicio haría la misma consulta solo cambiando las Tablas y campo.
Los campos que están comentados dentro de la consulta fueron los campos que cambio como me lo sugerido
Sin mas por el momento y esperada de sus comentario

1 me gusta

es correcto, para las facturas, prácticamente solo es cambiar las tablas y el T2.[Object] =‘13’

@Willy_Caldero

Gracias Ing Willi por el asesoramiento brindado que Dios lo bendiga
saludo