✒️ABAP / Los reportes interactivos Por Jaime Gomez Arango

Selector Alummnos / Empresas

ABAP Los reportes interactivos

ABAP Los reportes interactivos

Interactive Reports

An Interactive Report in ABAP is a specialized type of report that initially displays a list on the screen with specific information. Upon double-clicking a particular line in the primary list, additional data related to that line is revealed. This process continues through multiple levels within the report.

In contrast to classic reports, which can be executed both online and in batch mode, interactive reports run exclusively online due to their requirement for user interaction.

The key advantage of interactive reports lies in their ability to create a user-interaction report with minimal code, unlike dialog programs that demand more construction time.

Interactive reports exhibit the following characteristics:

  • Data is retrieved and presented on the screen in a primary list.
  • Selections can be made from the primary list, commands can be entered from menus, function keys, or buttons can be executed, and information can be input.
  • Detailed information is displayed in secondary states. Navigation between different states or levels of the interactive report is facilitated using the BACK and EXIT navigation buttons.
  • From a list, there's the possibility to call other transactions or reports.

Events and Variables in an Interactive Report

Upon double-clicking a position in the primary list, the event AT LINE-SELECTION is triggered. At this moment, certain system variables are populated with valuable information:

  • SY-LSIND: Contains the index of the list, i.e., the list level.

DATA: lv_index TYPE I.
lv_index = sy-lsind.
WRITE: / 'Current List Level Index:', lv_index.

  • SY-LISEL: Stores the content of the selected line.

DATA: lv_selected_line TYPE STRING.
lv_selected_line = sy-lisel.
WRITE: / 'Content of Selected Line:', lv_selected_line.

  • SY-LILLI: Holds the number of the selected line in the list.

DATA: lv_line_number TYPE I.
lv_line_number = sy-lilli.
WRITE: / 'Selected Line Number:', lv_line_number.

  • SY-CUROW: Stores the vertical cursor position on the screen.

DATA: lv_cursor_position TYPE I.
lv_cursor_position = sy-curow.
WRITE: / 'Vertical Cursor Position:', lv_cursor_position.

To display header texts for the primary list, the TOP-OF-PAGE event is utilized. For header texts in detail lists, the TOP-OF-PAGE DURING LINE-SELECTION event is used.

An additional option is to present the detail level screen as a dialog window or subscreen, achieved through the WINDOWS STARTING AT statement.

It's possible to create up to 20 levels of secondary lists.

E.g

*&---------------------------------------------------------------------*
*& Report ZTEST_ABAP_JEGA_17
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ztest_abap_jega_17.

* Declaration of Structure
DATA: it_users TYPE STANDARD TABLE OF zuser_table_jega,
wa_users LIKE LINE OF it_users,
v_dni TYPE z_dni.

*---------------------------------------------------------------------*
START-OF-SELECTION.
*---------------------------------------------------------------------*
PERFORM get_users_data.

*----------------------------------------------------------------------*
AT LINE-SELECTION.
*----------------------------------------------------------------------*
CLEAR v_dni.
v_dni = sy-lisel(10).

* Display Detail Report after user performs a line selection
PERFORM display_details_report.

*----------------------------------------------------------------------*
TOP-OF-PAGE DURING LINE-SELECTION.
*----------------------------------------------------------------------*
WRITE:/ 'User Detail', sy-uline.


*&---------------------------------------------------------------------*
*& Form get_users_data
*&---------------------------------------------------------------------*
* Users
*----------------------------------------------------------------------*
FORM get_users_data.
CLEAR it_users.
REFRESH it_users.

SELECT *
FROM zuser_table_jega
INTO TABLE it_users.

IF sy-subrc EQ 0.
* Display Main Report if information was found
PERFORM display_main_report.
ELSE.
* Error
MESSAGE i000(ztest_class).
ENDIF.
ENDFORM.

*&---------------------------------------------------------------------*
*& Form display_main_report
*&---------------------------------------------------------------------*
* Main report Lvl 1
*----------------------------------------------------------------------*
FORM display_main_report.
* Print Header
PERFORM print_header.
* Print Data
PERFORM print_data.
ENDFORM.

*&---------------------------------------------------------------------*
*& Form PRINT_HEADER
*&---------------------------------------------------------------------*
* Content of the Users Table
*----------------------------------------------------------------------*
FORM print_header.
WRITE:/1(133) sy-uline.
WRITE:/1(1) sy-vline,
2(8) 'ID', "DNI
11(1) sy-vline,
12(30) 'Name and Surname', "Full Name
43(1) sy-vline,
44(20) 'User Status', "State
65(1) sy-vline,
97(20) 'Date of Birth', "Birthdate
133(1) sy-vline.
WRITE:/1(133) sy-uline.
ENDFORM.

*&---------------------------------------------------------------------*
*& Form PRINT_DATA
*&---------------------------------------------------------------------*
* Content of the Users Table
*----------------------------------------------------------------------*
FORM print_data.
LOOP AT it_users INTO wa_users.
FORMAT COLOR COL_GROUP INTENSIFIED ON.
WRITE:/1 sy-vline,
2(8) wa_users-dni,
11 sy-vline,
12(30) wa_users-nombre_ape,
43 sy-vline,
44(20) wa_users-estado,
65 sy-vline,
97(20) wa_users-birthdate,
133 sy-vline.
ENDLOOP.
WRITE:/1(133) sy-uline.
ENDFORM.

*&---------------------------------------------------------------------*
*& Form display_details_report
*&---------------------------------------------------------------------*
* Secondary report Lvl 2
*----------------------------------------------------------------------*
FORM display_details_report.
READ TABLE it_users INTO wa_users WITH KEY dni = v_dni.

IF sy-subrc EQ 0.
* Create a new window
WINDOW STARTING AT 1 15 ENDING AT 79 23.
FORMAT COLOR COL_HEADING INTENSIFIED ON.

WRITE:/1(50) sy-uline.

WRITE:/1(1) sy-vline,
2(18) TEXT-004,
21(1) sy-vline,
22(28) wa_users-dni,
50(1) sy-vline.

WRITE:/1(1) sy-vline,
2(18) TEXT-005,
21(1) sy-vline,
22(28) wa_users-nombre_ape,
50(1) sy-vline.

WRITE:/1(1) sy-vline,
2(18) TEXT-006,
21(1) sy-vline,
22(28) wa_users-estado,
50(1) sy-vline.

WRITE:/1(1) sy-vline,
2(18) TEXT-007,
21(1) sy-vline,
22(28) wa_users-birthdate,
50(1) sy-vline.

WRITE:/1(50) sy-uline.
ENDIF.
ENDFORM.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Jaime Eduardo Gomez Arango, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.

SAP Expert


Jaime Eduardo Gomez Arango

Profesión: Ingeniero de Sistemas y Computación - España - Legajo: SW34C

✒️Autor de: 149 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Ingeniero de sistemas y computación con 8 años de experiencia el desarrollo frontend & backend (react/node) y en cloud (aws), actualmente desarrollando habilidades en sap btp, ui5, abap y fiori.

Certificación Académica de Jaime Gomez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los reportes interactivos" de la mano de nuestros alumnos.

SAP Senior

¿Qué son? · Son reportes que no son planos. El usuario puede hacer clic en una línea del listado para ver más detalles sobre ese registro en específico. ¿Cómo funcionan? 1. Mi programa muestra un primer listado (con un WRITE o un LOOP). 2. El usuario hace doble clic en una línea. 3. Se dispara el evento AT LINE-SELECTION. 4. Dentro de ese evento, yo programo qué información adicional mostrar. Variables del sistema importantes: · SY-LSIND: Me dice el "nivel" de listado en el que estoy. El primer listado es el 0, el siguiente el 1, etc. · SY-LISEL: Contiene toda la línea en la que el usuario hizo clic, como un texto. · SY-LILLI:...

Acceder a esta publicación

Creado y Compartido por: Mara Fadua Romero Hernandez

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

SAP Master


Introducción a reportes interactivos Definición y características de los reportes interactivos Los reportes interactivos en ABAP permiten desplegar un listado inicial con información y profundizar en los datos haciendo doble clic sobre una línea, accediendo así a detalles en múltiples niveles. A diferencia del reporte clásico, estos solo se pueden ejecutar online, no en modo batch, ya que requieren interacción con el usuario. Ventaja principal: requieren poco código en comparación con programas de diálogo o model pool. Permiten seleccionar líneas del listado principal, ejecutar comandos desde menús, teclas de función o botones, e incluso...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

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

SAP Master

Introducción: Los reportes interactivos permiten explorar datos jerárquicamente: un listado principal despliega detalles al hacer clic. 1 ¿Qué es un Reporte Interactivo? Definición clave: "Reporte ABAP que muestra datos en niveles: un listado principal genera sublistados al seleccionar líneas." Características principales: Navegación por niveles: Hasta 20 niveles de profundidad (listado 1 → listado 2 → ...). Solo modo online: Requiere interacción del usuario (no ejecutable en background). Ventaja clave: Menos código que programas de diálogo para flujos complejos. Botones críticos: BACK...

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



¿Qué son los Reportes Interactivos en SAP? Los reportes interactivos en SAP son herramientas que permiten a los usuarios visualizar, analizar y explorar datos de manera dinámica dentro del sistema SAP. A diferencia de los reportes clásicos, los interactivos permiten navegar en múltiples niveles de detalle directamente desde el resultado inicial del reporte, brindando una experiencia más rica y flexible para la toma de decisiones. Estos reportes se desarrollan comúnmente en ABAP, el lenguaje de programación nativo de SAP, y son ampliamente utilizados en módulos como FI (Finanzas), MM (Gestión de Materiales), SD (Ventas y Distribución), HCM (Gestión de Capital...

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 ***

SAP Senior

Los Reportes Interactivos 1. Que es un reporte interactivo Es un tipo de reporte ABAP donde se muestra un primer listado por pantalla con cierta información y luego haciendo doble clic a una linea determianda del primer listado se accede a otros datos realtivos a esa linea y así sucesivamente por cuantos niveles tenga el reporte El reporte interactivo es ejecutado solo en forma online, ya que requiere de la interacción con el usuario. La principal ventaja de los reportes interactivos es que con pocas líneas de código se puede crear un reporte con interacción con el usuario a diferencia de los programas de díalogo que requieren de mucho más tiempo de construcción. 2. Los eventos y...

Acceder a esta publicación

Creado y Compartido por: Yeny Gisela Yanes Bautista

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

SAP Senior

N°4 Los reportes interactivos Reporte interactivo: es un tipo de reporte ABAP, donde se muestra el primer listado por pantalla, con cierta informacion y luego haciendo doble click a una linea determinada, se accede a otros datos relativos a esa linea y asi sucesivamente. (este solo es ejecutado de manera online). TOP OF PAGE DURING LINE SELECTION: para imprimir por pantalla la cabecera de nivel de listados de detalle Los eventos y variables de un reporte interactivo Variables utilizadas SY-LSIND: esta variable contiene el indice del listado (nivel del listado). SY-LISEL: esta variable almacena el contenido de la linea seleccionda. SY-LILLI: esta variable contien el numero de la linea seleccionada del listado. SY-CUROW: esta variable...

Acceder a esta publicación

Creado y Compartido por: Lautaro Gabriel Dominici

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

SAP Senior

Reportes interactivos Es un tipo de reporte ABAP donde se muestra un listado por pantalla con informacion y cuando se hace clic en alguna linea de la lista, se accede a otro listado relativo a la linea seleccionada, es un reporte por niveles. A direrencia de un reporte clasico que puede ejecutarse online o de fondo, este tipo solo se ejecuta online ya que necesita interaccion con el usuario. Su ventaja es que con pocas lineas de codigo se puede crear un reporte de interaccion con el usuario. Sus caracteristicas son: Se recuperan datos y se los presenta en la pantalla en forma de listado principal Seleccion de lineas del listado principal, ingreso de comandos del menu, ejecucion de teclas de funcion o botones, se introduce informacion...

Acceder a esta publicación

Creado y Compartido por: Luciano Martinez / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


Reporte Interactivo. es un tipo de reporte ABAP, donde se muestra un primer listado por pantalla, con cierta información y luego haciendo doble clic a una línea determinada del primer listado, se accede a otros datos relativos a esa línea y así sucesivamente por cuantos niveles tenga el listado. A diferencia del Reporte clásico, que puede ser ejecutado tanto Online como Batch, el reporte interactivo es ejecutado solo en forma Online, ya que requiere de la interacción con el usuario. La principal ventaja de los reportes interactivos es que con pocas líneas de código se puede crear un reporte con interacción con el usuario, a diferencia de los programas de diálogo, que requieren...

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

Reporte interactivo: Es un tipo de retoprte ABAP, donde se muestra el primer listado por pantalla, con cierta información luego haciedo doble clic en una linea determinada del primer listado, se accede a otro datos relativos a esa linea y asi sucesivamente por cuantos niveles tenga el reporte. A disferencia del reporte clásico, que puede ser ejecutado tanto online como batch, el reporte interectivo es ejecutado solo en forma online, ya que requiere de la interacción con el usuario. La principal ventaja de los reportes interactivos es que con pocas lineas de código se puede crear un reporte con interacción con el usuario, a diferencia de lños programas de dialogo, que requiera de mucho más tiempo...

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

REPORTE INTERACTIVO: Es un tipo de reporte ABAP, donde se muestra un primer listado por pantalla, con cierta información y luego haciendo doble clic a una línea determinada del primer listado, se accede a otros datos relativos a esa línea y así sucesivamente por cuantos niveles tenga el reporte. Se puede crear hasta 20 niveles secundarios. A diferencia del reporte clásico, que puede ser ejecutado, tanto online como batch, el reporte interactivo es ejecutado solo en forma online, ya que requiere de la interacción con el usuario. Es importante tener presente que los Reporte Interactivos no pueden ser ejecutados en procesos de fondo. LOS EVENTOS Y VARIABLES DE UN REPORTE INTERACTIVO: Cuando se hace doble...

Acceder a esta publicación

Creado y Compartido por: Jean Carlos Lopez / Disponibilidad Laboral: FullTime

 


 

👌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!