cancel
Showing results for 
Search instead for 
Did you mean: 

query rotacion de inventario

Former Member
0 Kudos

buenas tardes a todos

encontre en el foro este query, y quisiera me ayudaran, por que duplica las salidas.

  1. DECLARE @VAR INT, @INI DATETIME, @FIN DATETIME, @ALM NVARCHAR(8) 
  2. SET @VAR=(SELECT TOP 1 A.[TransNum] FROM [dbo].[OINM] A WHERE A.DocDate BETWEEN '[%0]' AND '[%1]' AND A.Warehouse='[%2]')  
  3. SET @INI='[%0]'  
  4. SET @FIN='[%1]' 
  5. SET @ALM='[%2]' 
  6. SELECT T0.[ItemCode], T0.[ItemName], @ALM 'Almacen'
  7. ISNULL((SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate<@INI AND Y.Warehouse=@ALM),0) 'Stock a la fecha inicio',  
  8. ISNULL((SELECT (SUM(Y.TransValue)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate<@INI AND Y.Warehouse=@ALM),0) 'Valor a la fecha inicio',  
  9. ISNULL((SELECT (SUM(Y.InQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND (Y.DocDate>@INI AND Y.DocDate<@FIN) AND Y.Warehouse=@ALM),0) 'Entradas',  
  10. ISNULL((SELECT (SUM(Y.TransValue)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.OutQty<=0 AND (Y.DocDate>@INI AND Y.DocDate<@FIN) AND Y.Warehouse=@ALM),0) 'Importe',  
  11. ISNULL((SELECT (SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND (Y.DocDate>@INI AND Y.DocDate<@FIN) AND Y.Warehouse=@ALM),0) 'Salidas'
  12. ((ISNULL((SELECT (SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND (Y.DocDate>@INI AND Y.DocDate<@FIN) AND Y.Warehouse=@ALM),0))* 
  13. (ISNULL((SELECT SUM(TransValue) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0)/ 
  14. ISNULL((SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0)+ 
  15. ISNULL((SELECT SUM(TransValue)*0.03 FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0)/ 
  16. ISNULL((SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0))) 'importe salidas',  
  17. ISNULL((SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0) 'Stock a la fecha termino',  
  18. ISNULL((SELECT SUM(TransValue) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0)/ISNULL((SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0)'Precio Unit'
  19. ISNULL((SELECT SUM(TransValue) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0)'Stock Valorizado'  
  20. FROM OITM T0  
  21. WHERE (ISNULL((SELECT (SUM(Y.InQty)-SUM(Y.OutQty)) FROM OINM Y WHERE Y.ItemCode = T0.ItemCode AND Y.DocDate <= @FIN AND Y.Warehouse=@ALM),0))>0  
  22. ORDER BY T0.[ItemCode] 

pero fijese que no se por que las salidas la esta duplicando, alguien podria ayudarme, se lo agradecere, ya estoy buscando algo asi

gracias de antemano

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member413321
Contributor
0 Kudos

A que te refieres con que la salida se esta duplicando.

Acabo de tomar el query y lo ejecute, veo la información bien, tanto de las líneas como de la columna de salidas.

Former Member
0 Kudos

holas, gracias por contestar

no se por que hay articulos que cuando reviso la salida la duplica

former_member413321
Contributor
0 Kudos

Puedes poner una imagen de la información que está duplicando.

Former Member
0 Kudos

no se por que se me queda congelada la computadora,

solo le ingrese un mes para generar el reporte.

former_member413321
Contributor
0 Kudos

Ese query puede tardar un tiempo dependiendo de la cantidad de articulos y el movimiento de los mismos.

Si se queda congelada la imagen, como sabes que los duplica? O donde los estas viendo duplicados? Si es en SQL puedes mandarme esa imagen.