✒️ABAP Los IDocs de salida
ABAP Los IDocs de salida
IDOCs DE SALIDA
1.- Introducciòn a las interfaces de salida.
Los IDOCs de salida se pueden generar mediante:
- Output Types
- Punteros de modificaciòn
- Programas de extracciòn estàndar
- Programas de extracciòn Z
2.- Output Types: Son creados por el SAP Basis.
Es un mètodo de generaciòn de IDOCs de salida que se utiliza para datos transaccionales.
Se crean con la transacciòn NACE, se generan automàticamente registros en las tablas: NAST y TNAR.
El manejo de lado funcional es el mismo utilizado para impresiòn de formularios.
- Se define un Output Message (mensaje de salida), configurado como 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 type son:
- Identifica el tipo de mensaje IDOC a enviar
Por tratarse de documentos de negocio, generalmente se 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.
Si se utiliza 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 modificarà el mòdulo de funciòn del còdigo de proceso utilizando
User Exits o ampliaciones.
- Definimos el puerto de salida y la forma de envìo.
- Definimos (en el caso que sea necesario) la funciòn de la puerta ABAP.
3.- Còdigo de proceso de salida:
Tambièn llamado "Process code de salida".- Es el que indica como 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 documentos de negocio, los còdigos de proceso de salida, no graban informaciòn en el documento o en el objeto, sino que obtienen la informaciòn del mismo, y la transforman a formato IDOC para poder ser enviada.
Se definen còdigos de proceso para cada tipo de Mensaje (Tipos de IDOCs), y cada còdigo de proceso està asociado a un mòdulo de funciòn, que es el encargado de ejecutarlo.
En la mayorìa de los procesos de salida, se utilizan còdigos 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.
Igualmente, todos los mòdulos de funciòn estàndar asociados a còdigos de proceso, cuentan con una serie de ampliaciones, donde puede agregarse còdigo Z, en caso de que el Tipo Base vaya asociado a una ampliaciòn Z.
.Para definir còdigos de procesos de salida Z, se usa la transacciò WE41.
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 modificaciòn en forma global se utiliza la transacciòn DB61.
Luego se realiza la activaciòn de los punteros de modificaciòn por tipo de mensaje a travès de la transacciòn BD50
"Las transacciones BD50 y BD61 se utilizan para la activaciòn de los punteros de modificaciò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 modificaciòn mediante la transacciòn BD52.
Primero ingresar el tipo de mensaje, luego se ingresarà el objeto de modificaciòn, a 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.
"Entradas nuevas".
"Para crear la relaciòn entre el Tipo de mensaje y el mòdulo de funciòn, previamente debemos crear el mòdulo de funciòn. Este mòdulo de funciòn serà el que ingresemos en la transacciòn DB60".
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 funciòn contendràn los siguientes pasos:
- Leer los punteros de modificaciòn generados usando la funciòn CHANGE_POINTERS_READ.
- Analizar los punteros de modificaciòn para determinar cuàles documentos son vàlidos
- Determinar la clave del documento de aplicaciòn del paso anterior.
- Seleccionar 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 registro de datos para todos los segmentos.
- Llamar al servicio MASTER_IDOC_DISTRIBUTE, para crear los datos de 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, ingresando el Tipo de Mensaje.
"El programa RBDMIDOC.- se utiliza para crear IDOCS a travès de punteros de modificaciòn para un tipo de mensaje especìfico
Luego de creados, los envìa al sistema receptor y marca a los punteros de modificaciòn como procesados en el respectivo tipo de mensaje".
Otras transacciones estàndar
BD21.- Para seleccionar punteros de modificaciòn.
BD22.- Para borrar punteros de modificaciòn
BD40.- Para leer punteros de modificaciòn para grupos.
5.- Programas de extracciòn estàndar.
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 centra a los subsistemas del ambiente.
BD10.- Maestro de materiales
BD12.- Maestro de clientes
BD14.- Maestro de Proveedores.
Ademàs podemos programar los propios programas extractores 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 y el modelo de distribuciòn, para definir cuales seràn los sistemas receptores.
6.- Programas de extracciòn Z
Pasos para crear 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 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 completado estos pasos, queda creado el idoc. El mismo se guarda fìsicamente en las tablas EIDC y EDID4. Se lo puede ver desde la transacciòn WE05.
 
 
 
Sobre el autor
Publicación académica de Miguel Angel Acosta Acosta, en su ámbito de estudios para la Carrera Consultor ABAP.
Miguel Angel Acosta Acosta
Profesión: Ingeniero de Sistemas - Ecuador - Legajo: TF64C
✒️Autor de: 238 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP SD Nivel Avanzado
- Carrera Consultor en SAP SD Nivel Inicial
- Máster ABAP for HANA
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Profesional de ingeniería de sistemas en computación e informática, con experiencia en la implantación y soporte de proyectos informáticos para empresas del sector industrial y financiero.
Certificación Académica de Miguel Acosta