El tratamiento de contextos es una herramienta importante a la hora de mapear escenarios completos en SAP PI.
Recordemos que el mapeo de los mensajes funciona a partir de colas. Una cola contiene una instancia completa XML con el mensaje origen. Dependiendo de la jerarquía del origen, los diferentes nodos y elementos se sitúan en diferentes contextos.
Los nodos (o elementos) con un mismo nodo padre pertenecen al mismo contexto. Así, cuando tienen diferentes padres tienen que separarse mediante cambios de contexto.
SAP PI proporciona diferentes herramientas y funciones de nodo para el tratamiento de contextos durante el mapeo de mensajes.
Vamos a ver un ejemplo simple para entender los conceptos básicos de los contextos.
Los elementos userId y empId pertenecen al mismo nodo padre User. De la misma forma, los elementos formSubject y formSender están incluidos bajo el mismo nodo padre, FormHeader. En cambio, userId y currentStep, por ejemplo, pertenecen a diferentes nodos padre.
Cambio de contexto
Vamos a ver el contexto del campo formLastModifiedDate, que pertenece al nodo padre FormHeader. Las líneas en gris claro corresponden a los cambios de contexto, por lo que aquí tenemos cuatro valores de fecha distintos y tres cambios de contexto.
Si subimos un nivel en la jerarquía, hasta el nodo Messages, en cambio, vemos que desaparecen los cambios de contexto, porque todos los valores tienen como nodo origen el nivel más alto de la jerarquía del mensaje.
En el último ejemplo, hemos añadido nuevas fechas de modificación en el mensaje, que se graban cada vez que se hace una modificación en uno de los cuatro formularios. Podemos ver que, los valores se agrupan dentro de los contextos, con un cambio de contexto que indica el cambio de formulario. Esto nos permitiría, por ejemplo, ordenar valores dentro de un contexto para seleccionar la última fecha de modificación y descartar las restantes.
Para tratar los mensajes se puede usar la selección explícita de contextos que acabamos de ver o utilizar las funciones de nodo proporcionadas por SAP PI dentro del editor gráfico, que se dejan para la segunda parte del artículo.
Esperamos que este artículo sobre el tratamiento de contextos en el mapeo gráfico te haya sido de ayuda. Ya tienes disponible la segunda parte de este post, en el que hablamos sobre las funciones de nodo. Puedes dejarnos tus preguntas en comentarios o puedes ponerte en contacto con nuestro área de User Experience & Integración.