ventajas udemy ssrs services funciones curso capacitacion reporting-services ssrs-2008

reporting-services - ssrs - udemy reporting services



¿Cómo puedo eliminar#error en la expresión de SSRS cuando se divide por cero? (1)

Estoy tratando de eliminar #error al dividir por cero en mi informe SSRS. Tengo la siguiente expresión que todavía da #error

=IIf(IsNothing(Lookup(Fields!id.Value, Fields!id2.Value, Fields!Stock.Value, "Models")), 88 , Fields!QTY_AVL.Value * 100 / Lookup(Fields!id.Value, Fields!id2.Value, Fields!Stock.Value, "Models"))

Sin embargo, si cambia el / a *, como se muestra a continuación, obtengo el valor correcto 88

=IIf(IsNothing(Lookup(Fields!id.Value, Fields!id2.Value, Fields!Stock.Value, "Models")), 88 , Fields!QTY_AVL.Value * 100 * Lookup(Fields!id.Value, Fields!id2.Value, Fields!Stock.Value, "Models"))

En ambas instancias obtengo el valor correcto es el valor de búsqueda> 0

(Fields!QTY_AVL and Fields!Stock come from different sources)

¿Me estoy perdiendo algo obvio? Cualquier idea de esto muy apreciada.


Puede agregar una función de división segura si va a Propiedades de informe y luego hace clic en Código, luego referencia esto en su expresión como CODE.SafeDivide(Value1, Value2) , agregando los parámetros según sea necesario.

Esta función devolverá 0 en lugar de mostrar el mensaje #error.

Public Function SafeDivide(ByVal Numerator As Decimal, ByVal Denominator As Decimal) As Decimal If Denominator = 0 Then Return 0 End If Return (Numerator / Denominator) End Function