Skip to Content
avatar image
Former Member

Rotación de inventario, Error division por cero

Hola buena día, agradeceria por favor me colaboren con la siguiente consulta, al ejecutar la consulta sale que no se puede dividir por cero, la primiera linea [Indice de Rotacion] hace la siguiente operación sin problema (Inventario Promedio/ Ventas Promedio),

la segunda linea [Días de inventario ] deberia dividir [365/Indice de Rotacion], es ahí donde sale el error, ¿que estaré haciendo mal? de ante mano mil gracias.

1). [Indice de Rotación]= case isnull(coalesce((T1.consumo),0),0) when 0 then 0 else isnull(((coalesce(T0.saldoinic,0)+(coalesce(T0.saldoinic,0)+T1.saldofin))/2)/(T1.consumo/12),0) END,--(InvPro/VtsPro)

2). -->[Días de inventario ]= case isnull(coalesce((T1.consumo),0),0) when 0 then 0 else isnull(coalesce(365,0)/(((coalesce(T0.saldoinic,0))+(coalesce(T0.saldoinic,0)+T1.saldofin))/2)/(T1.consumo/12),0) END,

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Best Answer
    avatar image
    Former Member
    Jun 06, 2017 at 07:47 PM

    Buena tarde, aquí les dejo la consulta de [Días de Inventario] basado en el [Indice de Rotación], por si algún día lo requieren. Saludos, A.R

    [Días de inventario ]= Case 
    WHEN 
    (Round(Convert(decimal(16,4),Case (IsNull(T1.consumo,0)) WHEN 0 THEN 0 
    ELSE 
    (((IsNull(T0.saldoInic,0)+IsNull(T0.saldoInic,0)+IsNull(T1.SaldoFin,0))/2)/(IsNull(T1.consumo/12,0)))end),5))=
     0 THEN 0 ELSE 
    (365)/(Round(Convert(decimal(16,4),Case(IsNull(T1.consumo,0)) WHEN 0 
    THEN 0 ELSE (((IsNull(T0.saldoInic,0)+IsNull(T0.saldoInic,0)+IsNull 
    (T1.SaldoFin,0))/2)/(IsNull(T1.consumo/12,0)))end),5)) END,
    
    Add comment
    10|10000 characters needed characters exceeded