✒️ABAP Los reportes interactivos
ABAP Los reportes interactivos
5.4. - Reportes interactivos
5.4.1. - ¿Qué es un reporte interactivo?
Es un tipo de reporte, donde se muestra un primer listado por pantalla con cierta información y luego pulsando una de las líneas, se accede a otros datos relativos a esa línea, sucesivamente hasta cuantos niveles tenga el listado.
Es solo ejecutado de forma “Online”, no se puede ejecutar como un proceso de fondo, ya que requiere de la interacción con el usuario. La principal ventaja es que con pocas líneas de código se puede crear un reporte con interacción con el usuario.
Ejemplo de cuando crear un reporte interactivo:
Un primer listado muestra el nombre de los usuarios. Al pulsar sobre el nombre de los usuarios, se accede a información más detallada del usuario, como puede ser la nacionalidad, el código postal, etc.
5.4.2. - Eventos y variables de un reporte interactivo
Cuando se pulsa en alguna posición de la pantalla principal, se ejecutará el evento “AT LINE-SELECTION”. Este evento se debe posicionar después del evento “START-OF-SELECTION”. Posteriormente, ciertas variables del sistema se completan con información.
1. SY-LSIND: Contiene el índice de la lista de detalle.
a)
2. SY-LISEL: Tiene el contenido de la línea seleccionada.
a)
3. SY-LILLI: Contiene la línea seleccionada de la lista
a)
4. SY-CUROW: Contiene la posición del cursor vertical en la pantalla
a)
Se utiliza el evento “TOP-OF-PAGE DURING LINE-SELECTION” para imprimir por pantalla los textos cabeceras de las listas de detalle.
5.4.3. - Mi primer reporte interactivo
Para el primer ejercicio con reportes interactivos, se va a utilizar la tabla de los usuarios. Si se introducen nuevos datos e la tabla, se tendrá que adaptar la tabla de base de datos accediendo al menú “Utilidades->Objeto base datos->Utilidad base datos->Activar y adaptar bd”.
Dentro del evento “START-OF-SELECTION”, hay que seleccionar el DNI y el nombre/apellido de los usuarios, para posteriormente imprimirlos por pantalla.
Ahora, se añade el evento “AT LINE-SELECTION”. El código que esté dentro de este evento se ejecutara cuando se pulse dos veces sobre algún lugar de la pantalla, visualizará el primer listado. Se utilizará la variable “SY-LISEL”, para obtener el campo “DNI”, correspondiente a la línea de la pantalla.
Posteriormente, se creará la subrutina “GENERAR_REPORTE_NIVEL2”, que seleccionará los datos de detalle correspondientes al usuario. Se utilizará el evento “TOP-OF-PAGE DURING LINE-SELECTION”, para imprimir por pantalla la cabecera de cada nivel.
Por último, se ejecuta el reporte pulsando la línea correspondiente, viendo los detalles del usuario pulsado.
Otra posibilidad es mostrar la pantalla del nivel de detalle como una ventana de dialogo o subscreen, para lo que se utilizará la sentencia “WINDOWS STARTING AT”.
 
 
 
Sobre el autor
Publicación académica de Adrian Fernandez Marcos, en su ámbito de estudios para la Carrera Consultor ABAP.
Adrian Fernandez Marcos
Profesión: Técnico de Sistemas - España - Legajo: FQ91J
✒️Autor de: 116 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
🎓Egresado de los módulos:
Certificación Académica de Adrian Fernandez