🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Los reportes interactivos

ABAP Los reportes interactivos

ABAP Los reportes interactivos

REPORTES INTERACTIVOS

1.- Qué 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 click a una línea determinada del primer listado, se accede a otros datos relativos a esta 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 ek 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, a diferencia de los programas de diálogo que requieren de mucho más tiempo de construcción".

2.- Eventos y variables de un reporte interactivo

Cuando hacemos un click en alguna posición de la lista principal, se ejecutará el evento AT-SELECTION. Este evento debemos ubicarlo luego del evento START-OF-SELECTION. En este momento, ciertas variables del sistema se completan con información muy útil como:

. sy-sind.- Contiene el índice de la lista de detalle.

. sy-lisel.- Tiene el contenido de la línea seleccionada.

. sy-lilli.- Contiene la línea seleccionada de la lista.

. sy_currow.- Contiene pa posición del cursor vertical en la pantalla.

Utilizaremos el evento TOP-OF-PAGE DURING LINE-SELECTION, para imprimir por pantalla los textos de las cabeceras de las listas de detalle.

Revisar los programas:

DEMO_LIST_INTERACTIVE_1

DEMO_LIST_INTERACTIVE_2

DEMO_LIST_INTERACTIVE_3

DEMO_LIST_INTERACTIVE_4

3.- Primer reporte interactivo.

añadir a la tabla ZTABLA_USUARIOS los campos: DIRECCION, CODIGO_POSTAL, FECHA_NAC que será DATS de 8 posiciones y ESTADO_CIVIL el cuál tendrá un dominio que será char de tamaño 1 y admitirá los valores S(soltero) y C(casado).

Para modificar una tabla de base de datos:

Desde el menú de opciones:

Utilidades

Objeto de datos

Utilidad de base de datos

Activar y adaptar base de datos.

Después se debe volver a generar la superficie de actualización, y finalmente ingresamos los datos en la tabla a travès de la transacción SM30.

Luego creamos el programa: ZREPORTE_INT_USUARIOS. Dentro del evento START-OF-SELECTION realizamos la selección del DNI, Nombre y Apellido de los usuarios. Después imprimimos por pantalla el resultado de la selección realizada.

CLEAR ti_usuarios.

REFRESH ti_usuarios.

SELECT *

FROM ztabla_usuarios

INTO TABLE ti_usuarios.

LOOP AT ti_usuarios INTO wa_usuarios.

FORMAT COLOR COL_TOTAL INTENSIFIED.

WRITE: / wa_usuarios-dni,

wa_usuarios-nombre_ape.

ENDLOOP.

Ahora vamos a agregar el evento AT LINE-SELECTION. El código que esté dentro de este evento se ejecutará cuando hagamos doble click en algún lugar de la pantalla, donde se visualiza el primer listado. Utilizaremos la variable del sistema sy-lisel para obtener el DNI correspondiente a la línea de la pantalla a la cual le realizamos click.

Luego creamos la subrutina GENERAR_REPORTE_NIVEL2, la cual seleccionará de la tabla ZTABLA_USUARIOS los datos del detalle correspondiente al usuario, cuyo DNI fue capturado anteriormente y los imprimirá por pantalla.

*------------------------------

AT LINE-SELECTION.

*------------------------------

v_dni = sy-lisel(19).

PERFORM generar_repote_nivel2.

Utilizaremos el evento TOP-OF-PAGE DURING LINE SELECTION para imprimir por pantalla la cabecera de cada nivel de listados de detalle.

*--------------------------------

TOP-OF-PAGE DURING LINE SELECTION.

*---------------------------------

WRITE: /'Detalle de los usuarios', sy-uline.

Finalmente ejecutamos el reporte, hacemos click en la línea correspondiente al DNI 23545312 y se despliega el detalle del usuario.

Otra posibilidad es mostrar la pantalla del nivel de detalle como una ventana de diálogo o subscreen. Para esto usamos la sentencia WINDOWS STARTING AT, ejemplo.

* Determinar posición en la pantalla: ancho y alto

* de la subscreen

WINDOW STARTING AT 1 15

ENDING AT 79 23.

Y se visualiza una ventana en la posición indicada.

Se pueden crear tantos niveles de listados como se requiera.

El nivel del listado donde estamos lo tenemos en la variable SY-SIND.


 

 

 


Sobre el autor

Publicación académica de Miguel Angel Acosta Acosta, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Expert


Miguel Angel Acosta Acosta

Profesión: Ingeniero de Sistemas - Ecuador - Legajo: TF64C

✒️Autor de: 238 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Profesional de ingeniería de sistemas en computación e informática, con experiencia en la implantación y soporte de proyectos informáticos para empresas del sector industrial y financiero.

Certificación Académica de Miguel Acosta

✒️+Comunidad Académica CVOSOFT

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

SAP Senior

Unidad 5 - Reportes Interactivos: Dado que los reportes interactivos necesitan de la interacción del usuario con el reporte. Entonces esta clase de reportes no sera posible ejecutarla de fondo. Hay que tenerlo en cuenta al momento de crear el programa.

Acceder a esta publicación

Creado y Compartido por: Matias Ciutat

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

SAP Master

para mi gusto los reportes interactivos son los reportes mas versatiles ya que incorporan de forma simple la profundidad de informacion en formato maestro detalle que en otros lenguajes de programacion son mas complicados de programar y presentar al usuario.

Acceder a esta publicación

Creado y Compartido por: Eduardo Vargas

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

SAP Senior

Entre los reportes los interactivos son los mas utilizados pues requieren que el usuario llene ciertos parametros previa impresion del reporte

Acceder a esta publicación

Creado y Compartido por: Faharid Manjarrez

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

SAP SemiSenior

Siempre en los reportes interactivos, la variable del sistema sy-lsind contiene el indice de la lista de detalle.

Acceder a esta publicación

Creado y Compartido por: Angel Efrain Roque Bañez

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

SAP Expert


Sin duda, los reportes interactivos favorecen en mucho al programador, aunque si bien es cierto que se tienen que desarrollar un poco mas y ser mas metodicos, tambien es cierto que sin duda, es la base de la buena programacion, y cuando digo buena, me refiero a la programacion a la vieja escuela. Esto lo digo porque los elementos que podemos utilizar para posicionar el cursor, para saber que linea se clickea, para ingresar a diferentes niveles el detalle de una linea, siempre es bueno, dado que eso es lo que espera el usuario. El hecho de poner en ventanas el detalle le da un toque muy profesional al programa. No obstante, creo que lo que implicara aqui un problema pudiera ser la logica, sobre todo cuando sabemos que llevamos diferentes niveles,...

Acceder a esta publicación

Creado y Compartido por: Juan Luis Valdez Galicia

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

SAP SemiSenior

Reportes Interactivos. 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 determinada del primer listado, se accede a otros datos relativos a esa linea y así sucesivamente por cuantos niveles tenga el listado. Los reportes interactivos se ejecuta solo en forma online, ya que requiere interacción con el usuario. Eventos y variables de un reporte interactivo. AT LINE -SELECTION. Este evento se ubica luego del evento START-OF.SELECTION . 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 posición del...

Acceder a esta publicación

Creado y Compartido por: Fabio Gallo

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

SAP Senior

cuando estemos programando reportes interactivos para un usuario debemos de tener cuidado en la cantidad de información que estemos llamando en cada sub-nivel del reporte, esto por que podríamos causar una saturacion de memoria o volveríamos el reporte muy lento.

Acceder a esta publicación

Creado y Compartido por: Jose Manuel Alvarez Torres

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

SAP Master

Reportes interactivos: es un reporte donde se muestra una informacion incial, listado por pantalla, y luego haciendo clic a una linea determinada se accede a otros datos relativos a la linea.

Acceder a esta publicación

Creado y Compartido por: Rainer Diaz

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

SAP SemiSenior

Reportes interactivos. Es un reporte tipo encabezado-detalle, en donde a partir de la información de un primer reporte, al seleccionar un registro, el reporte nos mostrará en un sub reporte, información relacionada al registro seleccionado. Los niveles o sub niveles pueden ser N. SY-LSIND => Contiene el indice o numero de linea seleccionado en el reporte activo. Es decir el numero de linea en donde hicimos click. SY-LISEL => Contiene el contenido de la linea seleccionada (el contenido en string) SY-LILLI => Contiene la linea seleccionada de la lista (¿o sea?) SY-CUROW => Contiene la posición del cursor vertical. Para imprimir por pantalla la cabecera de los textos de los sub reportes, se utiliza...

Acceder a esta publicación

Creado y Compartido por: Saul Rincon Olvera

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

SAP Senior

Reporte Interactivo Es un tipo de reporte ABAP donde se muestra un primer listado por pantlla, con cierta informacion y luego haciendo doble clic a una linea determinada del primer listado, se accede a otros datos relativos a esa linea y asi sucesivamente por cuantos niveles tenga el listado. A diferencia del reporte clasico , que solo puede ser ejecutado tanto Online como Batch, el reporte interactivo es ejecutado solo en forma Online , ya que requiere de la interaccion con el usuario. La principal ventaja de los reportes interactivos es que con pocas lineas de codigo se puede crear un reporte con interaccion con el usuario, a diferencia de los programas de dialogo, qure requieren mucho mas tiempo de construccion. Dado que los reportes interactivos...

Acceder a esta publicación

Creado y Compartido por: Marco Antonio Vazquez Gonzalez

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.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!