✒️ABAP / El Batch Input utilizando el Juego de datos Por Juan Romero
ABAP El Batch Input utilizando el Juego de datos

Batch input utilizando el de juegos de datos
- Crear un batch input utilizando la técnica de juego de datos como objetivo para la carga inicial de una tabla base de datos (Ejm. z_tabla_usuarios).
- Los registros para cargar deben cumplir con la estructura de dicha tabla y se generarán a partir de un archivo de texto.
- Antes del proceso, recomendaron borrar el contenido previo de la tabla para evitar duplicados.
Se detallaron los pasos para realizar el batch input:
- Declarar los tipos de datos y estructuras necesarias.
- Leer los datos de entrada mediante el método GUI_UPLOAD de la clase CL_GUI_FRONTEND_SERVICES.
- Abrir la sesión del juego de datos con BDC_OPEN_GROUP, indicando mandante, grupo y usuario.
- Inicializar y llenar la tabla interna BDCDATA.
- Insertar el juego de datos utilizando el módulo DDC_INSERT.
- Cerrar la sesión con BDC_CLOSE_GROUP.
- Ejecutar el programa para generar y lanzar el juego de datos.
- Después de la ejecución, se verifica el resultado en la transacción estándar SM35, marcando la opción "Invisible" antes de ejecutar para que sea en segundo plano y los datos se actualicen.
- Se aconsejó consultar en caso de duda al realizar la práctica.
Ejecución automática del juego de datos mediante el programa RSBDCBTC
· Se mencionó la posibilidad de ejecutar el juego de datos de manera online mediante el programa estándar RSBDCBTC.
· Para ello, se debe:
- Crear un job con el módulo de funciones Job Open.
- Ejecutar (submit) el programa estándar RSBDCBTC.
- Cerrar el job con Job Close.
· Al revisar en SM35, el juego de datos habrá sido procesado automáticamente, sin necesidad de ejecución manual.
Comparación entre Call Transaction y Juego de Datos
- Call transaction realiza el procesamiento de forma síncrona (online), mientras que juego de datos lo hace en modo asíncrono (en segundo plano).
- Call transaction transfiere datos únicamente a una transacción por vez, en tanto que juego de datos puede transferir información a múltiples transacciones.
- Con call transaction no se generan bloqueos (locks), mientras que juego de datos sí los genera por cada sesión.
Proceso del Batch Input por Juego de Datos
- El batch input por juego de datos permite ejecutar procesos mayormente en segundo plano, aunque también pueden ejecutarse online si se fuerza.
- La técnica requiere un paso manual para ejecutar la grabación creada por el batch input.
- El proceso incluye: abrir el juego de datos mediante el módulo BDC_OPEN_GROUP, cargar la tabla BS Data, realizar el insert de datos usando el módulo respectivo y cerrar el grupo con la función BDC_CLOSE_GROUP.
- Al ejecutar el batch input por juego de datos, se genera una grabación supervisable desde la transacción SM35.
Uso Práctico y Verificación
- Se demostró el funcionamiento del batch input por juego de datos a través de la carga de un archivo de entrada y la ejecución automática para generar la grabación.
- La grabación puede verse en SM35 con estado "nuevo" y debe procesarse manualmente.
- Una vez procesado, cambia a estado "procesado" (con tilde verde si fue exitoso); si falla pasa a "erróneo".
- Al verificar en la transacción S16, se confirmó que los 3 registros del archivo ejemplo se cargaron más correctamente en la tabla objetivo.
Sugerencias.
· Borrar previamente los datos en la tabla z_tabla_usuarios antes de cargar nuevos registros.
· Repasar y familiarizarse con el proceso de generación y ejecución de juegos de datos en SAP.
· Practicar el manejo de las transacciones SM35 y S16 para verificar resultados de batch input.
· Explorar las particularidades de locks generados por juegos de datos para evitar conflictos en ambientes multiusuario.
 
 
 
Sobre el autor
Publicación académica de Juan Ignacio Romero, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.
Juan Ignacio Romero
Profesión: Ing. Sistemas Computacionales - Mexico - Legajo: LJ26F
✒️Autor de: 138 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Juan Romero






Disponibilidad Laboral: FullTime


















