jueves, 7 de febrero de 2008

Plantilla super básica para aprender ALV

Esta es una plantilla que hice hace un tiempo cuando aprendí a usar ALV, es la plantilla más básica como ejemplo para aprender, luego uno ya puede ir agregándole otras capacidades que ALV permite.

Solo cambia lo que está en rojo y para obtener un programa que muestra un ALV.


*&---------------------------------------------------------------------*
*& autor....... : Carlos Agreda*
*& Descripción..: programa plantilla basico para alv *
*&---------------------------------------------------------------------*

REPORT ZEJ_ALV.
     type-pools: slis.
     Data: gt_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE.
     Data: BEGIN OF it_datos OCCURS 0.
                        INCLUDE STRUCTURE
tabla_diccionario.
     Data: END OF it_datos .

     perform llenaDatos.
     perform llenaFieldcat.
     perform mostrarALV.

*llena la tabla interna con los datos que queremos mostrar  
form llenaDatos.
             SELECT * FROM
tabla_diccionario INTO TABLE it_datos.
endform.

*Llena el fieldcat para cada campo
form llenaFieldcat.
* repetir este bloque por cada campo
             CLEAR gt_fieldcat.
             gt_fieldcat-SELTEXT_L = '
caption_campo'.
             gt_fieldcat-fieldname = '
nombre_del_Campo'.
             gt_fieldcat-tabname = '
tabla_diccionario'.
             APPEND gt_fieldcat.
*fin del bloque

endform.

* muestra el alv
form mostrarALV.
             CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
             EXPORTING
                      it_fieldcat = gt_fieldcat[]
             TABLES
                      t_outtab = it_datos
             EXCEPTIONS
                      program_error = 1
             OTHERS = 2.
endform.


Espero no haber olvidado nada.

1 comentario:

Anónimo dijo...

muchas gracias de verdad me ha sido de gran ayuda tu plantilla la verdad soy un novato recién aprendiendo y me ayudo mucho.