✒️ABAP El concepto de Batch Input
ABAP El concepto de Batch Input
BATCH INPUT
¿Qué es?
Cuando se instala una aplicación en un ambiente de producción, es necesario dar de alta toda la información indispensable para que pueda funcionar. A este proceso se le llama carga inicial de datos.
Los BATCH INPUT nos permiten 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 y como si lo hiciéramos manualmente entrando manualmente los datos cada vez.
Técnica automática mediante la cual podremos realizar la carga masiva de datos en el sistema utilizando las validaciones de las transacciones.
DIRECT INPUT
Técnica alternativa para la realizar la carga masiva de datos en SAP. Los módulos de funciones de SAP ejecutan las pruebas de consistencia de datos. Los programas de Direct Input actualizan las tablas de base de datos de SAP en forma directa. No es posible escribir programas ABAP Z de Direct Input, solo se deben utilizar los ya existentes.
La Transacción estándar BMV0 se utiliza para crear y mantener los programas de Direct Input.
Ejemplos de programas de Direct Input son:
Módulo FI(Financiero) - Programa estándar RFBIBL00
Modulo MM(Gestión de Materiales) - Programa estándar RMDATIND
Modulo SD(Ventas y distribuciones) - Programa estándar RVAFSS00
Modulo AM(Administración de Activos) - Programa estándar RAALTD11
Modulo CO(Controlling) - Programa estándar RKEVEXTO
TECNICAS DE BATCH INPUT
Existen dos técnicas (online y 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.
Pasos:
Primero: Declaración de datos propios del Batch Input.
Segundo: Lectura de datos de archivo de entrada.
Tercero: Carga de la tabla BDCDATA .
NOTA BDCDATA:
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.
Cuarto: Ejecución de la sentencia 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 funciona estándar para la apertura, ejecución y cierre del juego de datos.
Pasos:
Primero: Declaración de los datos propios del Batch Input.
Segundo: Lectura de datos de archivo de entrada.
Tercero: Apertura de la sesión del Juego de Datos.
Cuarto: Carga de la tabla BDCDATA.
Quinto: Inserción del Juego de Datos.
Sexto: Cierre de la sesión del Juego de Datos.
Séptimo: 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.
NOTA RSBDCBTC:
Este programa estándar del sistema nos permite realizar la ejecución online de un juego de datos.
CARGA DE LA TABLA BDCDATA
Estructura de la tabla:
Nombre campo Tipo Longitud Descripcion
PROGRAM Char 40 Contendrá el nombre del programa Abap que se ejecuta
DYNPRO Numc 4 Contendrá el nro. de 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 que se desea cargar. Este
campo es sensible a mayúsculas y minúsculas.
FVAL Char 132 Contendrá el valor que se desea cargar en FNAM.
PASOS DE FORMA MAUAL:
Primero: transacción SM30, introducimos el nombre de la tabal BDCDATA y pulsamos modificación.
Segundo: pulsamos el botón nuevas entradas
Tercero: entrar el contenido del registro con todos sus campos
Cuarto: Pulsar guardar
Quinto: Salir de la transacción
EJEMPLO PROGRAMADO PARA HACERLO DE FORMA AUTOMÁTICA:
Entramos al programa para introducir datos
* Primer pantalla
CLEAR st_bdc_data.
st_bdc_data-program = 'SAPMSVMA'.
st_bdc_data-dynpro = '0100'.
st_bdc_data-dynbegin = 'X'.
APPEND st_bdc_data TO ti_bdc_data.
CLEAR st_bdc_data.
st_bdc_data-fnam = 'VIEWNAME'.
st_bdc_data-fval = 'ZTABLA_USUARIOS'.
APPEND st_bdc_data TO ti_bdc_data.
* Presiono boton de mantenimiento
CLEAR st_bdc_data.
st_bdc_data-fnam = 'BDC_OKCODE'.
st_bdc_data-fval = '=UPD'.
APPEND st_bdc_data TO ti_bdc_data.
NOTA: Por cada vez que se entre en la tabla BDCDATA una nueva pantalla, hay que poner un BDC_OKCODE.
NOTA: Los números de las dynpros siempre deben tener 4 dígitos.
 
 
 
Agradecimiento:
Ha agradecido este aporte: Fernando Vera
Sobre el autor
Publicación académica de Josep Antoni Lopez Moyano, en su ámbito de estudios para la Carrera Consultor ABAP.
Josep Antoni Lopez Moyano
Profesión: It Manager - España - Legajo: QP26P
✒️Autor de: 375 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP HCM Nivel Inicial
- Carrera Consultor Basis NetWeaver Nivel Avanzado
- Carrera Consultor Basis NetWeaver Nivel Inicial
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial