Ejemplo: excepción en la condición Greater than
En este ejemplo podemos ver una asignación de datos que emite una excepción cuando se cumple una condición Greater than. Se trata del diseño de asignación de datos <Documentos>\Altova\MapForce2023\MapForceExamples\ExpenseLimit.mfd.
Esta asignación de datos emite una excepción si el elemento expense de la instancia XML de origen tiene un valor superior a 200. El valor "200" viene dado por una constante. La función less se utiliza para comparar los dos valores. Si el valor de expense es inferior a 200, entonces se pasa su elemento primario (expense-item) al filtro y la asignación no emite ninguna excepción. Si por el contrario el valor de expense es superior a 200, se emite una excepción con el texto predefinido "Se excedió el límite de gastos".
Como puede ver en la imagen la excepción se identifica con el icono y se compone de dos elementos: throw y error-text. El elemento throw debe estar conectado con la salida on-false o on-true de un filtro. El elemento error-text está conectado con una constante que suministra el texto de la excepción.
Lo más importante es saber que las dos salidas del filtro deben estar conectadas. De lo contrario no se podrá emitir una excepción. En nuestro ejemplo, la salida on-false está conectada con la excepción, mientras que la salida on-true está conectada con el componente de destino.