✒️ABAP El concepto de Batch Input
ABAP El concepto de Batch Input
Lección 1. El concepto de Batch Input.
1.- Que es un Batch Input.
Técnica automática mediante la cual podremos realizar la carga masiva de datos en el sistema utilizando las validaciones de las transacciones.
Lo usaremos sobre todo para la introducción masiva de datos al sistema SAP, de forma automática y realizando todas sus respectivas validaciones.
2.- 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.
· 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 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.
NOTA: Como alternativa a las técnicas de carga inicial de datos mediante Batch Input, existe la técnica llamada Direct Input, o entrada directa, a través del Direct Input los módulos de funciones de SAP ejecutan las pruebas de consistencia. En el Batch Input estos controles de consistencia se ejecutan con ayuda de las pantallas, esto significa que el Direct Input tiene ventajas importantes en cuanto a performance en comparación al Batch Input. Pero hay pocos programas para realizar Direct Input.
Los programas de Direct Input actualizan las tablas de bases de datos de SAP de forma directa y como sabemos esto está prohibido, ya que los datos estándar de SAP no se pueden actualizar en forma directa debido a que de esta forma se pierde la consistencia y la seguridad de los datos, los programas de Direct Input son la excepción a la regla.
Por lo tanto no es posible escribir programas ABAP Z de Direct Input sino que debemos solamente utilizar los ya existentes. Pero por supuesto que si se pueden escribir programas ABAP para actualizar las tablas de Bases de Datos Z siempre teniendo en cuenta la consistencia y la seguridad de los datos.
SAP ha creado programas de Direct Input en un esfuerzo de querer mejorar los procedimientos de Batch Input. Para mantener e iniciar estos programas se utiliza la BMV0.
Ejemplos de programas de Direct Input son:
- Módulo financiero o FI el programa RFBIBL00
- Módulo de gestión de materiales MM el programa estándar RMDATIND.
- Módulo de ventas y distribución o SD el programa estándar RVAFSS00.
- Módulo de administración de activos AM el programa estándar RAALTD11
- Módulo de control CO el programa estándar RKEVEXTO
3.- Pasos para la creación de un Batch Input
Los pasos para la generación de una Batch Input dependen de la técnica utilizada.
· o Paso 1ro: Declaración de datos propios del Batch Input.
o o o 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.
· JUEGO DE DATOS:
o Paso 1ro: Declaración de los datos propios del Batch Input.
o Paso 2do: Lectura de datos de archivo de entrada.
o Paso 3ro: Apertura de la sesión del Juego de datos.
o Paso 4to: Carga de la tabla BDCDATA.
o Paso 5to: Inserción del Juego de Datos.
o Paso 6to: Cierre de la sesión del Juego de Datos.
o 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.
4.-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 la estructura son:
· · DYNPRO NUNC 2 Contiene el nro deDynpro o pantalla en ejecución.
· · · Campo es sensible a mayúsculas y minúsculas.
· FVAL CHAR 132 Contiene el valor que se desea cargar en FNAM.
Ejemplo de cómo cargaríamos la tabla DBCDATA. Supongamos que queremos hacer una Batch Input para cargar con un registro a nuestra tabla de usuarios ZTABLA_USUARIOS.
 
 
 
Sobre el autor
Publicación académica de Juan Hernández, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Hernández
Profesión: Programador Informático - España - Legajo: XQ15K
✒️Autor de: 125 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: PartTime
Certificación Académica de Juan Hernández