SAP-ABAP admite dos tipos de programas: programas de informes y programas de diálogo. Los programas de informes se utilizan cuando es necesario mostrar grandes cantidades de datos
En este tutorial aprenderá:
- Pantalla de selección
- Eventos en un programa de informes ABAP
- Dar formato al informe
- Programación de informes interactivos
- Bases de datos lógicas
Propósito / uso de los programas de informes
- Se utilizan cuando los datos de una serie de tablas deben seleccionarse y procesarse antes de presentarlos.
- Se utiliza cuando los informes exigen un formato especial
- Se utiliza cuando el informe debe descargarse de SAP a una hoja de Excel para distribuirlo.
- Se utiliza cuando el informe debe enviarse por correo a una persona en particular.
Puntos importantes a tener en cuenta sobre el programa de informes
- Los programas de informes son siempre programas ejecutables. El tipo de programa es siempre 1.
- Cada programa de informe corresponde a un tipo de aplicación particular, es decir, con Ventas y distribución, FI - CO, etc. También puede ser de aplicación cruzada, es decir, tipo '*'.
- La programación de informes es una programación impulsada por eventos.
- La primera línea de un programa de informes es siempre Informe
. - Para suprimir el encabezado de la lista o el nombre del programa, se utiliza la adición Sin encabezado de página estándar .
- El tamaño de línea para un informe en particular se puede establecer mediante la adición de tamaño de línea
. - El recuento de líneas para una página en particular se puede establecer mediante la adición de recuento de líneas n (n1) . N es el número de líneas de la página y N1 es el número de líneas reservadas para el pie de página.
- Para mostrar cualquier información o mensaje de error, agregamos una clase de mensaje al programa usando la adición: Id. De mensaje
. Las clases de mensajes se mantienen en SE91.
Informesin encabezado de página estándartamaño de línea recuento de líneas id-mensaje .
Pantalla de selección
La "pantalla de selección" es la pantalla en la que se especifican los valores de entrada para los que debe ejecutarse el programa.
La pantalla de selección normalmente se genera a partir del
- Parámetros
- Seleccione opciones
Sintaxis
Pantalla de selección al comienzo de la pantallainicio de la pantalla de selección del bloque <#> con el título del cuadro …… final de la pantalla de selección del bloque <#>pantalla de selección fin de pantalla
Parámetros Los
parámetros ayudan a realizar una selección dinámica. Solo pueden acomodar un valor para un ciclo de ejecución del programa.
Sintaxis
Definición de parámetros como tipo de datos
Parámetros p_id (30) tipo c.
Definición de parámetros como un campo de tabla.
Parámetro p_id como- .
Los parámetros pueden ser tanto casillas de verificación como botones de radio.
Parámetros p_id como casilla de verificación Parámetros p_id1 grupo de botones de radio.Parámetros p_id2 grupo de botones de radio .
Los parámetros pueden ser listbox.
Parámetro p_id como- como cuadro de lista
Seleccionar opciones
Una opción Seleccionar se usa para ingresar un rango de valores o un conjunto de valores en un programa
Sintaxis
select-options s_vbeln para vbak-vbeln.
También puede definir una opción de selección como una variable
select-options s_vbeln para vbak-vbeln sin intervalos sin extensión
Eventos en un programa de informes ABAP
Los programas de informes ABAP son programas impulsados por eventos . Los diferentes eventos en un programa de informes son:
Carga de programa
- Activa el evento asociado en una sesión interna después de cargar un programa de tipo 1, M, F o S.
- También ejecuta el bloque de procesamiento asociado una vez y solo una vez para cada programa y sesión interna.
- El bloque de procesamiento LOAD-OF-PROGRAM tiene aproximadamente la misma función para un programa ABAP de tipo 1, M, F o S que un constructor para las clases en objetos ABAP.
Inicialización.
- Este evento se ejecuta antes de que se muestre la pantalla de selección.
- Inicialización de todos los valores.
- Puede asignar valores diferentes a los valores predeterminados en la pantalla de selección.
- Puede llenar su pantalla de selección con algunos valores en tiempo de ejecución.
En la pantalla de selección.
- El evento se procesa cuando se ha procesado la pantalla de selección (al final del PAI).
- La validación y las comprobaciones de los valores introducidos se realizan aquí
Inicio de selección.
- Aquí el programa comienza a seleccionar valores de tablas.
Fin de selección.
- Una vez seleccionados todos los datos, este evento escribe los datos en la pantalla.
Eventos interactivos
- Se utiliza para informes interactivos. Se utiliza para crear una lista detallada a partir de una lista básica.
Dar formato al informe
ABAP permite que los informes tengan el formato que el usuario desee. Por ejemplo, las "Líneas alternativas" deben aparecer en diferentes colores y la línea "Totales" debe aparecer en amarillo.
Sintaxis
Formato Color nFormato Color n Intensificado Activado
n puede corresponder a varios números.Tenga en
cuenta que también hay otras adiciones junto con el formato.
FORMATO COLOR APAGADO INTENSIFICADO APAGADO INVERSO APAGADO HOTSPOT APAGADO ENTRADA APAGADO
Programación de informes interactivos
- Con la programación interactiva, los usuarios pueden controlar activamente la recuperación de datos y la visualización de datos.
- Se utiliza para crear una lista detallada a partir de una lista muy básica.
- Los datos detallados se escriben en una lista secundaria.
- La lista secundaria puede superponerse completamente a la primera pantalla o se puede mostrar en una nueva pantalla.
- The secondary lists can be themselves interactive.
- The first list may also call a transaction.
- There are different events associated with interactive programming.
Some commands used for interactive programming
HotspotIf one drags the mouse over the data displayed in the report the cursor changes to a Hand with an Outstretched Index finger. An hotspot can be achieved using the FORMAT statement.
Syntax: Format Hotspot On (Off).
HideThis command helps you to store the field names based on which one will be doing further processing to get a detailed list. It is written directly after the WRITE statement for a field. When a row is selected the values get automatically filled in the variables for further use.
Syntax: Hide.
Logical Databases
- Instead of using "Select" queries you can use logical database to retrieve data for a program.
- Logical databases are created by transaction SE36
- The name of a logical database can be up to 20 characters long. It may begin with a namespace prefix.
- The data is selected by another program and one can access the data using GET
command which places the data in the work area .
Advantages of a logical database over normal Select queries.
- It offers check conditions to see whether the input is correct, complete and plausible
- It contains central authorization checks for database access
- Enhancements such as improvement in performance immediately apply to all reports which use logical database.
Note: Due to the complexities involved, logical databases are not used in most of the cases