PROMO SEPTIEMBRE en CVOSOFT United States Of America: 💎Calidad, 🔥Bonificaciones, 🥶Precios Congelados y MÁS!

 X 

✒️ABAP La lógica de procesamiento en el PBO

ABAP La lógica de procesamiento en el PBO

ABAP La lógica de procesamiento en el PBO

La lógica de procesamiento en el PBO

La creación de módulos

En el flujo de la lógica de una dynpro usamos módulos para realizar el procesamiento. De aquí viene el hecho que a os programas de diálogo se los denomina Module Pool.

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 línea de código en donde se declara un MODULE.

Lo que primero vamos a hacer es descomentar ambos MODULE y luego los vamos a crear. Tal como vemos en la siguiente imagen, la pabla MODULE aparece en azul, lo que nos indica que es una palabra reservada de APAB, que se usa justamente para declarar los módulos. Para llamar a un módulo usaremos la sentencia MODULE seguida del nombre del módulo tal como vemos a continuación:

Si hacemos doble clic sobre el MODULE status_0100 entonces el sistema identifica que este módulo no existe y nos pregunta si deseamos crearlo tal como vemos a continuación:

Previo a crear el MODULE, el sistema nos da a elegir en donde deseamos crear el módulo. Podemos hacerlo dentro de un nuevo include, en el programa de control o en un include ya existente. Como este módulo se va a ejecutar dentro del PBO entonces corresponde crearlo dentro del include que usaremos para las declaraciones PBO.

La longitud máxima permitida para el nombre de un MODULE es de 30 caracteres.

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. Es decir todos los módulos que se creen dentro del PBO de una dynpro van a tener la palabra OUTPUT a la derecha del nombre del módulo.

Es ampliamente recomendable crear un include para almacenar todos los módulos y subrutinas que usaremos en la lógica de procesamiento del PBO.

Este mismo razonamiento aplica para el PAI y todas las declaraciones que usemos en un programa de diálogo.

Mientras que si creamos un módulo del PAI, por ejemplo MODULE user_command_0100 que ya viene declarado por defecto en la dynpro.

Y elegimos crearlo dentro del include correspondiente al PAI.

Entonces vamos a notar en su definición que el mismo se llama MODULE user_command_0100 INPUT. Es ecir todos los módulos que se creen dentro del PAI de una dynpro van a usar la palabra INPUT a la derecha del nombre del módulo.

La sentencia MODULE finaliza con la sentencia ENDMODULE.

El código ABAP en el PBO de una dynpro

Utilizamos el evento PBO para seleccionar todos los datos y realizar las configuraciones que deseamos que tomen efecto al momento en que se visualice la pantalla. Esto puede incluir entre otras cuestiones cualquiera de ls siguientes acciones:

Setear o configurar 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, vemos en detalle cada una de las 3 acciones mencionadas.

El seteo del Status GUI y de los títulos

En el PBO es donde definiremos cual es el Status GUI y los títulos que se usaran en la dynpro.

Para ello, dentro del PBO de la dynpro 0100 de nuestro programa ZPRUEBA_DIALOGO_DV67X crearemos el módulo STATUS_0100 tal como vimos anteriormente. Al hacerlo vemos que el MODULE tiene comentada las siguientes 2 líneas de código.

Utilizaremos la sentencia SET PF-STATUS para setear o configurar el Status GUI que se utilizará en la dynpro y la sentencia SET TITLEBAR para setear o configurar el título correspondiente a la dynpro 0100 tal como vemos a continuación.

Si finalmente ejecutamos la transacción ZACT_USU asociada al programa de diálogo ZPRUEBA_DIALOGO_DV67X entonces veremos en pantalla la dynpro 0100 que es la primera del programa de diálogo.

Ahora bien en ciertas ocasiones, al momento de setear o configurar un Status GUI podriamos no querer mostrar todos los botones del mismo. Por ejemplo, en el Status GUI 0400 que vemos a continuación, existen los botones BOTON1, BOTON2 y BOTON3 tal como vemos.

Si solo quisiéramos mostrar el BOTON1, tendríamos que agregar los códigos de función de los botones que no queremos mostrar a una tabla interna y luego al momento de ejecutar SET PF-STATUS incluir esta tabla interna de la siguiente manera:

La declaración de la tabla interna TI_FCODE y de la estructura WA_FCODE que se utiliza para recorrerla es la siguiente:

La opción de excluir ciertos botones de un STATUS GUI es sumamente útil para los casos en donde solo tenemos un STATUS GUI con todos los botones que se utilizan en el programa de diálogo y deseamos reutilizar ese mismo STATUS GUI en todas las dynpros del programa.

Las modificaciones de los atributos de los campos de la pantalla

Los elementos que componen a una dynpro están almacenados e na estructura SCREEN. La palabra SCREEN es una palabra reservada en ABAP.

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

La estructura de SCREEN es la siguiente:

Activaremos o desactivaremos los atributos de los campos de la estructura SCREEN asignando valores 0 o 1. Para almacenar los cambios realizados a los atributos utilizaremos la sentencia MODIFY SCREEN.

Veamos algunos ejemplos.

Por ejemplo, si tenemos una dynpro con el campo entrada/salida WA_SCREEN_0100-DNI como el siguiente:

Y queremos hacer no visible al campo entonces en el PBO creamos el MODULE modificar_atributos_0100.

Y dentro del MODULE modificar_atributos_0100 escribiremos el siguiente código:

Vale mencionar que para que el campo WA_SCREEN-DNI sea visible entonces el atributo INVISIBLE debe ser cero.

Si deseamos no permitir la entrada de datos en el campo WA_SCREEN_0100-DNI, es decir en un campo de salida, entonces debemos escribir el siguiente código:

Vale mencionar que para que el campo sea de entrada/salida entonces el atributo INPUT debe ser 1.

Si quisiéramos que el campo WA_SCREEN_0100-DNI sea obligatorio entonces escribiríamos el siguiente código:

¿Como se completan los campos de una dynpro?

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

Veamos a continuación un ejemplo muy simple con el campo WA_SCREEN_0100-DNI. Para ello, en el PBO de la dynpro vamos a declarar el MODULE completar_campos_0100 tal como vemos en la siguiente imagen:

Y dentro del MODULE completar_campos_0100 escribimos el siguiente código.


 

 

 


Sobre el autor

Publicación académica de Lisimaco Prieto Herrera, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Lisimaco Prieto Herrera

Profesión: Ingeniero de Sistemas - Colombia - Legajo: DV67X

✒️Autor de: 96 Publicaciones Académicas

🎓Egresado de los módulos:

Presentación:

Ingeniero de sistemas con amplia experiencia en el desarrollo de software para el sistema sap r/3 en lenguaje de programaci?n abap.

Certificación Académica de Lisimaco Prieto

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

Cada dynpro tiene una gica de procesamiento que está especificada en módulos. Con la sentencia MODULE seguido del nombre del módulo podemos llamar a los módulos. PBO (Process before output) evento que se ejecuta antes de la visualización en pantalla de una dynpro. Es recomendable crear un Include para almacenar todos los módulos y subrutinas utilizados en la lógica de procesamiento del PBO. La sentencia SET PF-STATUS se utiliza para la declaración de un STATUS GUI dentro de un programa. La sentencia SET TITLEBAR se utiliza para setear el título de un programa. La palabra reservada SCREEN representa a la tabla interna que almacena los elementos que componen a una dynpro...

Acceder a esta publicación

Creado y Compartido por: M?nica Robles

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

SAP Master

gica de procesamiento en PBO 1. Creación de Módulos En la flujo de la lógica de una dynpro utilizamos módulos para realizar el procesamiento. De aquí viene el hecho que a los programas de diálogo se los denomine Module Pool. Para llamar a un módulo utilizaremos la sentencia MODULE seguida del nombre del módulo tal como vemos a continuacion: Module cargar_campos_0100. Si creamos un módulo en el PBO, el código del mismo empezará con la sentencia MODULE OUTPUT. Si creamos un módulo en el PAI, el código del mismo comenzará con la sentencia MODULE INPUT. 2. Codigos ABAP en el...

Acceder a esta publicación

Creado y Compartido por: Edward Henry Rosario Piezal / Disponibilidad Laboral: FullTime

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

SAP Master


MODULE POOL Es un tipo de programa ABAP que está formado por una serie de dynpros o pantallas por las que el usuario interactúa mientras navega por la aplicación. Cada dynpro tiene una gica de procesamiento que está especificada en módulos. Dentro de cada dynpro se define lo que se conoce con el nombre de PBO (Process Before Output) es decir todo lo que sucede antes que se muestre la información en la pantalla y el PAI (Process After Input) es decir todo lo que sucede luego que se realiza alguna cción en la pantalla. Lógica de Procesamiento en PBO Un programa de diálogo está compuesto por dynpros. La lógica de procesamiento de cada dynpro cumple con una...

Acceder a esta publicación

Creado y Compartido por: Cesar Armando Gutierrez Gomez / Disponibilidad Laboral: FullTime

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

SAP Expert


Creación de Módulos: En el flujo de gica de una dynpro se utilizas módulos para realizar el procesamiento. Por eso a los programas de diálogos se los denomina Module Pool. Se crea usando la sentencia MODULE Nombre programa PBO(Process Before Output): Se usa el evento PBO para seleccionar todos los datos y realizar las configuraciones que queremos que tomen efecto al momento en que se visualice la pantalla como. Setear el Status GUI y los titulos de dynpro. Modificar los atributos de los campos de la dynpro. Inicializar o cargar campos de la pantalla con valores determinados. PAI(Process After Input): Nota: Se recomienda crear include para almacenar todos los módulos y subrutinas que...

Acceder a esta publicación

Creado y Compartido por: Dairy Alejandra Torrenegra Cera

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

SAP Senior

En la logica de una dynpro se utilizan modulos para realizar el proceso completo. Es por esto que a los programas de dialogo se les llama module pool. Para llamar un modulo se utiliza la sentencia MODULE seguida del nombre del modulo. Es la palabra reservada del sistema que se utiliza para la declaración de módulos en los programas de diálogo de ABAP. Los MODULE se crean en un programa de diálogo dentro de la Lógica de procesamiento de cada una de las pantallas o dynpros que conforman al programa de diálogo, específicamente tanto dentro del PBO (Procesamiento antes de la salida) como del PAI (Procesamiento después de la entrada). Se utiliza el evento PBO para seleccionar todos los datos...

Acceder a esta publicación

Creado y Compartido por: Andres Gomez / Disponibilidad Laboral: FullTime

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

SAP Master


GICA DE PROCESAMIENTO PBO CREACIÓN DE MÓDULOS En el flujo de la lógica de una dynpro usaremos módulos para realizar el procesamiento. Llamada a un módulo -> MODULE NombreModulo. (Al hacer doble click sobre el nombre del módulo, lo creamemos). Creándolo en el PBO el código comenzará MODULE NombreModulo OUTPUT., si lo creamos en el PAI comenzará MODULE NombreModulo INPUT. CÓDIGO ABAP EN EL PBO DE UNA DYNPRO El evento PBO lo usamos para seleccionar todos los datos y realizar las configuraciones que queremos que tomen efecto al momento en que se visualice la pantalla: Setear el Status GUI y los títulos de la dynpro. Modificar atributos...

Acceder a esta publicación

Creado y Compartido por: Ignacio Mart?n Bolumar

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

SAP Master

Unidad 2: Programación de Diálogo. Lección 4: gica de procesamiento PBO. 1.- Creación de Módulos. Los módulos son los elementos de la lógica de una dynpro que realizan el procesamiento. La llamada a un módulo se realiza mediante la sentencia MODULE nombre_modulo. Si marcamos con doble click un módulo inexistente, se nos preguntara si lo queremos crear y donde. El código de un módulo va entre las instrucciones MODULE y ENDMODULE. Si el módulo se crea en el PBO la sentencia inicial sera MODULE nombre módulo OUTPUT. Si lo creamos en el PAI sera MODULE nombre módulo INPUT. 2.- Código ABAP en el PBO de una dynpro. El evento PBO sirve...

Acceder a esta publicación

Creado y Compartido por: Francisco Compte Sanchez / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Senior

MODULE POOL.- En la creación de la gica de una dynpro utilizaremos módulos para realizar el procesamiento. De aquí el hecho de que se le denomine con el nombre Module Pool a los programas. Dentro de cada dynpro se define lo que se conoce con el nombre PBO es decir todo lo que suceda antes que se muestre la información en la pantalla y el PAI es decir todo lo que suceda después que se realiza una acción en la pantalla. Para la Creación de un Module pool se llama a un módulo con la sentencia MODULE seguida del módulo, ejemplo, >MODULE cargar_campos_0100. Si seleccionamos un Módulo con doble clic, el sistema creará las instrucciones MODULE...

Acceder a esta publicación

Creado y Compartido por: Yair Miguel Ramirez Martinez / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


Creación de módulos: En el flujo de la gica de una dynpro utilizamos módulos para realizar el procesamiento, de ahí viene el hecho que a los programas de diálogo se los denomine MODULE POOL. Si creamos un módulo en el PBO, el código del mismo empezará con la sentencia MODULE OUTPUT. Si creamos un módulo en el PAI, el código del mismo empezará con la sentencia MODULE INPUT. Código ABAP en el PBO de una dynpro Usaremos el evento PBO para seleccionar todos los datos y realizar las configuraciones que queremos que tomen efecto al momento de visualizar la pantalla. Esto puede incluir entre otras cosas cualquiera de las siguientes acciones: 1. Setear...

Acceder a esta publicación

Creado y Compartido por: Jos? Luis Zevallos Mamani

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

SAP Expert


La 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 80.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!