✒️ABAP El Batch Input utilizando el Juego de datos
ABAP El Batch Input utilizando el Juego de datos
BATCH INPUT UTILIZANDO JUEGO DE DATOS
1. MI PRIMER BATCH INPUT UTILIZANDO JUEGO DE DATOS
El objetivo del Batch Input será la carga inicial de datos de la tabla ZTABLA_USUARIOS.
Para ello, vamos a crear un archivo de texto con registros q cumplan con la estructura de la tabla ZTABLA_USUARIOS, sin tener en cuenta el campo mandante.
Como lo q vamos a hacer será la carga inicial de la tabla de usuarios, borraremos su contenido previamente a la ejecución de este ejemplo.
Ahora seguiremos los pasos q establecimos en la primer lección de la unidad.
- Paso 1ero.: Declaración de los datos propios del Batch Input.
Declaramos una tabla interna y una estructura, ambas del tipo BDCDATA y otra tabla interna de usuarios q contendrá los registros q levantemos del archivo de entrada.
- Paso 2do.: Lectura de datos de archivo de entrada
Ejecutamos el método GUI_UPLOAD para levantar el archivo de entrada con la información para generar el batch input.
- Paso 3ero.: Apertura de la sesión del Juego de Datos
Para realizar la apertura de la sesión del Juego de Datos, vamos a utilizar la función BDC_OPEN_GROUP, especificando el mandante, el grupo y el usuario.
- Paso 4to.: Carga de la tabla BDCDATA
Para cargar la tabla BDCDATA utilizaremos la subrutina BDC_FIELD, q vimos en la lección 2. Antes debemos inicializar la tabla interna del Batch Input.
- Paso 5to.: Inserción del Juego de Datos
Para realizar la inserción del Juego de Datos vamos a utilizar la función BDC_INSERT, tal como vemos a continuación.
- Paso 6to.: Cierre de la sesión del Juego de Datos
Para cerrar el Juego de Datos vamos a utilizar la función BDC_CLOSE_GROUP, tal como vemos a continuación.
- Paso 7mo.: Ejecución del Juego de Datos
Para realizar la ejecución del Juego de Datos vamos a entrar a la transacción SM35. Vamos a seleccionar el Juego de Datos y lo ejecutamos presionando el botón Ejecutar (Process).
En la siguiente ventana de dialogo marcamos la opción Invisible (Background) y presionamos Ejecutar (Process).
Finalmente la sesión cambiará de status dependiendo del resultado de la ejecución y los datos se actualizarán en la tabla ZTABLA_USUARIOS.
Las principales diferencias entre las técnicas de CALL TRANSACTION y JUEGO DE DATOS son:
Mediante CALL TRANSACTION el procesamiento es síncrono es decir online en cambio con JUEGO DE DATOS el procesamiento es asíncrono es decir de fondo.
Mediante CALL TRANSACTION se transfiere datos solo a una transacción en cada Call Transaction en cambio mediante JUEGO DE DATOS se transfiere datos a multiples transacciones.
Mediante CALL TRANSACTION no se genera logs en cambio mediante JUEGO DE DATOS se genera logs por cada sesión.
2. UTILIZACION DEL PROGRAMA RSBDCBTC PARA LA EJECUCION DEL JUEGO DE DATOS
Podemos ejecutar el Juego de Datos en forma Online mediante la ejecución del programa estándar RSBDCBTC. Para ello, vamos a tener q crear un job, submitir la ejecución del programa RSBDCBTC y cerrar el job.
Luego, si vamos a la transacción SM35, vemos q el juego de datos se procesó sin la necesidad de hacerlo manualmente.
NOTA:
El nombre del Juego de Datos lo especificamos en la variable V_GROUP.
Aquí generalmente se coloca el nombre del programa + la fecha del día + hora del día.
 
 
 
Sobre el autor
Publicación académica de Mayra Maria Pino Rodriguez, en su ámbito de estudios para la Carrera Consultor ABAP.
Mayra Maria Pino Rodriguez
Profesión: Licenciada Cibernética Matemática - Republica Dominicana - Legajo: RA62Z
✒️Autor de: 56 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Mayra Pino