✒️ABAP El Batch Input utilizando Call transaction
ABAP El Batch Input utilizando Call transaction
Batch Input usando Call Transaction
1. Mi Primer Batch Input usando Call Transaction
- Uso de técnica CALL TRANSACTION.
- Crear archivo de texto con registros que cumplan con estructura de tabla donde se van a registrar datos.
- No tener en cuenta campo mandante.
- Como es carga inicial el ejercicio propuesto en lección, previamente se borra contenido de tabla.
Pasos:
- Declaración de datos propios del Batch Input
-> Declaración de tabla interna y estructura de tipo BDCDATA.
-> Declaración de tabla interna y estructura de tipo BDCMSGCOLL (Almacenar mensajes resultantes de la ejecución
de un CALL TRANSACTION - Batch Input).
-> Tabla interna que contendrá datos que se levanten del archivo de entrada y una tabla para mostrar por pantalla
errores entre otras declaraciones.
- Lectura de datos de archivo de entrada
-> Ejecutar método GUI_UPLOAD para levantar archivo de entrada con info para generar el Batch Input.
- Carga de tabla BDCDATA
-> Uso de subrutina BDC_FIELD.
-> Antes, inicializar tabla interna del Batch Input y la de los mensajes.
-> Importante: como es más de un registro a ingresar, es necesario el uso de índices para qué fila de pantalla está
cargando los datos. Se concatena a nombre de campo número de fila que le corresponde en pantalla entre
paréntesis.
- Ejecución de sentencia CALL TRANSACTION
-> USING: Se especifica BDCDATA que se usará.
-> MODE: Determina modo de procesamiento que usará Batch Input.
Modos Posibles:
-> A: Procesamiento con visualización de todas las pantallas. (Default)
-> E: Procesamiento donde se muestran pantallas sólo si ocurre error. Si se alcanza breakpoint => sy-subrc=1001.
sy-msgty = "S", sy-msgid="00", sy-msgno="344", sy-msgv1="SAPMSSY3", sy-msgv2="0131".
-> N: Procesamiento donde no se muestran las pantallas.
-> P: Procesamiento donde no se muestran pantallas y si se alcanza breakpoint, se pasa control al debugger.
Nota: - Es conveniente usar variable para asignar modo de procesamiento a un Batch Input. Se podrá modificar
valor dinámicamente, durante ejecución de programa.
- Util procesar batch Input por medio de ejecución A. en caso de error en datos de registro de datos en
tabla BDCDATA procesamiento se detendrá en pantalla correspondiente al error y se analiza solución.
Posterior a corrección de error, se puede modificar modo de procesamiento a N.
-> UPDATE: Determina modo de actualización de los cambios que producirá Batch Input.
Modos posibles:
-> A: Actualización asincrónica. Se produce de igual forma a la que sucede si se usa sentencia COMMIT WORK.
Valor por default.
-> S: Actualización sincrónica. Se produce de igual forma a la que sucede si se usa sentencia
COMMIT WORK AN WAIT.
-> L: Actualización local.
-> MESSAGES INTO: Todos los mensajes generados durante el procesamiento del Batch Input son guardados en
tabla interna de tipo BDCMSGOLL. Para armar mensajes, se usa función MESSAGE_PREPARE.
- Posterior a finalización de pasos del Batch Input, se ejecuta (ejercicio en modo de procesamiento "A" para ver el
paso a paso de actualizaciones).
- Ingresar a trx SM30 con nombre de tabla >> clic en botón Actualizar (Maintain) >> Entradas Nuevas (New entries).
Esto cargará todos los campos del registro.Posterior a esto, clic en Grabar.
- Salir de trx y se repite secuencia de pasos por cuantos registros de usuarios se ingresen en tabla.
Notas: - Sentencia CALL TRANSACTION es usada en reporte => acceso a trx determinada (datos presionados en
pantalla y agregado de cláusula AND SKIP FIRST SCREEN)
-
 
 
 
Sobre el autor
Publicación académica de Darwin Enrique Terraza Berdugo, en su ámbito de estudios para la Carrera Consultor ABAP.
Darwin Enrique Terraza Berdugo
Colombia - Legajo: MM57E
✒️Autor de: 60 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor Basis NetWeaver Nivel Avanzado
- Carrera Consultor Basis NetWeaver Nivel Inicial
Disponibilidad Laboral: PartTime
Certificación Académica de Darwin Terraza