cancel
Showing results for 
Search instead for 
Did you mean: 

Dias de Inventario

Former Member
0 Kudos

Hola:

Necesito saber cómo sacar los días de inventario de un producto.

Esto es obtener cuantos días estuvo en almacén un producto en un lapso de tiempo determinado. Mi intención es tomar ese tiempo y dividirlo por las ventas para sacar un promedio de venta.

Tengo el Crystal Reports, use también el informe de auditoría de Stock, pero no obtengo lo que quiero, con el informe de auditoría de stock saco todo el historial del producto pero no tengo el resumen de cuantos días estuvo en stock.

Alguien sabrá cómo ayudarme o que puedo hacer?

De antemano muchas gracias.

Saludos.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hola!

Necesito su ayuda para obtener el reporte de días de inventario.... en la empresa manejamos varios almacenes y lo que busco es un listado por almacén donde se incluya el stock actual y los días que lleva dentro del inventario a una fecha determinada.

Me pueden ayudar?

Gracias!

Julieta Charles

Former Member
0 Kudos

Ok, ya fue enviado...

slds.

Fco.Calderó

felipe_loyolarodriguez
Active Contributor
0 Kudos

Buenos dias Fco

Serias tan ambable de enviarmelo tambien a mi correo

chiko.floyola[@]gmail[.]com

Yo te dejo la query que hice para el stock por bodega a una fecha


SELECT T1.[WhsCode], T1.[WhsName], T0.[ItemCode], T2.[ItemName], (SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T2.ItemCode AND Y.Warehouse = T1.WhsCode AND Y.DocDate BETWEEN '[%0]' AND '[%1]') 'Stock', T2.AvgPrice 'Costo unit', (SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T2.ItemCode AND Y.Warehouse = T1.WhsCode AND Y.DocDate BETWEEN '[%0]' AND '[%1]')*T2.AvgPrice 'Costo Total'
FROM OITW T0
INNER JOIN OWHS T1 ON T0.WhsCode = T1.WhsCode 
INNER JOIN OITM T2 ON T0.ItemCode = T2.ItemCode
WHERE (SELECT SUM(Y.InQty-Y.  OutQty) FROM OINM Y WHERE Y.ItemCode = T2.ItemCode AND Y.Warehouse = T1.WhsCode AND Y.DocDate BETWEEN '[%0]' AND '[%1]') != '0'
ORDER BY T0.[WhsCode], T0.[ItemCode]

Muchas gracias

FLR

Edited by: Floyola on Dec 24, 2010 9:53 AM

Former Member
0 Kudos

Hola

Q extraño, ejecute la query y solo me mostro el almacen seleccionado, tuve que quitar algunos campos, pero de cualquier forma queda como el tuyo



SELECT T1.WhsCode as 'Alm', T0.ItemCode as 'Art.', T0.ItemName as 'Descripción', T0.SuppCatNum as 'Catálogo', T0.SalUnitMsr as 'Ud.', datediff(day,T0.CreateDate,getdate()) as 'Dias de Alta', T1.AvgPrice as 'Costo', T1.Onhand, T1.StockValue as 'Valor Stock',
(sum(T3.Quantity)/340*30) as 'Stock Req.', 
((sum(T3.Quantity)/340*30)*T1.AvgPrice) as 'Valor Stock Req. $', 
sum(T3.Quantity) as 'Vtas',
sum(T4.Quantity) as 'NC', 
(sum(T3.Quantity)-sum(T4.Quantity)) as 'Vtas Tot', 
(sum(T3.Quantity)/340) as 'Vta. Diaria', 
(sum(T3.Quantity)/(T1.OnHand)) as 'Rot. Actual', 
(sum(T3.Quantity)/(sum(T3.Quantity)/340*30))as 'Rot. Req.', 

CASE WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 12 THEN 'A'
WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 9 THEN 'B'
WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 6 THEN 'C'
WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 3 THEN 'D'
ELSE 'E' END as 'Clasif. Act en Ventas'

FROM OITM T0 
INNER JOIN OITW T1 ON T0.ItemCode = T1.ItemCode 
INNER JOIN INV1 T3 ON T1.ItemCode = T3.ItemCode
INNER JOIN RIN1 T4 ON T3.ItemCode = T4.ItemCode

WHERE T1.WhsCode = '[%0]' AND T1.OnHand > 0 AND T0.ItemCode IN
( 
SELECT DISTINCT(T2.ItemCode)
FROM dbo.INV1 T2
) 
GROUP BY T1.WhsCode, T0.ItemCode,T0.ItemName, T0.SuppCatNum, T0.SalUnitMsr, T0.CreateDate, T1.AvgPrice, T1.OnHand, T1.StockValue,  T3.Quantity, T4.Quantity
ORDER BY T0.ItemCode

Saludos

Former Member
0 Kudos

¿A qué crees que se deba, porque no he podido hacer que funcione?

Former Member
0 Kudos

Hola Gustavo, si te interesa te puedo enviar por correo un informe creado para XL Reporter denominado Inventory_Turnover_Report dame tu correo y te lo envío.

Slds.

Fco.Calderó

Former Member
0 Kudos

Francisco

Me envías a mí también el reporte de inventarios para XLReporter

india_bonita7420 en el hotmail

Gracias!

Former Member
0 Kudos

Hola:

Enviamelo por favor a gustavojmarrero en hotmail.

Muchas gracias.

Former Member
0 Kudos

Francisco, me podrias enviar el informe a mi correo : vivianamedinac(arroba)hotmail.com

Te lo agradeceria muchisimo.

Saludos,

Viviana Medina.

Former Member
0 Kudos

Francisco me podrías enviar el reporte a mi correo también. perezgrajeda(@)gmail(.)com

Te la agradezco bastante.

Former Member
0 Kudos

Hola,

Revisa este link http://sapb1hub.blogspot.com/2010/08/calculo-de-la-rotacion-del-inventario-y.html

te puede servir para lo que andas buscando.

Saludos

Former Member
0 Kudos

¡Qué fabuloso!...

Yo tengo un Query pero el Group By no funciona y en XLReporter, mezclando un poco sí sale la Rotación del Inventario, claro es muchisimo más largo que este del link.

Me han ahorrado mucho tiempo.

Gracias!

Former Member
0 Kudos

Hola:

El querey de esta pagina esta bueno pero no me da exactamente lo que quiero.

Por ejemplo si tengo 10 articulo desde el dia 1 al dia 25 que se vendieron y quiero sacar los dias de inventario del articulo analizando del dia 1 al 30 me dice que mi venta diaria es de 0,33 cuando deberia ser de 0,4 ya ese articulo se vendieron 10 en 25 dias no en 30.

Saludos.

Former Member
0 Kudos

Este es mi query, sólo que me aparece la rotación de todos los productos en todos los almacenes, hasta ahorita no he podido hacer que me aparezca únicamente en el almacén seleccionado.

SELECT T1.WhsCode as 'Alm', T0.ItemCode as 'Art.', T0.ItemName as 'Descripción', T0.SuppCatNum as 'Catálogo', T0.SalUnitMsr as 'Ud.', datediff(day,T0.CreateDate,getdate()) as 'Dias de Alta', T1.AvgPrice as 'Costo', T1.Onhand, T1.StockValue as 'Valor Stock',T1.U_Loc1 as 'Rack 1', T1.U_Loc2 as 'Rack 2', T1.U_Loc3 as 'Rack 3',

(sum(T3.Quantity)/340*30) as 'Stock Req.',

((sum(T3.Quantity)/34030)T1.AvgPrice) as 'Valor Stock Req. $',

sum(T3.Quantity) as 'Vtas',

sum(T4.Quantity) as 'NC',

(sum(T3.Quantity)-sum(T4.Quantity)) as 'Vtas Tot',

(sum(T3.Quantity)/340) as 'Vta. Diaria',

(sum(T3.Quantity)/(T1.OnHand)) as 'Rot. Actual',

(sum(T3.Quantity)/(sum(T3.Quantity)/340*30))as 'Rot. Req.',

CASE WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 12 THEN 'A'

WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 9 THEN 'B'

WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 6 THEN 'C'

WHEN (sum(T3.Quantity)/T1.OnHand)/T1.OnHand >= 3 THEN 'D'

ELSE 'E' END as 'Clasif. Act en Ventas'

FROM OITM T0

INNER JOIN OITW T1 ON T0.ItemCode = T1.ItemCode

INNER JOIN INV1 T3 ON T1.ItemCode = T3.ItemCode

INNER JOIN RIN1 T4 ON T3.ItemCode = T4.ItemCode

WHERE T1.WhsCode = AND T1.OnHand > 0 AND T0.ItemCode IN

(

SELECT DISTINCT(T2.ItemCode)

FROM .[INV1] T2

)

GROUP BY T1.WhsCode, T0.ItemCode,T0.ItemName, T0.SuppCatNum, T0.SalUnitMsr, T0.CreateDate, T1.AvgPrice, T1.OnHand, T1.StockValue, T1.U_Loc1, T1.U_Loc2,T1.U_Loc3, T3.Quantity, T4.Quantity

ORDER BY T0.ItemCode