Ejecutar el ejemplo EDIFACT
En este tema se explica cómo transferir los mensajes de prueba a través del flujo de mensajes
EDIFACT.
Los mensajes de entrada
El ejemplo EDIFACT contiene los siguientes cinco mensajes de prueba.
- D.96A_INVOIC_1.enqueue
- D.96A_INVOIC_2.enqueue
- D.96A_INVOIC_3.enqueue
- D.96A_INVOIC_4.enqueue
- D.96A_INVOIC_missing_BGM.enqueue
Los cinco mensajes de entrada son mensajes INVOIC. Los primeros cuatro mensajes de entrada son válidos. El quinto no lo es: falta el campo BGM en el mensaje.
Ejecutar el ejemplo
Para ejecutar el ejemplo debe transferir mensajes a las colas de entrada y obtener mensajes de las colas de
salida. Siga las instrucciones que se indican a continuación:
- Ponga uno de los mensajes de entrada en la cola EDIFACT_TO_XML_IN.
Cuando pone un mensaje en la cola EDIFACT_TO_XML_IN, el nodo
EDIFACT_TO_XML_IN MQInput en el primer flujo de mensajes
(denominado VALIDATINGEDIFACT2XML.msgflow) analiza el mensaje y lo
valida en relación al conjunto de mensajes:
- Si el mensaje es un mensaje EDIFACT válido, se pasa al nodo
Compute que convierte el mensaje EDIFACT en un mensaje XML. A continuación, el nodo Compute pasa el mensaje al nodo EDIFACT_TO_XML_OUT
MQOutput que pone el mensaje en la cola EDIFACT_TO_XML_OUT.
- Si el mensaje no es un mensaje EDIFACT válido, se pasa al nodo EDIFACT_FAIL, que lo pone en la cola
EDIFACT_FAIL.
- Obtenga el mensaje transformado de la cola EDIFACT_TO_XML_OUT y guárdelo. Ahora el mensaje está en formato XML.
- Ponga el mensaje guardado en la cola XML_TO_EDIFACT_IN.
Cuando pone el mensaje en la cola XML_TO_EDIFACT_IN, el nodo
XML_TO_EDIFACT_IN MQInput en el segundo flujo de mensajes (denominado
VALIDATINGXML2EDIFACT.msgflow) analiza el mensaje y lo valida en relación
al conjunto de mensajes:
- Si el mensaje es un mensaje XML válido, se pasa al nodo Compute
que convierte el mensaje XML en un mensaje EDIFACT. A continuación, el nodo Compute pasa el mensaje al nodo XML_TO_EDIFACT_OUT
MQOutput que pone el mensaje en la cola XML_TO_EDIFACT_OUT.
- Si el mensaje no es un mensaje XML válido, se pasa al nodo EDIFACT_FAIL, que lo pone en la cola
EDIFACT_FAIL.
- Obtenga el mensaje de la cola XML_TO_EDIFACT_OUT. Ahora el mensaje
es un mensaje EDIFACT.
Si no hay ningún mensaje en las colas EDIFACT_TO XML_OUT o XML_TO_EDIFACT_OUT, consulte
Diagnosticar problemas. El mensaje quizá esté todavía en la cola de entrada, o en la cola
EDIFACT_FAIL, o en una de las colas del sistema.
El mensaje D.96A_INVOIC_missing_BGM.txt
Cuando pasa el mensaje D.96A_INVOIC_missing_BGM.txt a través del primer
flujo de mensajes, la validación en el nodo EDIFACT_TO_XML_IN MQInput
falla. Puesto que en el mensaje falta el campo BGM, el nodo MQInput genera un error. Puede ver el error en las anotaciones de aplicación del visor de sucesos de Windows. El texto de error es el siguiente:
Error de validación de mensaje. Un elemento que se suponía completo
no cumple con la limitación del mínimo de apariciones (minOccurs). El elemento, BGM, tiene 0 instancias en el árbol
lógico, pero se ha definido o calificado con una limitación de mínimo de apariciones (minOccurs) de 1 dentro de su
tipo/elemento principal INVOIC del índice 1. Dé a la limitación de minOccurs valores bajos y efectúe un nuevo
despliegue para el intermediario o aumente las instancias del elemento en el mensaje propiamente dicho.
Volver a la Página de presentación de ejemplos