✒️ABAP Los IDocs de salida
ABAP Los IDocs de salida
1- Introducción a las interfaces de salida
Se generan mediante
- Output types
- Punteros de modificación
- Programas de extracción estándar
- Programa de extracción Z
Los Output types se utilizan cuando la información a enviar se trata de documentos de negocio o mejor llamado transacciones ej: un pedido o una factura la ello se utiliza la aplicación debe ser EDI/Ale Enable.
Los punteros de modificación y los programas extractores se utilizan para replicar datos maestros o modificaciones de los mismo.
Los Output Type se crean a través de la Transacción NACE. Al crear el tipo de salida se genera de forma automática registros en las tablas NAST y TNAPR. Generalmente los tipos de salida son creados por los administradores.
2- Output Types
Es un método de generación de Idocs de salida que se utilizan para datos transaccionales.
El manejo funcional es el mismo utilizado para la impresión de formularios:
- Se define Output message ( mensaje de salida), configurado como salida ALE/ADI.
- Se asocia dicho mensaje al documento que desea enviarse.
- Se debe configurar ademas el mensaje de logística en la herramienta ALE ( Acuerdo de interlocutores).
Los pasos para configurar un mensaje vía OUTPUT TYPE:
- Identificamos el tipo de mensaje IDoc a enviar: por documentos de negocio, generalmente utilizan tipos de mensajes estándar y eventualmente se generan ampliaciones de estos mensajes, para enviar información no contenida en el mismo.
- Definimos el código de proceso de salida: se utiliza un tipo de mensaje estándar, se utilizara un código de proceso estandar. Si se han generado ampliaciones para este tipo de mensajes se modificara el modelo de unción del código de proceso utilizando USER EXITS o ampliaciones.
- Definimos el puerto de salida y la tomar de envío.
- Definimos ( en el caso en que sea necesario) la función de la puerta ABAP.
3- Código de proceso de salida.
También llamado como PROCESS CODE DE SALIDA es el que indica como se debe procesar el IDoc de salida.
La diferencia de los códigos de entrada que procesan el IDoc para crear o modificar información en documentos de negocio, los códigos de proceso de salida no graban la información en el documento o en el objeto, sino que obtienen la información del mismo y transforman a formato IDoc para poder ser enviada.
Los códigos de proceso se definen para cada tipo de mensajes (tipos Idocs) cada código de proceso esta asociado a un módulo de función que se encarga de ejecutarlo.
En la mayoría de los procesos de salida utilizan código de proceso estándar para la generación de idocs ya que la información a enviar proviene por lo general de documentos de negocio.
Todos los módulos estándar asociados a códigos de proceso, cuentan con una serie de ampliaciones donde puede agregarse código Z, En caso que el tipo base vaya asociado a un ampliación Z.
Para definir código de procesos de salida Z se utiliza WE41
4- Punteros de modificación
Se utiliza para enviar duplicar datos maestros en sistemas externos, cuando estos datos son creados o modificados.
Para la activación de punteros de modificación se utiliza BD61.
Para activación de los punteros de modificación por tipo de mensaje es con BD50.
BD61 y BD50 se utiliza para punteros de activación.
- Debemos agregar una entrada para el mensaje deseado y marcarla como activa.
- Debemos definir las tablas y campos para la generación de punteros de modificación mediante la transacción BD52 ( para la generación de los punteros de modificación ). Primeros introducimos el Tipo de mensaje.
- Luego se ingresa el objeto de modificación, la tabla y el campo.
- Ahora debemos crear la relación entre el Tipo de mensaje y el módulo de función a través de la transacción BD60.
Para crear el módulo de funciones Z, tomaremos un encabezado de un módulo estándar y lo agregamos a nuestro código. La lógica del módulo de función contendrá los siguientes puntos.
- leer los punteros de modificaron generados usando la función CHANGE_POINTER_READ.
- Analizar los punteros de modificación para determinar cuales documentos son validos.
- Determinar la clave del documento de aplicación del paso anterior.
- Seleccionar datos de aplicación dela base de datos usando la clave de objeto identificada.
- Completar la información del registro de control del IDoc.
- Completar una tabla interna de estructura EDIDD con registros de datos para todos los segmentos.
- Llamar al servicio MASTER_IDoc_DISTRIBUTE para crear los datos en la base de datos.
- Actualizar el estado de los punteros de modificación.
- Ejecutar un COMMIT WORK.
Finalmente ejecutamos el programa RBDMIDOC para ejecutar el IDoc, introduciendo el tipo de mensaje.
RBDMIDOC: se utiliza para crear IDOCS a través de punteros de modificación para un tipo de mensaje especifico, luego de creados los envía al sistema receptor y marca a los punteros de modificación como procesado n el respectivo tipo de mensaje.
Otras transacciones para punteros de modificación:
BD21: para seleccionar punteros
BD22: para borrar punteros
BD40: para leer punteros de modificación para grupos.
5-Programa de extracción estándar
Existen programa para la creación de IDOCS se utilizan para enviar a los sistemas receptores, datos maestros en forma masiva, para cargas iniciales EJ: donde se replica gran parte de datos maestros del sistema central a los subsistimos del ambiente.
Algunos programas extractores estándar son:
BD10 -Maestro de materiales.
BD12- Maestro de clientes.
BD14 - Maestro de proveedores.
Podemos programar nuestros propios programas extractores generadores de Idocs. Estos programas se utilizan el módulo de función MASTER_IDoc_DISTRIBUTE para distribuir la información generaba a los sistemas receptores.
Se debe actualizarle Acuerdo de interlocutores y el modelo de distribución, para definir cuales serán los sistemas receptores.
6- Programas de extracción Z
Los pasos para la creación de un IDoc de salida desde un programa ABAP:
- Seleccionar la info de la base de datos de acuerdo a los parámetros de selección ingresados.
- Completar la info correspondiente al registro de control.
- Completar una tabla interna de tipo EDIDD con los registros de datos de los segmentos correspondientes.
- Llamar al servicio de la capa ALE MASTER_IDOC_DISTRIBUTE para crear los IDocs en la base de datos.
- Ejecutar un COMMIT WORK.
- Enviar el IDoc a su destinatario invocando al programa RSEOUT00.
Una vez completados estos pasos, queda creado el IDoc. El mismo se guarda físicamente en las tablas EDIDC y EDID4. Se puede el listado de los IDoc desde WE05.
 
 
 
Sobre el autor
Publicación académica de Juan Carlos Pavicich, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Carlos Pavicich
Profesión: Técnico Informático - Argentina - Legajo: VR91L
✒️Autor de: 116 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Tengo el agrado de dirigirme a ud/s con el objeto de mencionar mi experiencia y conocimientos técnicos necesarios para desarrollar actividades en el rubro de su empresa.
Certificación Académica de Juan Pavicich