✒️ABAP El concepto de Batch Input
ABAP El concepto de Batch Input
¿Qué es un Batch Input?
Cuando se instala una aplicación en un ambiente de producción, es necesario dar de alta toda la info que es indispensable para que pueda funcionar. A este proceso se le llama carga inicial de datos.
SAP introduce la técnica de Batch Input, mediante la cual, se pueda 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 se hiciera manualmente de a 1 dato a la vez.
Batch Input: Técnica automática mediante la cual se puede realizar la carga masiva de datos en el sistema utilizando las validaciones de las transacciones.
Generalmente, la carga inicial se realiza levantando los datos de un archivo.
ARCHIVOS EXTERNOS --> PROGRAMA BATCH INPUT --> SAP
Técnicas de Batch Input
Existen dos técnicas para realizar un Batch Input, una de forma Online y la otra de forma Batch:
- CALL TRANSACTION: Se realiza de forma Online, por lo que ejecuta las actualizaciones en el momento en que se ejecuta el programa Batch Input. Se utiliza la sentencia estándar CALL TRANSACTION.
- JUEGO DE DATOS: Se realiza de forma Batch (o de fondo) y queda almacenado 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 del juego 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:
CALL TRANSACTION
- Declaración de datos propios del Batch Input.
- Lectura de datos de archivo de entrada.
- Carga de la tabla BDCDATA.
- 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 cargarán en el Batch Input.
JUEGO DE DATOS
- Declaración de los datos propios del Batch Input.
- Lectura de datos de archivo de entrada.
- Apertura de la sesión del Juego de Datos.
- Carga de la tabla BDCDATA.
- Inserción del Juego de Datos.
- Cierre de la sesión del Juego de Datos.
- 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.
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:
Nombre campo Tipo Longitud Descripción
PROGRAM CHAR 40 Contendrá el nombre del programa abap que se ejecuta
DYNPRO NUMC 4 Contendrá el nº la dynpro o pantalla en ejecución
DYNBEGIN CHAR 1 Contendrá una X cuando se comience una nueva pantalla
FNAM CHAR 132 Contendrá el nombre del campo a cargar. Este campo es sensible a mayus y minus
FVAL CHAR 132 Contendrá el valor que se desea cargar en FNAM
Supongamos que se quiere hacer un Batch Input para cargar con un registro a nuestra tabla de usuarios ZTABLA_USUARIOS.
Ingresar a la transacción SM30 introducir el nombre de la tabla, presionar el botón de modificación o maintan, presionar el botón de nuevas entradas o new entries, introducir el contenido del registro con todos sus campos, presionar el botón grabar y salir de la transacción.
Por cada vez que se ingrese en la tabla BDCDATA, una nueva pantalla, debe ingresarse un BDC_OKCODE.
Luego, presionamos el botón de Nuevas entradas.
Nota: Los números de las dynpros siempre deben tener 4 dígitos.
Nota: Si en la tabla se quisiera ingresar más de un registro, vamos a tener que manejar un indice.
Por último, grabamos y salimos de ambas pantallas.
 
 
 
Sobre el autor
Publicación académica de Miguel Mauricio Sierra Cardona, en su ámbito de estudios para la Carrera Consultor ABAP.
Miguel Mauricio Sierra Cardona
Profesión: Ingeniero de Desarrollo E Innovación - Colombia - Legajo: GN43E
✒️Autor de: 61 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Miguel Sierra