Si se establecen condiciones, se puede utilizar la transformación If, Else if y Else para controlar el flujo de la correlación de datos entre los elementos definidos como un tipo específico o derivado en el conjunto de mensajes de entrada o salida. Para configurar la condición If debe conectar un elemento de entrada a un elemento de salida y seleccionar la transformación principal If.
Procedimiento
Realice los pasos siguientes para crear y configurar la condición If de una transformación If, Else if y Else:
- Conecte el elemento Country en el objeto del conjunto de mensajes de entrada que se encuentra en al elemento Address del objeto del conjunto de mensajes de salida que se encuentra en .
Se crea automáticamente una transformación Local mpa .
- Conecte la condición Local mpa al elemento de salida Address.
- Cambie la transformación Local mpa a una transformación If seleccionando la fecha hacia abajo que se encuentra a la derecha de la transformación Local mpa .
- Pulse con el botón izquierdo del ratón la fecha que se encuentra a la derecha de la transformación Local mpa .
La figura siguiente muestra gráficamente cómo seleccionar la transformación If.
- Seleccione la transformación If que se encuentra en Transformaciones principales.
La figura siguiente muestra gráficamente la lista de transformaciones principales disponibles:
Obtendrá una condición If con un signo de exclamación rojo conectada a dos elementos de entrada y un elemento de salida.
Nota: Para resolver estos errores complete el escenario.
El signo de exclamación rojo a la izquierda de la condición If resalta varios problemas de validación. Uno de los errores indica que la condición If no contiene una expresión. El segundo error le informa que debe definir transformaciones para todos los elementos de la correlación anidada asociada con la condición If. Esta correlación anidada es la correlación que se utiliza para definir cómo se correlaciona una dirección con un tipo derivado CanadianAddress con el tipo de dirección base Address.
- Conecte la dirección que tiene CanadianAddress como su tipo derivado a la transformación If.
La figura siguiente muestra la correlación de mensajes tras la creación de la conexión:
- Seleccione la condición If y a continuación defina la expresión en el separador Condición bajo las propiedades Transformación - If. Realice los pasos siguientes:
- Pulse Control+Barra espaciadora para obtener la lista de elementos.
La figura siguiente muestra los elementos disponibles para la selección en el escenario:
Nota: Aunque puede especificar directamente la expresión XPATH, tenga en cuenta que en función de los pasos que realice para crear la solución de integración, los nombres de las variables generados serán distintos del nombre del elemento en el archivo de esquema. El nombre del elemento tiene un ID concatenado al final del nombre que define automáticamente la herramienta.
- Seleccione un elemento y efectúe una doble pulsación sobre él.
- Defina la expresión XPATH relacionada con dicha variable.
- Repita los pasos siguientes si la expresión XPATH incluye más de un elemento de entrada.
La condición es una expresión XPath 2.0, que puede definir directamente, o bien crear mediante el creador de expresiones XPath pulsando Editar.
En el escenario, si ha creado el flujo de mensajes usted mismo, la expresión será similar a $Country4 = 'Canada', pero no idéntica.
La figura siguiente muestra las propiedades de la transformación If:
Resultados
Ahora ha definido y configurado la condición If.
Qué hacer a continuación
Defina la condición Else If de la transformación If. Para obtener más información, consulte Configuración de la condición Else If en una transformación If, Else if y Else.