REUSE_ALV_LIST_DISPLAY
Octubre 28th, 2009 por
Sebastián Chiavia
Publicado en Funciones, Reportes ALV |
Sin Comentarios »
Sebastián Chiavia Publicado en Funciones, Reportes ALV |
Sin Comentarios »
Sebastián Chiavia Publicado en Reportes ALV |
Sin Comentarios »
Sebastián Chiavia *&———————————————————————*
* muesto el log de mensajes del proceso batch
*———————————————————————-*
FORM f007_mostrar_log.
* Descripción de la estructura de la lista de salida
PERFORM f009_layout_build USING i_layout.
* Especificar el ordenamiento y/o los subtotales de la lista básica
PERFORM f010_e06_t_sort_build USING i_sort[].
* Catálogo de campos conteniendo la descripción de los campos
* de la lista de salida
PERFORM f011_e01_fieldcat USING i_fieldcat[].
* Comentarios del bloque de salida
PERFORM f012_e04_comment_build USING i_list_top_of_page[].
*llamada a la funcion que ejecuta el ALV grilla
CALL FUNCTION ‘REUSE_ALV_GRID_DISPLAY’
EXPORTING
i_callback_program = d_repid
i_callback_pf_status_set = c_formname_pf_status_set
is_layout = i_layout
it_fieldcat = i_fieldcat[]
it_sort = i_sort[]
i_default = c_x
TABLES
t_outtab = i_mensaje
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. ” f007_mostrar_log
*&———————————————————————*
*& Form f009_layout_build
*&———————————————————————*
* layout para el alv
*———————————————————————-*
* –>P_GS_LAYOUT text
*———————————————————————-*
FORM f009_layout_build USING e05_ls_layout
TYPE slis_layout_alv.”Diseño
* e05_ls_layout-coltab_fieldname = c_x.
e05_ls_layout-zebra = c_x.
e05_ls_layout-no_keyfix = c_x.
ENDFORM. ” layout_build
*&———————————————————————*
*& Form f010_e06_t_sort_build
*&———————————————————————*
* ordeno por defecto las columnas
*———————————————————————-*
* –>P_GT_SORT[] text
*———————————————————————-*
FORM f010_e06_t_sort_build USING e06_lt_sort
TYPE slis_t_sortinfo_alv.”Ordenamiento
DATA: ls_sort TYPE slis_sortinfo_alv.”Ordenamiento
REFRESH: e06_lt_sort.
* Nombre del campo en la tabla de salida
ls_sort-fieldname = c_EBELN.
* Secuencia de ordenamiento
ls_sort-spos = 1.
* Orden ascendente
ls_sort-up = c_x.
APPEND ls_sort TO e06_lt_sort.
CLEAR ls_sort.
ENDFORM. ” e06_t_sort_build_soc
*&———————————————————————*
*& Form f011_e01_fieldcat_soc_bco
*&———————————————————————*
* armo las columnas para armar el alv
*———————————————————————-*
* –>P_GT_FIELDCAT[] text
*———————————————————————-*
FORM f011_e01_fieldcat USING i_e01_lt_fieldcat
TYPE slis_t_fieldcat_alv.”Catálogo
DATA: r_fieldcat TYPE slis_fieldcat_alv.”catalogo
DATA: d_cucol TYPE sy-cucol.”columna
REFRESH i_e01_lt_fieldcat.
CLEAR d_cucol.
d_cucol = d_cucol + 1.
CLEAR r_fieldcat.
r_fieldcat-col_pos = d_cucol.
r_fieldcat-fieldname = c_ebeln.
r_fieldcat-tabname = c_tabla_interna.
r_fieldcat-ref_fieldname = c_ebeln.
r_fieldcat-ref_tabname = c_ekko.
APPEND r_fieldcat TO i_e01_lt_fieldcat.
d_cucol = d_cucol + 1.
CLEAR r_fieldcat.
r_fieldcat-col_pos = d_cucol.
r_fieldcat-fieldname = c_MSGTYPE.
r_fieldcat-tabname = c_tabla_interna.
r_fieldcat-ref_tabname = c_BDCMSGCOLL.
r_fieldcat-ref_fieldname = c_MSGTYPE.
APPEND r_fieldcat TO i_e01_lt_fieldcat.
d_cucol = d_cucol + 1.
CLEAR r_fieldcat.
r_fieldcat-col_pos = d_cucol.
r_fieldcat-fieldname = c_MSGTEXT.
r_fieldcat-tabname = c_tabla_interna.
r_fieldcat-seltext_s = text-A07.
r_fieldcat-ddictxt = c_s.
r_fieldcat-ref_tabname = c_BDCMSGCOLL.
r_fieldcat-ref_fieldname = c_MSGTEXT.
r_fieldcat-outputlen = 100.
APPEND r_fieldcat TO i_e01_lt_fieldcat.
*
ENDFORM. ” e01_fieldcat
*&———————————————————————*
*& Form f012_e04_comment_build
*&———————————————————————*
* armo el comentario del encabezado
*———————————————————————-*
* –>P_GT_LIST_TOP_OF_PAGE[] text
*———————————————————————-*
FORM f012_e04_comment_build USING i_e04_lt_top_of_page TYPE
slis_t_listheader.”encabezado
DATA: r_line TYPE slis_listheader,
l_titulo(50).
REFRESH i_e04_lt_top_of_page.
CLEAR r_line.
l_titulo = text-A01.
r_line-typ = c_h.
r_line-info = l_titulo.
APPEND r_line TO i_e04_lt_top_of_page.
ENDFORM. ” e04_comment_build
*&———————————————————————*
*& Form f016_SET_PF_STATUS
*&———————————————————————*
*& –>rt_extab
*& llamo al status gui
*&———————————————————————*
FORM f016_set_pf_status USING rt_extab TYPE slis_t_extab. “#EC CALLED
SET PF-STATUS c_standar_alv.
ENDFORM. ” SET_PF_STATUS
Publicado en Reportes ALV |
Sin Comentarios »