Tenemos un problema con uno de nuestros informes. En uno de nuestros tablixes un cuadro de texto tiene la siguiente expresión:SSRS 2008 - Tratamiento de la división por escenarios cero
=Iif(Fields!SomeField.Value = 0, 0, Fields!SomeOtherField.Value/Fields!SomeField.Value)
Cuál debe ser bastante explica por sí mismo. Si "SomeField" es cero, establezca el valor del cuadro de texto en cero, de lo contrario, configúrelo en "SomeOtherValue/SomeValue".
Lo que nos ha dejado perplejos es que el informe todavía arroja una excepción de tiempo de ejecución "intentó dividirse por cero", aunque la expresión anterior debería evitar que eso suceda.
Nos jugueteó un poco con la expresión sólo para asegurarse de que el cero-cheque está trabajando, y
=Iif(Fields!SomeField.Value = 0, "Yes", "No")
funciona de maravilla. Los casos en los que los datos son de hecho cero dieron como resultado que el cuadro de texto mostrara "Sí" y viceversa. Entonces el cheque funciona bien
Mi intuición es que el motor de generación de informes arroja la excepción en tiempo de ejecución, porque "parece" que vamos a dividir por cero, pero en realidad, no lo somos.
¿Alguien ha tenido el mismo problema anteriormente? Si es así, ¿qué hiciste para que funcione?
Impresionante! Usé la sugerencia para responder mi pregunta en: http: // stackoverflow.com/questions/43662727/ssrs-expression-error-calculate-variable-shows-error-when-dividing-by-zero/43666171 # 43666171 – Aline