Como es el flujo de ejecución de un programa SAP?

Buenas, soy nuevo en desarrollo ABAP, quisiera saber como es el flujo de ejecución de un programa SAP, esto para saber en que orden se van ejecutando las rutinas y tener una mejor optica para los desarrollos que emprenda.
Muchas gracias por sus opiniones.
Saludos.
Santana Quintero

Básicamente el flujo sería:

1. Parámetros de entrada (pantalla de selección). En base a estos parámetros se seleccionarán los datos y/o influirán en el procesamiento de estos.
2. Selección de datos. Accesos a tablas, carga de ficheros, etc. en función de los parámetros de entrada.
3. Procesamiento de datos. Los datos obtenidos del punto anterior se tratan de la manera definida por el cliente o funcional.
4. Salida de datos. Los datos convertidos se usan para almacenarse en otras tablas, para crear documentos (pedido, factura, etc.), para sacar un listado, etc.

Y ya a nivel más técnico existen los siguientes eventos dentro de un programa:
Declaración de variables globales/Pantalla de selección
No es un evento como tal pero lo pongo porque en algún sitio tendrás que declarar los parámetros de la pantalla de selecicón y las variables globales (cuanto menos, mejor).

Load-of-program
Código que se ejecuta cuando se carga el programa.

Initialization
Normalmente se inicializan variables de la pantalla de selección.

At Selection-Screen output
Se usa para validar todos datos de la pantalla de selección.

At Selection-Screen on field
Se usa para validar un solo parámetro de la pantalla de selección.

At Selection-Screen on value request
A veces queremos utilizar una ayuda de búsqueda diferente a la que tenga por defecto un parámetro. O tal vez no tenga una y tengamos que hacerla nosotros.

At Selection-Screen on help request
Lo mismo que el punto anterior pero para mostrar una ayuda diferente o nueva cuando pulsas F1 en un campo de la pantalla de selección.

At Selection-Screen
También usado para validar parámetros de la pantalla de selección.

Start-of-Selection
En este evento se implementa toda la lógica de negocio. Lo que sería la selección de datos y su procesamiento.

End-of-Selection
Se utiliza para indicar que ha finalizado el bloque de “Start-of-selection” cuando se utilizan bases de datos lógicas.

Top-of-Page y End-of-Page
En programas que utilizan WRITEs para mostrar el resultado de la ejecución puede ser interesante mostrar un encabezado o un pié de página.

Un saludo.

10 Me gusta

Buenas.
Excelente respuesta, me ayudará mucho en lo sucesivo.
Muchas gracias.
Saludos

1 me gusta

Suerte y ánimos. Hay mucha documentación sobre programación en ABAP

Gracias @robertu_bcn por tu post, excelente resumen. Saludos.

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.