✒️ABAP La lógica de procesamiento en el PBO
ABAP La lógica de procesamiento en el PBO
CREACIÓN DE MÓDULOS
Dentro de las dynpros (pantallas) se usan módulos para realizar el procesamiento. Es por esto que los programas de diálogo se denominan Module Pool.
Los modulos se llaman de la siguiente manera : MODULE nombre_del_modulo.
Al seleccionar un módulo con doble clic el sistema creará las instrucciones MODULE - ENDMODULE.
Si creamos un MODULO en el PBO(Program Before Output) el programa iniciará con la sentencia MODULE OUTPUT.
Si creamos un MODULO en el PAI(Program After input) el programa iniciará con la sentencia MODULE INPUT.
El evento PBO se usa para seleccionar todos los datos y realizar configuraciones que queremos que tomen efecto al momento en que se visualice la pantalla.
Setear el Status GUI y los titulos de la dynpro
Modificar los atributos de los campos de la dynpro
Inicializar o cargar campos de la pantalla con determinados valores.
Setear el status GUI y de los títulos.
El status GUI y los titulos que se usan dentro de las dynpro se definen en el PBO.
Para esto dentro de la dynpro 0100 del programa que creamos se debe definir el módulo STATUS_0100 así:
PROCESS BEFORE OUTPUT
MODULE status_0100
Cuando se crea una dynpro ya viene creado pero comentado el módulo que se usa para configurar el status y el titulo de la dynpro.
Para crear el módulo damos doble clic sobre el y el sistema propondrá crearlo.
Como recomendacion se debe crear un include para almacenar todos los módulos y subrutinas que vamos a usa en la lógica de procesamiento del PBO y del PAI.
Se verá luego de la creación el código comentado:
**Module STATUS_0100 OUTPUT
module STATUS_0100 output.
*SET PF-STATUS 'xxxxxxxxxxxxx'.
*SET TITLEBAR 'xxx'.
endmodule. "STATUS_0100 OUTPUT
Se utiliza la sentencia SET PF-STATUS para setear el Status GUI y la SET-TITLEBAR para setear el título correspondientes.
Ejemplo:
SET PF-STATUS '0100'.
SET TITLEBAR '0100'.
Se puede armar usando un titulo usando variables con SET TITLEBAR WITH. Se pueden usar hasta 9 variables de un titulo estás son sustituidas en el titulo por su numeracion o de izquierda a derecha. La infor del titulo se almacena en SY-TITLE.
Para ocultar botones del status GUI se hace así:
CLEAR ti_botones.
REFRESH ti_botones.
APPEND 'BOTON2' TO ti_botones.
APPEND 'BOTON3' TO ti_botones.
SET PF-STATUS '0100' EXCLUDING ti_botones.
Para usar las estructuras SLIS tendremos que agregar el TYPE-POOLS SLIS.
MODIFICACION DE LOS ATRIBUTOS DE LOS CAMPOS DE LA PANTALLA.
Los elementos que componen una dynpro están almacenados en la estructura SCREEN --> palabra reservada que represena la tabla interna que almacena los elementos que componen una dynpro.
Para activar o desactivar campos se asignan valores de 0 o 1. Para almacenar los campos se usa la sentencia MODIFY SCREEN.
Ejemplo:
MODULE definir_atributos_0100 OUTPUT.
LOOP AT SCREEN
IF screen-name EQ 'WA_SCREEN_0100-DNI'.
screen-invisible =1.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDMODULE.
Para que el campo sea invisible el valor debe ser 0.
Si no quisieramos permitir entrada de datos en el campo WA_USUARIOS_100-DNI, volverlo un campo de salida se agrega la línea screen-input = 0.
CARGAR CAMPOS DE UNA DYNPRO
Para cargar un campo, estructura o tabla interna con datos y mostrar los valores en una dynpro, se deben asignar los datos de los campos de la siguiente manera:
MODULE cargar_valores_0100 OUTPUT.
wa_screen_0100-dni = 24865898.
ENDMODULE.
 
 
 
Sobre el autor
Publicación académica de Franco Alfieri Maringota Alvarado, en su ámbito de estudios para la Carrera Consultor ABAP.
Franco Alfieri Maringota Alvarado
Peru - Legajo: GF44M
✒️Autor de: 288 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP FI Nivel Inicial
- Carrera Consultor en SAP BI / BW BO Nivel Avanzado
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor en SAP BI / BW BO Nivel Inicial