
REPORTE INTERACTIVO. Es un tipo de reporte abap que corre en línea, el cual me permite al hacer clic sobre la posición ir al detalle del registro, esta funcionalidad se puede implementar muchas ocasiones. En este tipo de reporte y en diferencia con el de dialogo, es que se usan pocas líneas de código.

EVENTOS Y VARIABLES DE UN REPORTE INTERACTIVO. Cuando se hace clic en alguna posición de la lista principal se activa el evento AT LINE-SELECTION. Este evento se ubica después del evento START-OF-SELECTION. En este momento ciertas variables se activan con valores para ser usadas:
· SY-LSIND. Contiene el índice de la lista, el número de la fila.

· SY-LISEL. Tiene el contenido de la línea seleccionada.

· SY-LILLI. Contiene la línea seleccionada incluyendo el titulo.

· SY-CUROW. Contiene la posición del cursor vertical de la pantalla.

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

MI PRIMIR REPORTE INTERACTIVO. A nuestra tabla ztabla_usuarios, se adicciona los campos, direccionar que va hacer un char 30, código postal que será char de 4, fecha de nacimiento que será un DATS de 8 posiciones y estado civil que tendrá un dominio, que será char de 1 posicion y admitirá valores de S y C. Como se debe modificar un tabla se debe hacer lo siguente:

Se debe volver a generar la superficie de actualización y luego se puede ingresar la información por la SM30.
Creamos el programa ABAP_ZREPORTE_INT_USUARIOS. Dentro del evento START-OF-SELECTION.

Creamos el código para el evento al hacer clic, el cual es AT LINE-SELECTION, luego mediante la variable del sistema SY-LISEL, obtendremos el dato de DNI.

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

Otra posibilidad es mostrar la pantalla del nivel de detalle como una ventana de dialogo o subscreen. Para esto usamos la sentencia WINDOWS STARTING AT como se muestra a continuación:

Se pueden crear tantos niveles de listado se desee, el nivel del listado donde estamos lo tenemos con la varible SY-LSIND.