✒️ABAP El customizing ALE
ABAP El customizing ALE
1 | El acuerdo de interlocutor
Interlocutor ALE: Es un sistema SAP remoto o un sistema legacy con el que se intercambian datos.
Cuando los datos son intercambiados entre interlocutores, es importante que el emisor y el receptor estén de acuerdo en la sintaxis y semántica de los datos intercambiados. A este acuerdo se lo llama Acuerdo de Interlocutor.
La datos definidos en un Acuerdo de Interlocutor son:
- Tipo de IDoc y Tipo de mensaje, los cuales son el identificador clave del Acuerdo de interlocutor.
- Nombre del Emisor y Receptor que intercambiarán los IDocs para el Tipo de IDoc y mensaje.
- Puerto por el cual el emisor y el receptor se comunicarán.
En el interlocutor se definen datos específicos de cada mensaje a transmitir en los parámetros de salida o entrada según corresponda.
A través de la transacción WE20 se crea el Acuerdo de Interlocutor.
Transacción WE20: Mediante la transacción estándar WE20 crearemos los Acuerdos de Interlocutores en el sistema SAP.
Se debe definir el acuerdo de interlocutores en cada mandante y sistema donde se ejecutarán los IDocs ya que esta definición es “Dependiente de mandante”.
Se selecciona el sistema receptor del menú “Interlocutores EDI”. Si no existiera en este menú, debe crearse un nuevo nodo. Este nuevo sistema debe existir en R/3, como sistema lógico.
Para definir el IDoc, se agrega el tipo de mensaje en el sector “Parámetros de salida”, si es de salida y en el sector “Parámetros de entrada”, si es de entrada, haciendo clic en el botón de “Agregar registro”.
Para IDocs de salida, se indica el sistema receptor, el puerto, el tipo base, la forma en que se genera el mensaje y en que modalidad se procesa. No se especifica el sistema emisor, ya que el acuerdo se determina entre el sistema donde se configura el mismo y en el sistema receptor.
Para IDocs de entrada, se indica el sistema emisor, el mensaje lógico, el código de proceso y la función que procesa la entrada.
2 | La creación de destinos RFC, puertos y sistemas lógicos
Destino RFC: Es una puerta de enlace que permite comunicar un sistema SAP con otro sistema SAP o no SAP.
Los destinos RFC se crean a través de la transacción SM59.
Transacción SM59: Mediante la transacción estándar SM59 podemos visualizar y actualizar destinos RFC. Se pueden crear, borrar y modificar Conexiones R/3, Conexiones internas, Destinos lógicos, Conexiones TCP/IP y conexiones con driver ABAP.
Dependiendo del sistema destino, la conexión RFC será de distinto tipo. En general, para envió de Idocs, se crean conexiones del tipo TCP/IP, especificando el nombre del servidor destino y el puerto TCP destino.
Los Idocs pueden ser enviados y recibidos a través de diferentes medios. Con el objetivo de no acoplar la definición de las características del medio con la aplicación que lo está utilizando, el medio es accedido vía puertos.
Puerto: Es un nombre lógico para un dispositivo de entrada/salida.
Los programas se comunican con un puerto a través de una interfaz estándar.
En vez de definir el medio de comunicación directamente en el Acuerdo de Interlocutores, se asigna un número de puerto, y es este puerto el que designa realmente al medio. Esto permite definir las características de los puertos individualmente y usar un puerto en múltiples Acuerdos de Interlocutores.
Los cambios en un puerto se reflejarán automáticamente en todos los acuerdos que lo estén utilizando.
Al menos un puerto debe existir para cada sistema externo. La siguiente figura muestra cómo los Idocs son enviados a dos sistemas vía tres puertos.
Los puertos indican la forma de envío de los mensajes EDI y se configuran por medio de la transacción WE21.
Transacción WE21: Utilizaremos la transacción WE21 para la administración de los puertos en el proceso de IDocs.
Analicemos los puertos más comúnmente utilizados en detalle:
Ficheros: se utilizan cuando la información del IDoc debe ser almacenada en un directorio en el servidor de aplicaciones. SAP recomienda no usar nombres de archivos estáticos, dado que el archivo es sobre escrito cada vez que el IDoc se envía. Se recomienda usar el módulo de función EDI_PATH_CREATE_CLIENT_DOCNUM, el cual genera el nombre del archivo a partir del mandante y nro. de IDoc.
Ficheros XML: envía documentos en formato XML. Para utilizar este tipo de puerto, es necesario definir el nombre del puerto, el formato del XML y el nombre del archivo a generar. Al igual que con el tipo de puerto Fichero, se puede invocar a la función EDI_PATH_CREATE_CLIENT_DOCNUM para que genere los nombres del archivo en forma dinámica.
RFC Transaccional: se utilizan cuando el sistema receptor es un sistema SAP o no SAP externo. La información del IDoc será enviada a este sistema externo a través de esta puerta.
XML-HTTP: en vez de definir el nombre del archivo XML, se especifica un destino RFC.
ABAP: se utilizan cuando el IDoc está definido desde un sistema SAP al mismo sistema SAP. Esto sirve, por ejemplo, para definir un flujo de procesos a realizarse cuando se cree un documento específico. Tienen la particularidad de ejecutar un módulo de funciones luego de enviado el IDoc.
Los sistemas lógicos se crean a través de la transacción BD54.
Transacción BD54: Utilizaremos la transacción BD54 para la creación de los sistemas lógicos en el SAP.
Cuando el sistema lógico es un R/3, se lo debe asignar a un mandante. Para ello utilizamos la transacción SCC4.
Transacción SCC4: Utilizaremos la transacción SCC4 para asignar un sistema lógico a un mandante de SAP.
AUDIO ACLARATIVO: Si bien las configuraciones que realicemos en las transacciones estándar WE20, WE21 y SM59 no se pueden transportar, existe una forma de incluir estas configuraciones en una orden de transporte de modo de transportarlas al sistema que queramos. Esta opción nos puede ser de mucha utilidad si se va a realizar un refresh del ambiente SAP, en el cual estamos trabajando y deseamos conservar las entradas generadas en estas transacciones de configuración de modo de no tener que generar las manualmente luego del refresh del ambiente y mandante. Cuando hablamos de refresh nos referimos a que en las empresas cada x cantidad de tiempo se pisan los datos del ambiente de Testing con los datos existentes en el ambiente de producción para mantener el ambiente de pruebas con datos actuales. Para grabar las configuraciones entonces vamos a crear una nueva orden de transporte en la transacción SE01, hacemos doble clic en la tarea de la orden y presionamos el botón para modificarla. Allí veremos una pantalla y en el campo "ID de programa" vamos a introducir la opción R/3 TR. En el campo "tipo de objeto" introducimos TABU. En el campo "objeto" introducimos RFCDES para las entradas generadas en la transacción SM59, EDIPORT para las entradas generadas en la transacción WE21 y TBDLS y TBDLST para las entradas generadas en la transacción WE20. Luego, si hacemos doble clic en el nombre de la tabla veremos una nueva pantalla en donde podremos introducir los registros generados en las tablas correspondientes. Si deseamos transportar todos los destinos RFC de la transacción SM59 aquí debemos introducir * Lo mismo ocurre con las transacciones WE20 y WE21.
3 | El modelo de distribución
Modelo de distribución: Es una vista donde se define la distribución de los datos maestros.
La relación entre sistemas lógicos, tipos de mensajes, BAPIs y filtros están definidas en el Modelo de Distribución. Las aplicaciones y la capa ALE usan el modelo de distribución para determinar los receptores y para controlar la distribución de datos.
Los escenarios de distribución definen los tipos de IDocs y los pares de Interlocutores que participan en una distribución ALE. El escenario de distribución es la referencia para determinar qué datos serán replicados y quienes serán los receptores.
El modelo de distribución es compartido entre todos los interlocutores participantes. Por lo tanto solo puede ser mantenido en uno de los sistemas, el cual lo podemos llamar el sistema líder. Solo uno de los sistemas es el sistema líder, pero puede ser configurado para cualquiera de los interlocutores en cualquier momento, aún si el escenario ya se encuentra activo.
Pueden haber varios escenarios para diferentes propósitos. Por otro lado se puede poner todo en un solo escenario. Lo más recomendable es crear un escenario por administrador. Si hay un solo administrador ALE, no tiene mucho sentido tener más de un escenario. Pero si hay varios departamentos con diferentes requerimientos, será más útil crear un escenario por departamento.
Los pasos para la creación de un Modelo de Distribución son:
Primero accedemos a la transacción BD64.
Transacción BD64: Utilizaremos la transacción estándar BD64 para la creación de los modelos de distribución en el sistema SAP.
Allí cambiamos el modo de tratamiento a modificación, para ello vamos a la opción del menú Modelo de Distribución / Cambiar modo de tratamiento.
Luego presionamos el botón Crear Vista Modelo.
En la ventana de diálogo que vemos a continuación introducimos un texto breve y el nombre técnico para el Modelo de distribución.
Posteriormente seleccionamos el registro recién creado y presionamos el botón Insertar tipo mensaje.
En la siguiente ventana de diálogo, introducimos en el Emisor el nombre del sistema lógico que transmitirá el mensaje, el campo Destinatario con el nombre del sistema lógico que recibirá el mensaje y el Tipo de mensaje con el mensaje que se transmitirá entre estos sistemas lógicos.
No se puede mantener un tipo de mensaje entre el mismo emisor y receptor en más de un modelo de distribución.
Finalmente vemos el modelo de distribución creado.
 
 
 
Sobre el autor
Publicación académica de Pedro Antonio Duarte, en su ámbito de estudios para la Carrera Consultor ABAP.
Pedro Antonio Duarte
Profesión: Consultor de Sap Abap - Argentina - Legajo: JP24O
✒️Autor de: 128 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Certificación Académica de Pedro Duarte