✒️ABAP / Los IDocs de salida Por Jhon Cano Pineda
ABAP Los IDocs de salida

Lección 6: IDoc de Salida:
1 Introducción a las Interfaces de Salida
Los IDocs de salida se pueden generar mediante.
ü Output types
ü Punteros de modificaión
ü Programa 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 llamados transaccionales como por ejemplo un pedido o una factura. Por ello, la aplicación debe ser EDI / Ale Enable.
Los punteros de modificaión y los programas extractores, se utilizan para replicar datos maestros, o modificaciones de los mismos.
A continuación analizaremos en detalle cada uno de ellos.
Audio tips: los tipos de salida o Output Types se crean a través de la transacción estándar NACE, cuando se crean el tipo de salía con esta transacción se crean automáticamente registros en las tablas NAST y TNAPR, y generalmente los tipos de salida o Output Types son creados por los administradores Basis.
2 Output Types
Es un método de generación de IDocs de salida que se utilizan para datos transaccionales
El manejo del lado funcional es el mismo utilizado para impresión de formularios
Ø Se define un output Message (mensajes de salida), configurado con salida ALE / EDI.
Ø Se asocia dicho mensaje al documento que desea enviarse.
Ø Se debe configurar además, el mensaje de logística en la herramienta ALE (En el acuerdo de interlocutores).
Los pasos para configurar un mensaje vía Output types son:
ü Identificar el tipo de mensaje Idoc a enviar.
Por tratarse de documentos de negocio, generalmente se utilizan tipos de mensaje estándar y eventualmente, se generan ampliaciones de estos mensajes, para enviar información no contenida en el mismo.
ü Definíos el código de procesos de salida.
Si se utilizan un tipo de mensaje estándar, se utilizará un código de proceso estándar. Si se han generado ampliaciones para este tipo de mensaje, se modificara el modelo de funciones del código de procesos utilizando User Exits o ampliaciones. Este tema lo veremos en detalle en los próximos puntos.
ü Definimos el puerto de salida y la forma de envió
ü Definimos (en el caso en que sea necesario) la función de la puerta ABAP.
3 Código de proceso de salida:
También llamados Process code de salida, es el que indica cómo se debe procesar el IDoc de salida.
A diferencia de los códigos de proceso de entrada, que realmente procesan el IDoc para crear o modificar información en documentación de negocios, los códigos de procesos de salida, no graban información en el documento o en el objeto, sino que obtiene la información del mismo, y la transforman a formato IDoc para poder ser enviada.
Se definen códigos de procesos para cada tipo de mensajes (Tipos de IDocs), y cada código de proceso está asociado a un módulo de función, que es el cargado d ejecutarlo.
En la mayoría de los procesos de salida, se utilizan códigos de procesos estándar para la generación de IDocs, ya que la información a enviar proviene, por lo general, de documentos de negocio.
Igualmente, todos los módulos de función estándar asociado a código de proceso, cuenta con una serie de ampliaciones, donde puede agregar código Z, en caso que el tipo base vaya asociado a una ampliación Z.
Para definir códigos de procesos de salida Z, se utiliza la transacción WE41
Transacción WE41: se utiliza para la creación de los códigos de procesos de salida.
4 Punteros de Modificación:
Se utilizan para enviar o duplicar datos maestros en sistemas externos, cuando estos datos son creados o modificados.
Para realizar la activación de punteros de modificaión en forma global utilizaremos la transacción BD61 tal como vemos a continuación.
Luego realizaremos la activación de los puntos de modificaión por tipo de mensaje a través de la transacción BD50.
Transacción BD61 y BD50: utilizaremos la transacción estándar para la activación de los punteros de modificaión
Aquí debemos agregar una entrada para el mensaje deseado y marcarla como activa.
Ahora debemos definir las tablas y campos relevantes para la generación de punteros de modificaión mediante la transacción BD52. Primero introducimos el tipo de mensaje.
Transacción BD52: se utiliza para la generación de los punteros de modificación
Luego se ingresará 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.
Sabías que: para crear la relación entre el tipo de mensaje y el módulo de función, previamente deberemos crear el módulo de función. Este módulo de función será el que ingresamos en la transacción BD60
Para crear el módulo de funciones Z, tomaremos el encabezado de un módulo estándar y agregaremos nuestro código. La lógica del módulo de funciones contendrá los siguientes pasos.
Ø Leer los punteros de modificación generamos usando la función CHANGE POINTERS READ.
Ø Analizar los punteros de modificaión para determinar cuáles documentos son válidos.
Ø Determinar la clave del documento de aplicación del paso anterior.
Ø Seleccionar los datos de aplicación de la 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 datos en la base de datos.
Ø Actualizar el estado de los punteros de modificación.
Ø Ejecutar un COMMIT WORK
Finalmente ejecutaremos el programa RBDMIDOC para ejecutar el IDoc, introducimos el tipo de mensaje.
Programa RBDMIDOC
Se utiliza para crear IDocs a través de punteros de modificación para un tipo de mensaje específico.
Luego de creado, los envía al sistema receptor y marca a los punteros de modificación como procesados en el respectivo tipo de mensaje.
Audio tips: transacciones útiles para tener en cuenta cuando trabajamos con los punteros de modificaión son BD21 para seleccionar punteros de modificación, BD22 para borrar punteros de modificación y BD40 para leer punteros de modificación.
5 programas de extracción estándar:
Existen programas estándar para la creación de IDoc. Estos programas se utilizan para enviar a los sistemas receptores, datos maestros en forma masiva, para cargas iniciales, por ejemplo, donde se desea replicar gran parte de los datos maestros del sistema central a los subsistemas del ambiente.
Algunos programas extractores estándar son:
ü BD10 Maestros de Materiales
ü BD12 Maestros de Clientes
ü BD14 Maestros de Proveedores.
Además, podemos programar los propios programas extractores generadores de IDocs. Estos programas utilizan el módulo de función MASTER_IDOC_DISTRIBUTE para distribuir la información generada a los sistemas receptores.
Se debe actualizar el acuerdo de interlocutores el módulo de distribución, para cuáles serán los sistemas receptores.
6 Programas de Extracción Z
Los pasos a seguir para la creación de un IDoc de salida desde un programa ABAP son los siguientes:
Ø Seleccionar la información de la base de datos de acuerdo a los parámetros de selección ingresados.
Ø Completar la información correspondiente al registro de control.
Ø Completar una tabla interna de tipo EDIDD con los registros 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 lo puede ver desde la transacción WE05.
Transacción WE05: se utiliza para visualizar un listado con los Idocs existentes en el sistema.
 
 
 
Sobre el autor
Publicación académica de Jhon Deibys Cano Pineda, en su ámbito de estudios para el Curso SAP ABAP Avanzado.
Jhon Deibys Cano Pineda
Profesión: Ingeniero de Sistemas - Colombia - Legajo: WZ11E
✒️Autor de: 118 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Jhon Cano Pineda






Disponibilidad Laboral: FullTime


















