✒️ABAP Los reportes interactivos
ABAP Los reportes interactivos
REPORTES INTERACTIVOS
Es un tipo de report, donde se muestra un primer listado por pantalla con cierta informacion y luego haciendo doble clic a la linea determinada del primer listado para acceder a otros datos relativos de la linea.
Diferencia del reporte clasico e interactivo:
- El reporte clasico: es que se puede ejecutar tanto online como batch
- El reporte interactivo: se ejecuta solo ONLINE. Su desventaja es que pocas lineas de codigo pueden crear un reporte con interaccion.
EJEMPLO PARA EL CUAL NOS CONVENDRIA CREAR UN REPORTE INTERACTIVO:
- Tenemos el primer listado que muestra los usuarios con sus nombres
- Hacemos doble clic sobre el usuario
- Vemos datos detallados
Dado que los reportes interactivos requieren de la interacción del usuario con el reporte, entonces no se pueden utilizar reportes interactivos en procesos que se ejecutarán de fondo. Este punto es importante tenerlo en cuenta al momento de realizar la especificación o diseño técnico del reporte que es el momento en donde se piensan todos los aspectos y alcances del programa a crear.
EVENTOS Y VARIABLES DE UN REPORTE INTERACTIVO
- Haciendo clic en alguna posicion de la lista
- Ejecutaremos el evento AT LINE-SELECTION (evento que se produce cuando dentro de un listado principal se hace un doble clic en alguna linea de la pantalla).
- Este evento lo ubicamos luego del evento START-OF-SELECTION
- Al clickear las filas del reporte, se especifican ciertas variables del sistema para completar con informacion muy util, las cuales son:
- SY-LSIND: Contiene el indice de la lista de detalle
- SY-LISEL: Tiene el contenido de la linea seleccionada.
- SY-LILLI: Contiene la linea seleccionada de la lista
- SY-CUROW: Contiene la posicion del cursor vertical en la pantalla
NOTA: Utilizamos el evento TOP-OF-PAGE DURING LINE-SELECTION para imprimir por pantalla los textos de las cabeceras de la lista de detalle.
MI PRIMER REPORTE INTERACTIVO.
- Creamos un reporte interactivo.
- Agregamos contenido a la tabla de usuarios.
- MODIFICACION DE UNA TABLA B.D.
- Para realizar cambio en la estructura de la tabla, tendremos que adaptar la tabla B.D. utilizando la opcion menu: UTILIDADES / OBJETO BASE DATOS / UTILIDAD BASE DATOS / ACTIVAR Y ADAPTAR BASE DATOS.
- Despues generamos la superficie de actualizacion
- Ingresamos datos en la tabla con la TRANSACCION SM30
- Creamos el programa ABAP ZREPORTE_INT_USUARIOS dentro del evento STAR-OF-SELECTION realizamosla seleccion del DNI, etc.
Para obtener el resto de los campos debemos trabajar con los caractéres de la misma forma que hacemos con el campo DNI donde escribimos v_dni = SY-LISEL (10). Entonces si quisieramos obtener por ejemplo el nombre y apellido que se encuentra a partir de la posición 10, 30 posiciones a la derecha realizariamos lo siguiente: v_nombreapellido = SY-LISEL + 10 (30) y de la misma forma realizaríamos para el resto de los campos que se encuentren a la derecha del nombre y apellido.
- Agregamos el evento AT LINE-SELECTION el cual el evento que esta dentro se ejecutara cuando hagamos doble clic en la pantalla.
- Utilizamos la variable del sistema SY-LISEL para obtener el DNI
- Luego creamos la subrutina GENERAR_REPORTE_NIVEL2
- Utilizamos el evento TOP-OF-PAGE DURING LINE-SELECTION (Cuando estamos trabajando con los llamados "Reporte interactivos" este evento se produce cuando un reporte intenta imprimir la cabecera de un listado de detalle)
- Finalmente ejecutamos el reporte clickeando en la linea del DNI
NOTA: Utilizamos la Sentencia WINDOWS STARTING AT (Sentencia que permite mostrar una pantalla de un reporte tal coo si fuera una ventana de dialogo) para mostrar la pantalla del nivel de detalle como una ventana de dialogo o subscreen (es un area dentro de una pantalla o dynpro que funciona como otra pantalla independiente).
Se pueden crear tantos niveles de listados como se requiera. El nivel del listado donde estamos lo tenemos en la variable SY-LSIND.
 
 
 
Sobre el autor
Publicación académica de Ixhel Magai Lopez Valencia, en su ámbito de estudios para la Carrera Consultor ABAP.
Ixhel Magai Lopez Valencia
Mexico - Legajo: PM62E
✒️Autor de: 134 Publicaciones Académicas
🎓Egresado de los módulos:
- Máster ABAP for HANA
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: PartTime
Presentación:
Soy ingeniera en telematica, estoy interesada en aprender programacion en sap, solo tengo conocimientos basicos en java
Certificación Académica de Ixhel Lopez