✒️ABAP / La lógica de procesamiento en el PBO Por Juan Pavicich

Selector Alummnos / Empresas

ABAP La lógica de procesamiento en el PBO

ABAP La lógica de procesamiento en el PBO

1-Creación de módulos

En la lógica de una dynpro utilizamos módulos para realizar este procedimiento por eso viene del Module Pool, para llamar a un módulo utilizaremos la sentencia MODULE seguida del nombre. EJ: MODULE cargar_campos_0100.

Seleccionamos un modulo haciendo doble clic y el sistema creara las instrucciones de MODULE-ENDMODULE en le lugar que le indiquemos. Creamos módulo PBO, el código empezará con la sentencia MODULE OUTPUT.

Si creamos un módulo en el PAI el código del mismo comenzara con la sentencia MÓDULO INPUT.

2-Codigo ABAP en el PBO de una dynpro

En el evento PBO para seleccionar todos los datos y realizar todas las configuraciones que queremos que tomen efecto se visualicen en pantalla, esto puede incluir las diferentes acciones.

  • setear el Status GUI y los títulos de la DYNPRO
  • Modificar los atributos de los campos de la DYNPRO
  • Inicializar o cargar los campos de la pantalla con determinados valores

3-Seteos del Status Fui y de los títulos

En el PBO es donde definiremos cual es el status fui y los títulos en la dynpro.

EJ: dentro del PBO de la dynpro 0100 de nuestro programa ZPRUEBA_DIÁLOGO creamos módulo de status_0100.

Cuando creamos una dynpro ya viene creado el comentado el módulo que se utilizara para configurar el status y el titulo de la dynpro.

Hacemos doble clic en el módulo y el sistema nos creara el PBO, luego de la ventana diálogo donde elegiremos crear un include para almacenar el código de PBO. Es recomendable crear un include para almacenar todos los módulos y subrutinas que utilizaremos en la la lógica del PBO, lo mismo para los PAI y todas las declaraciones de datos que utilicemos en un programa de diálogo.

Luego veremos

modele STATUS_0100 output.

SET PF-STATUS 'xxxxxxxxxxx'.

SET TITLEBAR 'xxx'.

enmodule

La sentencia SET PF_STATUS para setear el Status GUI y la sentencia SET TITLEBAR para sesear el titulo correspondiente a la dynpro 0100.

Podemos armar un titulo utilizando variables estas pueden ser sitiadas con la sentencia SET TITLEBARWID, podemos usar hasta 9 variables en un titulo estas son sustituidas en el titulo de acuerdo con su numeración de no haberla de izquierda a derecha como si fuese un paso de parámetros a una subrutina en tiempo de ejecución el titulo del menú se guardara en la variable del sistema SEE TITLE.

MODULE status_0100 OUTPUT.

SET PF-STATUS '0100'.

SET TITLEBAR '0100'.

ENDMODULE.

En algunos casos mente de estar un STATUS GUI podríamos no querer mostrar todos los botones.

EJ: existen los BOTON1, BOTON2, BOTON3, si solo quisiéramos mostrar el boton1 tendríamos que agregar los códigos de botones que no queremos mostrar a un tabla interna del tipo SLIS_T_EXTAB y luego al momento de ejecutar la sentencia SET PF-STATUS incluir la tabla interna.

CLEAR ti_botones.

REFESH ti_botones.

APPEND 'BOTON2' TO ti_botones.

APPEND 'BOTON3' TO ti_botones.

SET PF-STATUS '0100' EXCLUDING ti_botones.

La estructura SLIS tendremos que agregar el TYPE-POOLS SLIS.

4- Modificación de los atributos de los campos de pantalla

Los elementos de la dynpro que están almacenados en la estructura SCREEN es una palabra reservada de ABAP, esa estructura se iniciativa con los campos definidos en el Screen Painter y con sus atributos cada vez que el módulo PBO es ejecutado.

SCREEN-NAME nombre del campo

SCREEN-GROUP1 grupo de modificación 1

SCREEN-GROUP2 grupo de modificación 2

SCREEN-GROUP3 grupo de modificación 3

SCREEN-GROUP4 grupo de modificación 4

SCREEN-REQUERID campo obligatorio

SCREEN-INPUT campo de entrada

SCREEN-OUTPUT campo de salida

SCREEN-INTENSIFIED campo intensificado

SCREEN-INVISIBLE campo visible o no visible

SCREEN-ACTIVE campo activo

SCREEN-DISPLAY_3D campo en 3D

SCREEN-VALUE_HELP campo con ayuda de búsqueda

SCREEN_RESQUEST campo reservado para uso interno del sistema

si tenemos una dynpro con el campo de entrada/salida WA_SCREEN_0100-DNI y queremos hacer no visible al campo, crearíamos un módulo PBO con el siguiente código

MODULE definir_atributos_0100 OUTPUT.

LOOP AT SCREEN.

IF screen-name EQ 'WA_SCREEN_0100-DNI'

screen-invisible = 1.

ENDIF.

ENDLOOP.

ENDMODULE.

Para que el atributo sea INVISIBLE debe ser = 0, si quisiéramos no permitir la entrada de datos en el campo WA_USUARIOS_100-DNI solo convertirlo en un campo de salida, crearíamos un módulo en el PBO.

MODULE definir_atributos_0100 OUTPUT.

LOOP AT SCREEN.

IF screen-name = 'WA_SCREEN_0100-DNI'.

screen-input = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDMODULE.

En el campo de entrada el atributo INPUT debe ser 1 y si quisiéramos que el campo se a obligatorio WA_USUARIO-DNI creamos un PBO

MODULE definir_atributos_0100 OUTPUT.

LOOP AT SCREEN.

IF screen-name = 'WA_SCREEN_0100-DNI'.

screen-required = 1.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDMODULE.

Definamos 1 en la pantalla SCREEN-INTENSIFIED los contenidos de los campos de entrada de la pantalla se cambiarían de negro a rojo el contenido de los campos de salida , se cambiara de negro a azul. Mediante el atributo SCREEN_LENGHT podremos configurar la longitud de un campo de la pantalla con un valor a la longitud de salida del campo especificado en forma estática esto funcióna para los campos de entrada/salida y solo salida. No se pueden acortar otros elementos de la pantalla o alargar los elementos de la misma.

5- Cargar campos de una dynpro

Para cargar un campo, estructura o tabla interna con los datos y luego mostrarlos en una dynpro solo tendremos que asignar los datos a los campos en el PBO y luego se ven reflejados en la pantalla.

MODULE cargar_valores_0100 OUTPUT.

wa_screen_0100-dni = 27865898.

ENDMODULE.


 

Escanear / Compartir

 

 


Sobre el autor

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

SAP Master

Juan Carlos Pavicich

Profesión: Técnico Informático - Argentina - Legajo: VR91L

✒️Autor de: 116 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Tengo el agrado de dirigirme a ud/s con el objeto de mencionar mi experiencia y conocimientos técnicos necesarios para desarrollar actividades en el rubro de su empresa.

Certificación Académica de Juan Pavicich

✒️+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!