Consulta sobre Auditoría de Stock en SAP

Estoy trabajando en un informe de Auditoría de Stock, el cual debo llevar a un Query en SAP. Sin embargo, me encuentro con dos problemas:

  1. Cálculo del Valor Acumulado: No tengo claro cómo calcular correctamente el valor acumulado de un artículo en mi consulta. ¿Cuál sería la mejor forma de obtenerlo desde SAP?
  2. Diferencias en la Cantidad Acumulada: Cuando ejecuto el Query, el campo de Cantidad Acumulada me devuelve un valor distinto al que veo directamente en el dato maestro del artículo (stock actual). ¿A qué se podría deber esta diferencia?
    Este informe debe realizarse por cuentas contables, por lo que también me interesa saber si alguien ha tenido un caso similar o qué tablas recomendarían revisar.
    QUERY:
SELECT *
FROM (
    SELECT 
	    T1.ItmsGrpCod AS 'GrupoCod', 
		T0.ItmsGrpNam,
        T1.ItemCode, 
        T1.ItemName, 
        T2.OnHand AS 'Stock', 
		T2.AvgPrice,
        T2.WhsCode, 
        T0.BalInvntAc,
		T3.AcctName
    FROM OITB T0
    LEFT JOIN OITM T1 ON T0.ItmsGrpCod = T1.ItmsGrpCod
    INNER JOIN OITW T2 ON T1.ItemCode = T2.ItemCode
	INNER JOIN OACT T3 ON T0.BalInvntAc = T3.AcctCode
    --WHERE T1.ItemCode = 'ASEO-17039'
	--T2.WhsCode = 'PB-ALM'
    GROUP BY T1.ItemCode,T1.ItemName,T1.ItmsGrpCod,T0.ItmsGrpCod,
	T0.ItmsGrpNam,T2.OnHand,T2.AvgPrice,T2.WhsCode,T0.BalInvntAc,T3.AcctName
) A1
WHERE A1.Stock <> 0

Agradezco cualquier orientación o experiencia que puedan compartir.

Buena tarde,

El valor acumulado sino mal recuerdo lo puedes calcular de la siguiente manera Sum(OnHand) * AvgPrice (costo del articulo actualmente) y el tema de la cantidad acumulada porque solo estas mandando a llamar el campo OnHand, recuerda que hay varias bodegas y esto se tiene que sumar entonces utilizando SUM(OnHand) te tendria que salir la cantidad correcta que hay en el sistema.

A que te refieres que tiene que salir por cuentas contables?

por favor pasa por Presentaciones y dinos en que trabajas, version de sap, tu experiencia etc. para que la comunidad pueda conocerte.

Es necesario pasar por Presentaciones para una respuesta mejor estructurada.

En el caso del valor acumulado ya tienes una respuesta de @jhernandez que puede servir, además en tu Query ya tienes estos campos T2.OnHand y T2.AvgPrice, por lo que podrías agregar una columna calculada para el valor acumulado.

Sobre las diferencia en la cantidad acumulada también te vale revisar que no haya Transacciones pendientes que aún no han sido contabilizadas en el stock (por ejemplo, movimientos de stock que no han sido registrados completamente). Revisa que no haya Filtros incorrectos, asegúrate de que los filtros que estás aplicando en tu consulta (como el almacén WhsCode) sean correctos y estén alineados con lo que estás viendo en el dato maestro.

Para verificar estas diferencias, puedes revisar las siguientes tablas: OITW OINM OITM

Podrías realizar una consulta más detallada para verificar los movimientos de stock

SELECT 
    T1.ItemCode,
    T2.WhsCode,
    T2.OnHand,
    T4.Quantity,
    T4.DocDate,
    T4.DocType
FROM OITM T1
INNER JOIN OITW T2 ON T1.ItemCode = T2.ItemCode
LEFT JOIN OINM T4 ON T1.ItemCode = T4.ItemCode AND T2.WhsCode = T4.WarehouseCode
WHERE T1.ItemCode = 'ASEO-17039' AND T2.WhsCode = 'PB-ALM'
ORDER BY T4.DocDate DESC

Y si necesitas realizar el informe por cuentas contables, une la tabla OACT con OITB. Asegúrate de que la cuenta contable esté correctamente asignada en el grupo de artículos OITB.

Si encuentras discrepancias en las cuentas contables, revisa la configuración en la OITB y asegúrate de que los artículos estén correctamente asignados a los grupos de artículos correspondientes.