
Lección10: La creación del programa de extracción Z para IDocs de salida
Esta lección se centra en la creación de un programa ABAP personalizado, conocido como "programa de extracción Z", diseñado para generar y enviar IDocs de salida en SAP. Estos programas son esenciales cuando las funcionalidades estándar del sistema no son suficientes para cubrir las necesidades específicas de datos a ser transferidos o replicados.
• Propósito de los Programas de Extracción Z Los programas de extracción Z son desarrollos ABAP a medida que permiten la creación y el envío de IDocs de salida. Son una de las técnicas empleadas para la generación de IDocs salientes, especialmente para procesar y enviar datos específicos, como los de un usuario desde una tabla personalizada.
• Creación y Lógica del Programa Z "Z ENVIAR SALIDA" La lección ilustra este proceso con un ejemplo de programa llamado "Z ENVIAR SALIDA", el cual envía datos de un usuario de la tabla Z TABLA USUARIOS. La creación de un IDoc de salida desde un programa ABAP personalizado implica una serie de pasos secuenciales y la interacción con funcionalidades estándar de SAP.
â—¦ Pantalla de selección y validación: El programa incluye una pantalla de selección donde se ingresa un número de DNI, y se valida que este no esté vacío.
â—¦ Subrutina EDIT C (Carga del Registro de Control del IDoc): En el evento START OF SELECTION, se llama a esta subrutina, la cual carga el registro de control del IDoc con información clave como el tipo de mensaje, tipo base, número de partner que recibe, puerto de salida, indicación de sistema lógico, y la dirección del IDoc (campo direct con valor '1' para salida).
â—¦ Procesamiento de Datos (DATA IDOC): Esta sección se encarga de la recopilación y estructuración de los datos de negocio.
â–ª Obtención de información: Se recupera la información de la tabla Z TABLA USUARIOS basándose en el parámetro de DNI ingresado en pantalla.
â–ª Carga de segmentos: Se carga el segmento del IDoc con los resultados obtenidos de la búsqueda en la tabla de usuarios.
â–ª Recomendación de subrutinas: Es ideal crear una subrutina por cada segmento a cargar si existen varios.
â—¦ Subrutina OUTBUARIAS (Ejecución y Envío): Esta subrutina es la encargada de desencadenar la creación y el envío del IDoc.
â–ª Creación y procesamiento del IDoc: Se ejecuta la función MASTER_IDOC_DISTRIBUTE, que crea y procesa el IDoc.
â–ª Forzado de salida externa: Finalmente, se ejecuta el programa estándar RSEOUT00 para forzar la salida del IDoc al exterior.
• Monitoreo y Verificación del IDoc Generado Una vez que el programa Z ha sido ejecutado y el IDoc creado, es posible monitorear su estado y visualizar su contenido.
â—¦ Proceso Asincrónico y Forzado: El procesamiento de los IDocs es asincrónico por defecto. Para forzar un procesamiento sincrónico, se utiliza la transacción BD87, donde se puede seleccionar el IDoc (inicialmente con estatus 30) y procesarlo para que cambie a estatus 03 (OK).
â—¦ Visualización del IDoc: El IDoc creado se puede visualizar mediante la transacción WE05, donde se pueden consultar sus registros de control, datos y estatus, junto con todo su contenido.
• Conceptos Clave Relacionados (ALE, IDoc, Modelo de Distribución) La generación de IDocs se inscribe dentro de un marco de conceptos y configuraciones más amplios en SAP.
â—¦ ALE e IDocs: La tecnología ALE (Application Link Enabling) se compone de estándares como el IDoc y EDI, permitiendo el envío y recepción de información entre sistemas.
â—¦ El Modelo de Distribución: El modelo de distribución detalla qué mensajes serán distribuidos y desde dónde hasta dónde. Es relevante en entornos de trabajo reales con un intercambio constante de información, ya que permite estructurar un esquema completo de distribución, aunque no es aplicable en el ejemplo simplificado de la lección.