✒️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 del alta a toda la información que es indispensable para que pueda funcionar, a este proceso se le llama inicial de datos.
EJ: para hacer una carga inicila del datos SAP de 10.000 clientes, para esto tendríamos que ingresar 10.000 veces a la trans. maestro de clientes lo que sería muy engorroso y costosa en tiempo.
Para solucionar este inconveniente se introduce la técnica de batch input, mediante la cual podemos dar el alta, modificar o borrar grandes cantidades de datos en el sistema, de forma automática y utilizando la misma trans.
Batch Input: técnica automática mediante la cual podremos realizar la carga masiva de datos en el sistema utilizando las validaciones de las trans.
La carga inicial de datos se realiza levantando los datos de un archivo ....ARCHIVOS EXTERNOS.....PROGRAMA BATCH INPUT.........SAP
Técnicas de Batch Input
Existen dos técnicas Online y Batch
- CALL TRANSACTION: se realiza de forma online por lo que ejecutas las actualizaciones en el momento que se ejecuta el batch Input.
- JUEGOS DE DATOS: se realiza de forma Batch( ode fondo) y queda almacenado en el SAP para su posterior ejecución mediante la trans.35 Consiste 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
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 TRANSSACTION
La estructura del BDCDATA es muy utilizada en los batch input ya que define de datos de la tabla interna que almacena los datos que se cargarán en el batch input.
Juegos de Datos
- Declaraciones de los datos propios del batch input
- Lectura de los datos de un 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 dle juego de datos a través de la trans.35 o a través de la creación de un job y la ejecución del programa estándar RSBDCBTC
RSBDCBTC: programa estándar del sistema nos permite analizar la ejecuciòn online de un juego de datos.
Carga de la tabla BDCDATA
Lo mas importante del batch input es la carga de la tabla BDCDATA, la tabla interna que tendríamos los mismo valores que la estructura BDCDATA.
- PROGRAM CHAR 40 Contendrá en nombre del programa ABAP que se ejecuta.
- DYNPRO NUMC 4 Contendrá la dynpro o pantalla de ejecución
- DYNBEGIN CHAR 1 Contendrá una X cuando 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
EJ: si cargariamos la tabla BDCDATA y queremos hacer un BATCH input, para cargar nuestro registros a un tabla de usuarios ZTABLA_USUARIOS.
SI lo ejecutamos de forma manual sería.
Ingresamos a la trans. SM30, introducimos el nombre de la tabla, presionamos el botón de modificación o maintain, presionar el botòn de nuevas entradas o new entries, introducir el contenido del registro con todos los campos, presionar le botón grabar y salir de la transacción.
* 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. Por cada vez que se ingrese en la tabla BDCDATA, una nueva pantalla se debe ingrear un BDC_OKCODE. Presiono boton de nuevas entradas CLEAR st_bdc_data. st_bdc_data-program = 'SAPLZTABLA_USUARIOS'. st_bdc_data-dynpro = '0001'. st_bdc_data-dynbegin = 'X'. APPEND st_bdc_data TO ti_bdc_data. CLEAR st_bdc_data. st_bdc_data-fnam = 'BDC_OKCODE'. st_bdc_data-fval = '=NEWL'. APPEND st_bdc_data TO ti_bdc_data. Los números de dynpros siempre deber ser 4 dígitos. este código esta diseñado para ingresar un solo registro, si queremos ingresar màs de uno debemos manejar indices. * Grabo los Registros CLEAR st_bdc_data. st_bdc_data-fnam = 'BDC_OKCODE'. st_bdc_data-fval = '=SAVE'. APPEND st_bdc_data TO ti_bdc_data. * Cierro la segunda pantalla CLEAR st_bdc_data. st_bdc_data-program = 'SAPLZTABLA_USUARIOS'. st_bdc_data-dynpro = '0001'. st_bdc_data-dynbegin = 'X'. APPEND st_bdc_data TO ti_bdc_data. CLEAR st_bdc_data. st_bdc_data-fnam = 'BDC_OKCODE'. st_bdc_data-fval = '=ENDE'. APPEND st_bdc_data TO ti_bdc_data. * Cierro la 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 = 'BDC_OKCODE'. st_bdc_data-fval = '/EENDE'. APPEND st_bdc_data TO ti_bdc_data.
 
 
 
Sobre el autor
Publicación académica de Juan Carlos Pavicich, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Carlos Pavicich
Profesión: Técnico Informático - Argentina - Legajo: VR91L
✒️Autor de: 116 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Tengo el agrado de dirigirme a ud/s con el objeto de mencionar mi experiencia y conocimientos técnicos necesarios para desarrollar actividades en el rubro de su empresa.
Certificación Académica de Juan Pavicich