✒️ABAP El concepto de Batch Input
ABAP El concepto de Batch Input
Que es un Batch Input?
Cuando se instala una aplicación en un ambiente de producción, es necesario dar de alta toda la información que es indispensable para que pueda funcionar. A este proceso lo llamamos carga inicial de datos.
Supongamos que necesitamos hacer la carga inicial de datos en SAP de 10000 clientes. Para hacer esto tendríamos que ingresar 10000 veces a la transacción maestro de cliente, lo cual sería una tarea demasiada tediosa y sumamente costosa en tiempo
Algo similar ocurriría si necesitamos ingresar 10000 registros en una tabla base de datos, ya que si bien en este caso, podríamos crear un programa que mediante instrucciones Open SQL carguen los registros, no estaríamos utilizando todas las variaciones estándar que tienen las transacciones SAP, por lo que necesitaríamos dedicar mucho tiempo para cubrir ese bache.
Para solucionar estos inconvenientes, SAP introduce la técnica de Bach Input, mediante la cual, podemos dar de alta, modificar o borrar grandes cantidades de datos en el sistema, de forma automática y utilizando las mismas transacciones, con sus respectivas validaciones, tal como si lo hiciéramos manualmente de a 1 dato por vez.
BATCH INPUT
Técnica automática mediante la cual podemos realizar la carga masiva de datos en el sistema utilizando las validaciones de las transacciones.
Generalmente la carga inicial de datos se realizara levantando los datos de un archivo.
Técnicas de Batch Input
Existen dos técnicas para realizar un Batch Input, una se realiza de forma Online y la otra en forma Batch. Ellas son:
CALL TRANSACTION: se realiza de forma Online, por lo que ejecuta las actualizaciones en el momento en que se ejecuta el programa del Batch Input. Se utiliza la sentencia estándar CALL TRANSACTION.
JUEGO DE DATOS: se realiza de forma Batch (o de fondo) y queda almacenada en SAP para su posterior ejecución mediante la transacción SM35. Consiste en la ejecución de una serie de funciones estándar para la apertura, ejecución y cierre de datos
Pasos para la creación de un Batch Input
Los pasos para la generación de un Batch Input dependen de la técnica utilizada. Veamos cuales son los pasos a seguir para cada técnica:
CALL TRANSACTION
1. Paso 1ero: Declaración de datos propios del Batch input
2. Paso 2do: Lectura de datos de archivo de entrada.
3. Paso 3ero: Carga de la tabla BDCDATA.
4. Paso 4to: Ejecución de la sentencia CALL TRANSACTION.
Estructura BDCDATA
Esta estructura estándar del sistema es muy utilizada en los batch inputs ya que define el tipo de datos de la tabla interna que almacena los datos que se cargaran en el batch input.
1. Paso 1ero: Declaración de los datos propios del Batch Input.
2. Paso 2do: Lectura de datos de archivo de entrada.
3. Paso 3ero: Apertura de la sesión del Juego de Datos.
4. Paso 4to: Carga de la tabla BDCDATA.
5. Paso 5to: Inserción del Juego de Datos.
6. Paso 6to: Cierre de la sesión del Juego de Datos.
7. Paso 7mo: Ejecución del Juego de Datos a través de la transacción SM35 o a través de la creación de un Job y la ejecución del programa estándar RSBDCBTC.
Programa RSBDCBTC
Este programa estándar del sistema nos permite realizar la ejecución online de un juego de datos.
Carga de la tabla BDCDATA
El paso más importante en la ejecución de un Batch Input es la carga de la tabla BDCDATA.
Tal como hacemos referencia, la tabla BDCDATA será una tabla interna que tendrá los mismos campos que la estructura BDCDATA. Los campos que forman parte de esta estructura son:
PROGRAM, DYNPRO, DYNBEGIN, FNAM, FVAL.
Por cada vez que se ingrese en la tabla BDCDATA, una nueva pantalla, debe ingresarse un BDC_OKCODE.
Los números de las dynpros siempre deben tener 4 dígitos.
 
 
 
Sobre el autor
Publicación académica de Luis Manuel Olivier Melo, en su ámbito de estudios para la Carrera Consultor ABAP.
Luis Manuel Olivier Melo
Profesión: Ing. Sistemas Computacionales - Mexico - Legajo: TC46U
✒️Autor de: 63 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Luis Olivier