![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP El Batch Input utilizando el Juego de datos
ABAP El Batch Input utilizando el Juego de datos
![ABAP El Batch Input utilizando el Juego de datos ABAP El Batch Input utilizando el Juego de datos](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/235.jpg)
BATCH INPUT UTILIZANDO JUEGO DE DATOS: El objetivo del Batch será la carga inicial de datos de la tabla base de datos, por lo que si tiene datos la vamos a reiniciar.
1. LA DECLARACIÓN DE LOS DATOS PROPIOS DEL BATCH INPUT: declaramos el tipo de datos TY_BDCDATA y con ese tipo declaramos la tabla interna y la estructura BDCDATA y otra tabla interna de usuarios que contendrá los registros que levantemos del archivo de entrada.
2. LA LECTURA DE DATOS DEL ARCHIVO DE ENTRADA: ejecutamos el método GUI_UPLOAD correspondiente a la clase CL_GUI_FRONTEND_SERVICES para levantar el archivo de entrada con la información para generar el Batch Input.
3. LA APERTURA DE LA SESIÓN DEL JUEGO DE DATOS: para realizar la apertura de la sesión del juego de datos, vamos a utilizar el módulo de funciones BDC_OPEN_GROUP, especificando el mandante, el grupo y el usuario.
4. LA CARGA DE LA TABLA INTERNA BDCDATA: para cargar la tabla interna BDCDATA utilizaremos la subrutina LLENAR_TABLA_BDCTABLA, antes debemos inicializar la tabla interna del Batch Input.
5. LA INSERCIÓN DEL JUEGO DE DATOS: para realizar la inserción del juego de datos vamos a utilizar el módulo de funciones BDC_INSERT.
6. EL CIERRE DE LA SESIÓN DEL JUEGO DE DATOS: para cerrar el juego de datos vamos a utilizar el módulo de funciones BDC_CLOSE_GROUP.
7. LA EJECUCIÓN DEL JUEGO DE DATOS: lo que primero vamos a hacer es ejecutar ABAP que genera el juego de datos. Luego de la ejecución visualizamos un mensaje en la barra de estado que nos indica “SE HA LANZADO EL JUEGO DE DATOS, VERIFICARLO EN LA TRX SM35”
8. Para realizar la ejecución del juego de datos vamos a ingresar a la transacción SM35, se selecciona el juego de datos y se ejecuta, en la siguiente ventana de diálogo marcamos la opción INVISBLE y ejecutamos, finalmente la sesión cambiará de estatus dependiendo del resultado de la ejecución y los datos se actualizarán en la tabla base de datos.
DIFERENCIAS ENTRE CALL TRANSACTION y JUEGO DE DATOS:
- Mediante el procesamiento CALL TRANSACTION el procesamiento es Síncrono de decir Online, y el procesamiento a través del JUEGO DE DATOS es Asíncrono, es decir de fondo.
- Mediante CALL TRANSACTION se transfieren datos solo a una transacción, en cambio mediante JUEGO DE DATOS se transfieren datos a múltiples transacciones.
- Mediante CALL TRANSACTION no se generan Logs, en cambio a través de JUEGO DE DATOS se generan Logs a través de cada sesión.
LA UTILIZACIÓN DEL PROGRAMA RSBDCBTC PARA LA EJECUCIÓN DEL JUEGO DE DATOS: podemos ejecutar el juego de datos en forma online mediante la ejecución del programa estándar RSBDCBTC. Para ello se crea un job mediante la ejecución del módulo de funciones JOB_OPEN. SUBMITIR la ejecución del programa estándar RSBDCBTC y cerrar el job mediante la ejecución del módulo de funciones JOB_CLOSE. Luego se ejecuta el programa que se acaba de crear y vamos a la transacción SM35 y validamos que el juego de datos de procesó sin la necesidad de hacerlo manualmente.
 
 
 
Sobre el autor
Publicación académica de Jean Carlos Lopez, en su ámbito de estudios para la Carrera Consultor ABAP.
Jean Carlos Lopez
Profesión: Ingeniero en Infomática - Venezuela - Legajo: AG33O
✒️Autor de: 75 Publicaciones Académicas
🎓Cursando Actualmente: Consultor en SAP BASIS Nivel Inicial
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime