![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP La creación del programa de extracción Z para IDocs de salida
ABAP La creación del programa de extracción Z para IDocs de salida
![ABAP La creación del programa de extracción Z para IDocs de salida ABAP La creación del programa de extracción Z para IDocs de salida](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/489.jpg)
LA CREACIÓN DEL PROGRAMA DE EXTRACCIÓN Z PARA IDOCS DE SALIDA
Crearemos el programa Z_ENVIAR_IDOC_SALIDA, el cual enviará los datos de un usuario de la tabla ZTABLA_USUARIOS.
El programa tiene una pantalla de selección donde ingresamos un número de DNI que será procesado, y validaremos que el DNI ingresado no esté vacío.
Luego en el evento START-OF-SELECTION creamos la subrutina EDIDC la cual carga el registro de control del IDoc.
Los datos más importantes que se cargan son: el tipo de mensaje, el tipo base, el número de partner que recibe, el puerto de salida y la indicación de que utilizamos un sistema lógico. También indicamos la dirección del IDoc en el campo direct con un 1 que significa salida.
Luego en la subrutina data_idoc haremos dos cosas: primero obtenemos la información de la tabla ZTABLA_USUARIOS a partir del parameter ingresado por pantalla y segundo cargamos el segmento con los resultados de la búsqueda de la tabla de usuarios. Es ideal crear una subrutina por cada segmento a cargar en caso de existir más de una.
Luego en la subrutina outbound_usuarios ejecutamos la función MASTER_IDOC_DISTRIBUTE que crea y procesa el IDOC.
Por último ejecutamos el programa estándar rseout00 que fuerza la salida del IDoc al exterior.
Ahora vamos a ejecutar el programa.
Para ello seleccionamos un DNI de un usuario, ponemos el debugger y ejecutamos.
En la variable ls_usuarios recuperamos los datos de la tabla ZTABLA_USUARIOS.
Luego de ejecutar la función MASTER_IDOC_DISTRIBUTE vemos en la variable pt_idoc_ctrl_docnum el número de IDoc creado.
Finalmente ejecutamos el programa estándar rseout00. Y vemos en pantalla el mensaje de creación de un IDoc.
Ahora vamos a la transacción BD87 para ejecutar el IDoc, esto se debe a que el IDoc es asincrónico y si queremos que sea sincrónico debemos forzarlo.
Aquí vemos que el status actual del IDoc es 30. Vamos a seleccionar el IDoc y presionar el botón procesar.
Ahora vemos que el estado del IDoc pasó de 30 a 03 con status OK.
Por último vamos a ejecutar la transacción WE05 para visualizar el IDoc que acabamos de crear. Aquí podremos ver los registros de control, datos y status del IDoc junto con su contenido y toda la información del mismo.
 
 
 
Sobre el autor
Publicación académica de Ducelvis Lolimar Arcia Cova, en su ámbito de estudios para la Carrera Consultor ABAP.
Ducelvis Lolimar Arcia Cova
Profesión: Tsu Relaciones Industriales (rrii) - Argentina - Legajo: WX74T
✒️Autor de: 125 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP FI Nivel Inicial
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Mi principal objetivo al comenzar esta gran experiencia educativa en programación abap es adquirir los conocimientos y competencias necesarias para incorporarme en el ámbito laboral en esta área.
Certificación Académica de Ducelvis Arcia