✒️ABAP / La lógica de procesamiento en el PBO Por Oscar Perez

Selector Alummnos / Empresas

ABAP La lógica de procesamiento en el PBO

ABAP La lógica de procesamiento en el PBO

Uniudad-2-Lección-4: Lógica de procesamiento en PBO

1) Creación de Módulos

En el flujo de la lógica de una dynpro utilizamos módulos para realizar el procesamiento. De lo anterior proviene el nombre de Module Pool.

Para llamar un módulo se utiliza la sentencia MODULE seguida del nombre del módulo que se desea llamar.

Si seleccionamos un módulo haciéndole doble-click, el sistema creara las instrucciones MODULE – ENDMODULE en el lugar donde le indiquemos.

Si creamos un módulo en el PBO, el código empezará con la sentencia MODULE OUTPUT.

SI lo hacemos en el PAI, las sentencia empezará con la sentencia MODULE INPUT.

2) Código ABAP en el PBO de una dynpro

Utilizaremos el evento PBO para seleccionar todos los datos y realizar las configuraciones que deseemos tomen efecto al momento en que se visualice la pantalla. Ejemplo de estas configuraciones pueden ser:

· Setear el Status GUI y los títulos de la dynpro.

· Modificar los atributos de los campos de la dynpro.

· Inicializar o cargar campos de la pantalla con determinados valores.

A continuación veremos en detalle cada una de las acciones mencionadas.

3) Setear el Status GUI y los títulos

En el PBO es donde definiremos cual es el Status GUI y los títulos que se usarán en la dynpro. Para ello, dentro de la dynpro 0100 del programa ZPRUEBA_DIALOGO_FD38F_2 crearemos el módulo STATUS_0100 (la sentencia MODULE status_0100 ya viene comentada cuando creamos la dynpro).

Quitamos el comentario (*), hacemos doble-click en la sentencia y el sistema nos mostrará una pantalla preguntándonos si deseamos crear el módulo.

Contestamos que Sí y luego veremos la ventana donde elegiremos crear un include para almacenar el código PBO.

Tip: Tanto para los PBO como los PAI es recomendable crear un include para almacenar todos los módulos y subrutinas utilizadas para el PBO.

A continuación veremos el módulo con código comentado.

La sentencia SET PF-STATUS se utiliza para Setear el Status GUI y la sentencia SET TITLEBAR para Setear el título correspondiente a la dynpro 0100.

Nota (audio tip): Podemos armar un título usando variables. Estas pueden ser seteadas usando la sentencia SET TITLEBAR WITH. Se pueden usar hasta 9 variables en un título. Estas son sustituidas en el título de acuerdo a su numeración, o de no haberla, de izquierda a derecha, como si se tratara de un pase de parámetros a una subrutina. En tiempo de ejecución, el titulo se guardara en la variable del sistema SY-TITLE.

En ciertas ocasiones al momento de Setear un Status GUI no tiene sentido mostrar todos los botones del mismo.

Nota Recordatoria: Para utilizar las estructuras SLIS tenemos que agregar el TYPE-POOLS SLIS.

4) Modificación de los atributos de los campos de la pantalla

Los elementos que componen a una dynpro están almacenados en la estructura SCREEN. Esta es una palabra reservada de ABAP.

La estructura SCREEN es inicializada con los campos definidos en el Screen Painter, con sus atributos, cada vez que el módulo PBO es ejecutado.

Activamos o desactivamos los atributos de los campos de la estructura asignando 0 o 1. Para almacenar los valores asignados utilizamos la sentencia MODIFY SCREEN.

Si queremos hacer que un campo sea invisible, podemos utilizar el código siguiente:

LOOP AT SCREEN.

IF screen-name = ‘WA_SCREEN_0100-DNI’.

screen-invisible = 1.

MODIFY-SCREEN.

ENDIF.

ENDLOOP.

OJO: Para que el campo sea visible, entonces INVISIBLE = 0.

Si queremos hacer que un campo sea obligatorio utilizamos el código:
LOOP AT SCREEN.

IF screen-name = ‘WA_SCREEN_0100-DNI’.

screen-required = 1.

MODIFY-SCREEN.

ENDIF.

ENDLOOP.

Si queremos hacer que un campo sea obligatorio utilizamos el código:
LOOP AT SCREEN.

IF screen-name = ‘WA_SCREEN_0100-DNI’.

screen-input = 0.

MODIFY-SCREEN.

ENDIF.

ENDLOOP.

Nota (Audio Tip): Si asignamos un uno al campo de la pantalla SCREEN-INTENSIFIED los contenidos de los campos de entrada de la pantalla se cambiarán de negro a rojo. El contenido de los campos de salida se cambiará de negro a azul. Mediante el atributo SCREEN-LENGHT podremos configurar la longitud de un campo de la pantalla con un valor menor a la longitud de salida del campo especificada de forma estática. Esto funciona para los campos de entrada-salida y solo salida. No se puede acortar otros elementos de la pantalla o alargar los elementos de la misma.

5) Cargar campos de una dynpro.

Para cargar un campo, una estructura o una tabla interna de datos y luego mostrar dichos datos en una dynpro, simplemente tendremos que asignar los datos a los campos de la dynpro en el PBO para que luego los mismos se vean reflejados en la pantalla.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Oscar Perez, en su ámbito de estudios para el Curso SAP ABAP Avanzado.

SAP Master

Oscar Perez

Profesión: Ingeniero de Sistemas. Consultor y Desarrollador en Peoplesoft - Canada - Legajo: FD38F

✒️Autor de: 105 Publicaciones Académicas

🎓Cursando Actualmente: Master ABAP Orientado a Objetos

🎓Egresado de los módulos:

Certificación Académica de Oscar Perez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "La lógica de procesamiento en el PBO" de la mano de nuestros alumnos.

SAP Expert


1. Concepto Fundamental del PBO El PBO es el evento que se dispara antes de que una pantalla (dynpro) sea visualizada por el usuario. Su propósito principal es preparar el entorno de la interfaz, seleccionando los datos necesarios y realizando las configuraciones que deben surtir efecto inmediato al mostrarse la pantalla. En la lógica de flujo de la dynpro, los módulos de este evento se definen bajo la sección PROCESS BEFORE OUTPUT. 2. Acciones Principales en el PBO De acuerdo con las mejores prácticas y la arquitectura estándar, en este evento realizamos tres tipos de acciones esenciales: • Configuración de la interfaz (Status GUI y Títulos): Se define qué menús,...

Acceder a esta publicación

Creado y Compartido por: Gabriel José Luces González

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

SAP Master


La logica de procesamiento en el PBO Creación y Uso de Módulos en Programas de Diálogo Los programas de diálogo utilizan módulos para realizar el procesamiento, de ahí el término "modulepool". Al crear una nueva Dympro, se visualizan eventos PBO y PAI con líneas comentadas para módulos que deben ser descomentadas y luego creadas. Los módulos se declaran con la palabra reservada "module" en ABAP y se llaman mediante la sentencia module seguida del nombre. Al crear un módulo desde la interfaz, el sistema pregunta dónde ubicarlo: en un include nuevo, existente o en el programa principal....

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

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

SAP Master

Introducción El PBO (Process Before Output) es un evento clave en programas de diálogo (Module Pool) que se ejecuta antes de mostrar una dynpro. Se utiliza para configurar el estado inicial de la pantalla, como asignar títulos, modificar atributos de campos y cargar datos. 1. Creación de Módulos en PBO y PAI Estructura de módulos: PBO: Los módulos se definen con MODULE <nombre> OUTPUT. PAI: Los módulos se definen con MODULE <nombre> INPUT. Sintaxis: Recomendaciones: Usar includes separados para organizar módulos de PBO y PAI. Limitar la longitud del nombre del módulo a 30 caracteres. 2....

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

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

SAP Expert



La lógica de procesamiento en el PBO en SAP En SAP, la lógica PBO (Process Before Output) forma parte del ciclo de eventos de una dynpro (pantalla dinámica), particularmente en módulos de diálogo ABAP. El propósito principal del PBO es preparar la pantalla antes de que se muestre al usuario. Esta preparación puede incluir la asignación de valores a campos, control de elementos de interfaz (ocultar, activar, desactivar), y configuración de estructuras internas, variables o controles de navegación. Se ejecuta automáticamente cada vez que se llama a una dynpro, ya sea por navegación, por presionar una tecla de función o como resultado de lógica de...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

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

El evento PBO (Process Before Output) es fundamental en la programación de diálogo ABAP, ya que se encarga de preparar y configurar la pantalla antes de que sea visualizada por el usuario. En esta lección se aprende todo lo necesario sobre la lógica de procesamiento en el PBO de un programa de diálogo. • La creación de módulos En ABAP, se utilizan módulos para estructurar el procesamiento de la lógica de una dynpro, por lo que los programas de diálogo también se conocen como Module Pools. · â—¦Declaración de módulos: Se utiliza la sentencia MODULE seguida del nombre del módulo. · â—¦Módulos PBO: Los módulos...

Acceder a esta publicación

Creado y Compartido por: Roberto Fluder Ahumada

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

SAP Expert


Podemos armar un titulo utilizando variables estas pueden ser especificadas mediante la sentencia SET TITLEBAR GUI podemos usar hasta 9 variables en un titulo estas son sustituidas en el titulo de acuerdo con su numeracion o de no haberla de izquierda a derecha como si se tratara de un paso de parametros a una subrutina en tiempo de ejecucion el titulo del menu se guardara en la variable del sistema Set title. Si asignamos un 1 al campo de la pantalla SCREEN INTENSIFY los contenidos de los campos de entrada de la pantalla se cambiaran de negro a rojo el contenido de los campos de salida se cambiara de negro a azul mediante el atributo SCREEN LEN podremos configurar la longitud de un campo de la pantalla con un valor menor a la longitud de salida...

Acceder a esta publicación

Creado y Compartido por: Jose Medina / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Senior

La creación de los módulos. Cuando creamos una dynpro nueva, dentro de la solapa Lógica de procesamiento, Vamos a visualizar los eventos PBO y PAI y dentro de cada uno de ellos, vamos comentada una línea de código en donde se declara un MODULE. Lo que primero vamos hacer es descomentar ambos MODULE y luego los vamos a crear. Para llamar a un módulo utilizamos la sentencia MODULE seguida del nombre del módulo. Si hacemos doble clic en el MODULE status_0100 entonces el sistema identifica que este módulo no existe y nos pregunta si deseamos crearlo. Previo a crear el MODULO, el sistema nos da a elegir en donde deseamos crear el módulo. Podemos hacerlo dentro de un nuevo include, en...

Acceder a esta publicación

Creado y Compartido por: Javier Miguel Angel Barcelo / Disponibilidad Laboral: PartTime

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

SAP Master

LA CREACIÓN DE MODULOS. Cuando creamos una dynpro nueva, dentro de la solapa Lógica de procesamiento, vamos a visualizar los eventos PBO y PAI y dentro de cada uno de ellos, vemos comentada una linea de codigo en dónde se declara un MODULE. Lo que primero vamos a hacer es descomentar ambos MODULE y luego los vamos a crear. Para llamar a un modulo utilizaremos la sentencia MODULE seguida del nombre del módulo. Hacemos clic sobre el MODULE y el sistema indentificara que el módulo no existe y nos preguntara si deseamos crearlo. A continuación, se crea el módulo en el PBO y vamos a notar en su definición que el mismo se llama MODULE status_0100 OUTPUT. Todo los módulos que se crean...

Acceder a esta publicación

Creado y Compartido por: Gerardo Jose Campos Tovar / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


Processing Logic in the PBO Module Creation In the flow of logic within a Dynpro, we use modules to perform processing tasks. This is why dialogue programs are referred to as MODULE POOL programs. To call a module, we use the "MODULE" statement followed by the module name. MODULE STATUS_0100. If you double-click on a module, the system creates the "MODULE ENDMODULE" statements where indicated. When creating a module in the PBO, its code will start with the statement "MODULE OUT". MODULE STATUS_0100 OUTPUT. * Logic ENDMODULE. ABAP Code in the PBO of a Dynpro We utilize the PBO event to select all data and configure what should take effect when the screen is displayed. This includes actions like setting...

Acceder a esta publicación

Creado y Compartido por: Jaime Eduardo Gomez Arango / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


La lógica de procesamiento en el PBO 1 - La creacion de modulos. - En la solapa Logica de procesamiento, se visualiza los eventos PBO y PAI. - descomentar MODULE. - asignale al module un nombre status_0100 por ejemplo (30 caracteres max). - doble clic sobre el nombre del module, para crear el objeto. - seleccionar el lugar en donde crearlo (en nuevo include, en el programa de control, o en un include existente) Es recomendable crear un include para todos los modulos y subrutinas que se va a utilizar en la logica de procesamiento de un PBO y PAI. 2 - El codigo abap en PBO de una dynpro. Se utiliza el evento PBo para selecionar los datos y realizar las configuraciones que necesitamos que se tomen al momento en que se...

Acceder a esta publicación

Creado y Compartido por: Pablo Adrian Oggero

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.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!