BUEN DIA estimado agradzeco si me peudena yudar. qussiera una consulta para tener el datoo de cantidad y valor de invenatrio en el tiempo osea ver evolucion mes a mes del invenatyrio y tengo esta consultta pero la cantidad si me coincide pero en plata local si em coincide pero en usd no em coincide con respecto al reporte de balance de SAP B1 HANNA
WITH
TRM_ENE AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-01-31' ORDER BY "RateDate" DESC),
TRM_FEB AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-02-28' ORDER BY "RateDate" DESC),
TRM_MAR AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-03-31' ORDER BY "RateDate" DESC),
TRM_ABR AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-04-30' ORDER BY "RateDate" DESC),
TRM_MAY AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-05-31' ORDER BY "RateDate" DESC),
TRM_JUN AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-06-30' ORDER BY "RateDate" DESC),
TRM_JUL AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-07-31' ORDER BY "RateDate" DESC),
TRM_AGO AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-08-31' ORDER BY "RateDate" DESC),
TRM_SEP AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-09-30' ORDER BY "RateDate" DESC),
TRM_OCT AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-10-31' ORDER BY "RateDate" DESC),
TRM_NOV AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-11-30' ORDER BY "RateDate" DESC),
TRM_DIC AS (SELECT TOP 1 "Rate" FROM SBO_COSALCO_COLOMBIA."ORTT" WHERE "Currency" = 'USD' AND "RateDate" <= '2025-12-31' ORDER BY "RateDate" DESC)
SELECT
M."ItemCode",
I."ItemName",
I."U_Tipo_Product" AS "ClasificacionInventario",
B."ItmsGrpNam" AS "GrupoArticulo",
M."Warehouse" AS "Almacen",
M."DocDate",
M."TransType",
M."CreatedBy",
M."InQty",
M."OutQty",
CASE WHEN M."InQty" > 0 THEN M."Price" ELSE NULL END AS "Precio Ingreso",
CASE WHEN M."OutQty" > 0 THEN M."Price" ELSE NULL END AS "Precio Salida",
M."TransValue" AS "Valor Movimiento",
M."Price" AS "Precio Unitario General",
(M."InQty" - M."OutQty") AS "Cantidad Neta",
(M."InQty" - M."OutQty") * M."Price" AS "Valor Neto Movimiento",
(
SELECT CASE
WHEN SUM(SUB."InQty") > 0 THEN
SUM(SUB."InQty" * SUB."Price") / SUM(SUB."InQty")
ELSE 0
END
FROM SBO_COSALCO_COLOMBIA."OINM" SUB
WHERE
SUB."ItemCode" = M."ItemCode"
AND SUB."Warehouse" = M."Warehouse"
AND SUB."InQty" > 0
) AS "Precio Promedio Ponderado Ingreso",
SUM(CASE WHEN M."DocDate" < '2025-01-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Inicial_Cant",
SUM(CASE WHEN M."DocDate" < '2025-01-01' THEN M."TransValue" ELSE 0 END) AS "Inicial_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-01-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_ENE) ELSE 0 END) AS "Inicial_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-02-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Enero_Cant",
SUM(CASE WHEN M."DocDate" < '2025-02-01' THEN M."TransValue" ELSE 0 END) AS "Enero_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-02-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_FEB) ELSE 0 END) AS "Enero_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-03-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Febrero_Cant",
SUM(CASE WHEN M."DocDate" < '2025-03-01' THEN M."TransValue" ELSE 0 END) AS "Febrero_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-03-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_MAR) ELSE 0 END) AS "Febrero_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-04-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Marzo_Cant",
SUM(CASE WHEN M."DocDate" < '2025-04-01' THEN M."TransValue" ELSE 0 END) AS "Marzo_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-04-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_ABR) ELSE 0 END) AS "Marzo_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-05-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Abril_Cant",
SUM(CASE WHEN M."DocDate" < '2025-05-01' THEN M."TransValue" ELSE 0 END) AS "Abril_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-05-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_MAY) ELSE 0 END) AS "Abril_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-06-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Mayo_Cant",
SUM(CASE WHEN M."DocDate" < '2025-06-01' THEN M."TransValue" ELSE 0 END) AS "Mayo_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-06-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_JUN) ELSE 0 END) AS "Mayo_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-07-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Junio_Cant",
SUM(CASE WHEN M."DocDate" < '2025-07-01' THEN M."TransValue" ELSE 0 END) AS "Junio_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-07-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_JUL) ELSE 0 END) AS "Junio_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-08-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Julio_Cant",
SUM(CASE WHEN M."DocDate" < '2025-08-01' THEN M."TransValue" ELSE 0 END) AS "Julio_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-08-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_AGO) ELSE 0 END) AS "Julio_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-09-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Agosto_Cant",
SUM(CASE WHEN M."DocDate" < '2025-09-01' THEN M."TransValue" ELSE 0 END) AS "Agosto_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-09-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_SEP) ELSE 0 END) AS "Agosto_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-10-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Septiembre_Cant",
SUM(CASE WHEN M."DocDate" < '2025-10-01' THEN M."TransValue" ELSE 0 END) AS "Septiembre_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-10-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_OCT) ELSE 0 END) AS "Septiembre_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-11-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Octubre_Cant",
SUM(CASE WHEN M."DocDate" < '2025-11-01' THEN M."TransValue" ELSE 0 END) AS "Octubre_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-11-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_NOV) ELSE 0 END) AS "Octubre_Valor_USD",
SUM(CASE WHEN M."DocDate" < '2025-12-01' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Noviembre_Cant",
SUM(CASE WHEN M."DocDate" < '2025-12-01' THEN M."TransValue" ELSE 0 END) AS "Noviembre_Valor_Local",
SUM(CASE WHEN M."DocDate" < '2025-12-01' THEN M."TransValue" / (SELECT "Rate" FROM TRM_DIC) ELSE 0 END) AS "Noviembre_Valor_USD",
SUM(CASE WHEN M."DocDate" <= '2025-12-31' THEN M."InQty" - M."OutQty" ELSE 0 END) AS "Diciembre_Cant",
SUM(CASE WHEN M."DocDate" <= '2025-12-31' THEN M."TransValue" ELSE 0 END) AS "Diciembre_Valor_Local",
SUM(CASE WHEN M."DocDate" <= '2025-12-31' THEN M."TransValue" / (SELECT "Rate" FROM TRM_DIC) ELSE 0 END) AS "Diciembre_Valor_USD"
FROM SBO_COSALCO_COLOMBIA."OINM" M
JOIN SBO_COSALCO_COLOMBIA."OITM" I ON M."ItemCode" = I."ItemCode"
JOIN SBO_COSALCO_COLOMBIA."OITB" B ON I."ItmsGrpCod" = B."ItmsGrpCod"
WHERE M."DocDate" <= '2025-12-31'
GROUP BY
M."ItemCode", I."ItemName", I."U_Tipo_Product", B."ItmsGrpNam", M."Warehouse",
M."DocDate", M."TransType", M."CreatedBy", M."InQty", M."OutQty", M."Price", M."TransValue"
ORDER BY
M."ItemCode", M."Warehouse", M."DocDate"
AGRADZECO SI ME PEUDEN ECHAR UNA MANO