🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP El concepto de Batch Input

ABAP El concepto de Batch Input

ABAP El concepto de Batch Input

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 información que es indispensable para que pueda funcionar. A este proceso se le llama CARGA INICIAL DE DATOS.

NOTA: Carga Inicial de Datos: Proceso que consiste en el ingreso de los datos necesarios para el funcionamiento de una aplicación en un ambiente del sistema.

SAP introduce la técnica de BATCH INPUT, mediante la cual, se puede hacer la carga masiva de datos (dar de alta, modificar o borrar grandes cantidades de datos) en el sistema utilizando las validaciones de las transacciones, tal como si se hicieran manualmente de a una por vez.

NOTA: 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.

Generalmente, la carga inicial de datos se realizará levantando los datos de un archivo, tal como vimos en la unidad anterior.

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 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 TRANSACCION SM35. Consiste en la ejecución de una serie de funciones estándar para la apertura, ejecución y cierre del juego da datos.

AUDIO: Como alternativa a la Técnica BATCH INPUT, existe la Técnica DIRECT INPUT o entrada directa. A través de 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 la 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 y tiene la razón de usarlos, solo si cumplen plenamente con el objetivo del requerimiento. Los programas de DIRECT INPUT actualizan las tablas de BD de SAP en forma directa. Como sabemos esto está prohibido en SAP, ya que los datos estándar de SAP no se pueden actualizar en forma directa debido a que de esta forma se pierden la consistencia y 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, si no que debemos solamente utilizar los ya existentes. Pero por supuesto que si se pueden escribir programas ABAP, para actualizar las tablas Bases de Datos Z, siempre teniendo en cuenta la consistencia y seguridad de los datos.

SAP ha creado programas de DIRECT INPUT, en un esfuerzo de querer mejorar los procedimientos de BATCH INPUT cuya velocidad de procesamiento es muy inferior al DIRECT INPUT. La técnica de DIRECT INPUT es ideal para la transferencia de grandes cantidades de datos, para mantener e iniciar estos programas se utiliza la transacción estándar BMV0.

Ejemplos de Programas de DIRECT INPUT son: para el Modulo Financiero FI, el programa RFBIBL00; para el Modulo de Gestión de Materiales MM, el programa RMDATIND; para el Modulo de Ventas y Distribuciones CD, el programa RVAFSS00; para el Modulo de Administración de Activos AM, el programa RAALTD11; y para el Modulo de Control CO, el programa RKEVXTO.

PASOS PARA LA CREACIÓN DE UN BATCH INPUT

Call Transaction o Técnica Online:

- Paso 1: Declaración de Datos Propios del Batch Input.

- Paso 2: Lectura de datos del Archivo de Entrada.

- Paso 3: Carga de la tabla BDCDATA.

- Paso 4: Ejecución de la sentencia CALL TRANSACTION.

NOTA: BDCDATA: Estructura estándar SAP que se utiliza para la carga de datos en un Batch Input. Esta estructura 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 Técnica Batch:

- Paso 1: Declaración de Datos Propios del Batch Input.

- Paso 2: Lectura de datos del Archivo de Entrada.

- Paso 3: Apertura de la sesión del JUEGO DE DATOS.

- Paso 4: Carga de la tabla BDCDATA.

- Paso 5: Inserción del JUEGO DE DATOS.

- Paso 6: Cierre de la sesión del JUEGO DE DATOS.

- Paso 7: Ejecución del JUEGO DE DATOS a través de la transacción SM35 o a traves de la creación de un JOB y la ejecución del programa estándar RSBDCBTC.

NOTA: Programa RSBDCBTC, este programa estándar del sistema nos permite realizar la ejecución online de un juego de datos.

SM35, es una transacción estándar de SAP que se utiliza para la grabación de sesiones de datos de BATCH INPUTS.

________________________________________________

CARGA DE LA TABLA BDCDATA

Es el paso más importante en la ejecución de un Batch Input. Es una Tabla Interna que tendrá los mismos campos que la Estructura BDCDATA.

PROGRAM CHAR 40 Nombre del Programa ABAP que se ejecuta

DYNPRO NUMC 4 Número de la Dynpro o Pantalla de Ejecución.

DYNBEGIN CHAR 1 Contendrá una "X" cuando se comience una Nueva Pantalla

FNAM CHAR 132 Nombre del Campo a Cargar (sensible a mayúsculas y minúscula)

FVAL CHAR 132 Valor que se cargará en FNAM.

Veamos un ejemplo sencillo de como cargaríamos la Tabla BDCDATA. Supongamos que queremos hacer un BATCH INPUT, para cargar con un registro a nuestra tabla de usuarios ZTABLA_USUARIOS.

Si lo hacemos manualmente, deberíamos hacer lo siguiente: Ingresar a la Transaccion SM30. Digitar el Nombre de la Tabla y presionar el botón ACTUALIZAR. En la siguiente pantalla presionamos el botón Entradas nuevas. Grabamos los datos de todos los campos. Presionamos el botón Grabar. Salimos de la Transacción.

En código este proceso sería asi:

PRIMERA PANTALLA en la Tabla BDCDATA:

* 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 ingrese en la tabla BDCDATA, una nueva pantalla, debe ingresar un BDC_OKCODE.

Luego, presionamos el botón NUEVAS ENTRADAS:

* 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.

NOTA: Los números de los dynpros siempre deben tener dígitos.

Despues se registran los datos de todos los CAMPOS:

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 = 'ZTABLA_USUARIOS-DNI'.

st_bdc_data-fval = st_usuarios-dni.

APPEND st_bdc_data TO ti_bdc_data.

CLEAR st_bdc_data.

st_bdc_data-fnam = 'ZTABLA_USUARIOS-NOMBRE_APE'.

st_bdc_data-fval = st_usuarios-nombre_ape.

APPEND st_bdc_data TO ti_bdc_data.

CLEAR st_bdc_data.

st_bdc_data-fnam = 'ZTABLA_USUARIOS-ESTADO_USU'.

st_bdc_data-fval = st_usuarios-estado_usu.

APPEND st_bdc_data TO ti_bdc_data.

CLEAR st_bdc_data.

st_bdc_data-fnam = 'ZTABLA_USUARIOS-DIRECCION'.

st_bdc_data-fval = st_usuarios-direccion.

APPEND st_bdc_data TO ti_bdc_data.

CLEAR st_bdc_data.

st_bdc_data-fnam = 'ZTABLA_USUARIOS-CODIGO_POSTAL'.

st_bdc_data-fval = st_usuarios-codigo_postal.

APPEND st_bdc_data TO ti_bdc_data.

CLEAR st_bdc_data.

st_bdc_data-fnam = 'ZTABLA_USUARIOS-FECHA_NAC'.

st_bdc_data-fval = st_usuarios-f_nacimiento.

APPEND st_bdc_data TO ti_bdc_data.

CLEAR st_bdc_data.

st_bdc_data-fnam = 'ZTABLA_USUARIOS-ESTADO_CIVIL'.

st_bdc_data-fval = st_usuarios-estado_civil.

APPEND st_bdc_data TO ti_bdc_data.

Por ultimo GRABAMOS y SALIMOS de las pantallas:

* 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.

Todos los registros agregados a esa Tabla Interna terminan siendo lo necesario para el ingreso de UN registro en la TBD. Para el ingreso de muchos registros será necesario agregar un índice.



 

 

 


Sobre el autor

Publicación académica de Alexander Castellanos, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Senior

Alexander Castellanos

Profesión: Ingeniero de Sistemas - Colombia - Legajo: JS42A

✒️Autor de: 67 Publicaciones Académicas

🎓Egresado del módulo:

Certificación Académica de Alexander Castellanos

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "El concepto de Batch Input" de la mano de nuestros alumnos.

SAP Senior

BATCH INPUT: Técnica automatica mediante la cual podremos realizar la caga masiva de datos en el sistema utilizando las validaciones de las transacciones. SAP a creado programas de direct imput para mejorar los procedimientos de batch input, su procesamiento es inferior al batch input. txBMV0 deal para la transferencia de grandes cantidades de datos.

Acceder a esta publicación

Creado y Compartido por: Matias Ciutat

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Batch Input es una técnica automática que nos permite realizar la carga masiva de datos en el sistema utilizando las validaciones de las transacciones. Técnicas para relizar un Batch Input: -CALL TRANSACTION: ejecuta las actualizaciones en el momento en que se ejecuta el programa del Batch Input, es decir, de forma Online. -Juego de datos: ejecuta una serie de funciones estándar para la apertura, ejecución y cierre del juego de datos en forma de batch o de fondo. La estructura BDCDATA es utilizada en los batch inputs, define el tipo de datos de la tabla interna que almacena los datos que se cargarán en el batch input. El programa RSBDCBTC nos permite ejecutar online un juego de datos.

Acceder a esta publicación

Creado y Compartido por: Mónica Robles

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Batch input: tecnica mediante la cual podremos realizar la carga masiva de datos en el sistema utilizando las validaciones de las transacciones. tecnicas de batch input: CALL TRANSACTION que es froma online por lo que ejecuta las actualizaciones en el momento que se ejecuta el progrma batch inputy utiliza la trasanccion estandar CALL TRANSACTION JUEGO DE DATOS: Se realiza de forma batch (de fondo) y qyeda almacenado en SAP para su posterior ejecucion mediante la transaccion SM37. Pasos para crear el batch input: 1. Declaracion de dato propios del batch input. 2. Lectura de datos de archivo de entrada 3. Carga de la tabla BCDATA. 4. Ejecucion de la sentencia CALL TRANSACTION. BCDATA: es una estructura estandar del sistema es muy utilizada en...

Acceder a esta publicación

Creado y Compartido por: Rainer Diaz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

BATCH INPUT tecnica automatica mediante la cual podremos realizar la carga masiva de datos en el sistema utilizando las validaciones de las transacciones TECNICAS DE BATCH INPUT ONLINE : CALL TRANSACTION BATCH: JUEGO DE DATOS TRANSACCION SM37 TECNICA DIRECT INPUT VENTAJAS EN PERFOMANSE CON EL BATCH INPUT PASOS PARA CREAR BATCH INPUT CALLTRANSACTION 1 declaracion de datos propios del batch input 2 lectura de los datos de archivo de entrada 3 carga de la tabla BDCDATA 4 ejecucion de la sentencia CALL TRANSACTION JUEGO DE DATOS 1 declaracion de datos propios del batch input 2 lectura de datos archivo entrada 3 apertura de la sesion del juego de datos 4 carga de la tabla BDCDATA 5 INSERCION DEL JUEGO DE DATOS 6 cierre de sesion del juego de datos...

Acceder a esta publicación

Creado y Compartido por: Andres Felipe Escobar Lopez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Existen dos técnicas para realizar un batch input: - Call transaction: se realiza de forma Online. - Juego de datos: se realiza de fondo. Se ejecuta mendiante la transacción SM35. Como alternativa al batch input existe el direct input, el cual hace que los modulos de funciones de sap ejecutan los controles de consistencia. En el batch input se ejecutan con ayuda de las pantallas. Los programas de direct input actualizan las tablas de sap de forma directa. Existen programas standar direct input que actualizan tablas estandar. También es posible crear direct input para modificar tablas Z. La transacción BMV0 es para mantener e iniciar los direct input. Algunos ejemplos de direct input: FI: RFBIBL00 MM: RMDATIND...

Acceder a esta publicación

Creado y Compartido por: George Yunkichi Okuma Zavala

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

*****************El concepto de Batch Input [ 1º de 8 ] El concepto de Batch Input Definicion de Batch Input. Carga inicial de datos: Dar de alta toda la info necesaria para que pueda funcionar una aplicación. Esto se hace al instalar la aplicación. Batch Input: Técnica automática mediante la cual podremos dar de alta, modificar o borrar grandes cantidades de datos en el sistema utilizando las validaciones de las transacciones. Generalmente la carga inicial de datos se realiza mediante un archivo. - Técnicas de Batch Input Técnicas para realizar un batch input: CALL TRANSACTION: Se realiza de forma Online, ejecuta las actualizaciones en el momento en que se ejecuta el programa Batch Input. Se...

Acceder a esta publicación

Creado y Compartido por: Jose Angel Valles Bustos

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Mediante la tecnica batch input podemos dar de lata, modificar, borrar grandes cantidades de datos en el sistema de forma automatica Existen dos tecnicas de batch input: *CALL TRANSACTION *JUEGO DE DATOS

Acceder a esta publicación

Creado y Compartido por: Melissa Rodriguez Dominguez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

1| QUE ES UN BATCH INPUT BATCH INPUT TECNICA AUTOMATICA MEDIANTE LA CUAL PODREMOS REALIZAR LA CARGA MASIVA DE DATOS EN EL SISTEMA UTILIZANDO LAS VALIDACIONES DE LAS TRANSACCIONES 2| TECNICAS DE BATCH INPUT *EXISTEN DOS TECNICAS 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. *JUEGO DE DATOS SE REALIZA DE FORMA BATCH PARA SU POSTERIOR EJECUCION MEDIANTE LA TRANSACCION SM35. 3|PASOS PARA LA CREACION DE UN BATCH INPUT CALL TRANSACCTION PASO 1 DECLARACION DE DATOS PROPIOS DEL BATCH INPUT PASO 2 LECTURA DE DATOS DE ARCHIVO DE ENTRADA PASO 3 CARGA DE LA TABLA BDCDATA...

Acceder a esta publicación

Creado y Compartido por: Luis Eugenio Leyva Orozco

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Concepto de 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. Carga inicial de datos:Proceso que consiste en el ingreso de los datos necesarios para el funcionamiento de una aplicación en un ambiente del sistema. Open SQL: Lenguaje estructurado de consulta. Es un lenguaje declarativo de acceso a bases de datos relacionales que permiten diversos tipos de operaciones sobre las mismas. Generalmente, la carga inicial de datos se realizará levantando los datos de un archivo. Archivos externos ---> Programa Batch input ---> SAP. Técnicas de batch input: Existen 2 técnicas para realizar...

Acceder a esta publicación

Creado y Compartido por: Rafael Razo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Unidad 7: Batch input vs. BAPIS y Temas Avanzados, Lección 1: El concepto de Batch Input. 1.- Que es un Batch Input. Es una técnica que permite automatizar la carga de datos en el sistema de forma masiva, respetando las validaciones de las transacciones a las que emula. Los datos a cargar suelen tenerse en un archivo. 2.- Técnicas de Batch Input. Existen dos técnicas para implementar un Batch Input: Call Transaction. Se ejecuta Online y por tanto las actualizaciones se realizan en el momento en que se ejecuta el Batch Input. Juego de datos. Se ejecuta en fondo mediante la grabación de un juego de datos que queda almacenado hasta su ejecución. La grabación del juego de datos se realiza...

Acceder a esta publicación

Creado y Compartido por: Francisco Compte Sanchez / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!