Programación General > ABAP
Alv Y Top_of_page
(1/1)
senzao18:
Estoy haciendo un ALV el caso es que le pongo el evento TOP_OF_PAGE para mostrar unos textos al inicio de la ventana.... El problema esta que cuando uso el REUSE_ALV_LIST_DISPLAY si sale bien el texto... pero cuando uso el
REUSE_ALV_GRID_DISPLAY no me muestra el texto sino un recuadro Gris sin el texto que yo mando con la instruccion Write :huh: ....
Soy nuevo en esto de los ALV tienen alguna idea de por donde va el problema o simplemente no se puede... <_<
Blag:
Yo siempre lo he hecho utilizando el REUSE_ALV_GRID_DISPLAY B)
--- Código: Text --- DATA: GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.DATA: I_EVENTS TYPE SLIS_T_EVENT. FORM TOP_OF_PAGE. CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' EXPORTING IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.ENDFORM. PERFORM F_FORMATO_PAGE CHANGING GT_LIST_TOP_OF_PAGE.PERFORM F_FORMATEAR_EVENTOS_ALV USING I_EVENTS[].PERFORM F_GENERAR_LISTA_ALV. FORM F_FORMATEAR_EVENTOS_ALV USING P_EVENTS TYPE SLIS_T_EVENT. DATA: L_EVENTS TYPE SLIS_ALV_EVENT. CLEAR L_EVENTS. L_EVENTS-NAME = 'TOP_OF_PAGE'. L_EVENTS-FORM = 'TOP_OF_PAGE'. APPEND L_EVENTS TO P_EVENTS.ENDFORM. FORM F_FORMATO_PAGE CHANGING GT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.DATA: GS_LINE TYPE SLIS_LISTHEADER. CLEAR GS_LINE. GS_LINE-TYP = 'H'. CONCATENATE SY-DATUM+6(2) '.' SY-DATUM+4(2) '.' SY-DATUM+0(4) INTO FECHA_PROCESO. *-----Fecha de Proceso CONCATENATE 'Fecha de Proceso:' FECHA_PROCESO INTO GS_LINE-INFO SEPARATED BY SPACE. APPEND GS_LINE TO GT_TOP_OF_PAGE.ENDFORM. FORM F_GENERAR_LISTA_ALV. G_PROGRAM = SY-REPID. G_TITULO = SY-TITLE. CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING I_BUFFER_ACTIVE = ' ' I_CALLBACK_PROGRAM = G_PROGRAM IS_LAYOUT = GS_LAYOUT I_SAVE = 'A' I_GRID_TITLE = G_TITULO IT_FIELDCAT = I_FIELDCAT IT_SORT = GS_SORT[] IT_EVENTS = I_EVENTS TABLES T_OUTTAB = T_SALIDA EXCEPTIONS PROGRAM_ERROR = 1 OTHERS = 2. IF SY-SUBRC NE 0. EXIT. ENDIF.ENDFORM.
Disculpa que no esté muy ordenado :P
Saludos,
Blag :smartass:
miguelig81:
hola bueno yo utilizo este form
*&---------------------------------------------------------------------*
*& Form build_eventtab
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_EVENTS[] text
*----------------------------------------------------------------------*
FORM build_eventtab USING p_events TYPE slis_t_event.
DATA: ls_event TYPE slis_alv_event.
* Returns table of possible events for a list type
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = p_events.
* slis_ev_top_of_page
READ TABLE p_events WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE formname_top_of_page TO ls_event-form.
APPEND ls_event TO p_events.
ENDIF.
READ TABLE p_events WITH KEY name = slis_ev_pf_status_set
INTO ls_event.
IF sy-subrc = 0.
MOVE formname_pf_status TO ls_event-form.
APPEND ls_event TO p_events.
ENDIF.
ENDFORM. " build_eventtab
y pones tambien
*---------------------------------------------------------------------*
* FORM TOP_OF_PAGE *
*---------------------------------------------------------------------*
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = heading.
ENDFORM. "TOP_OF_PAGE
*---------------------------------------------------------------------*
* FORM pf_status_set
*---------------------------------------------------------------------*
FORM pf_status_set USING "#EC CALLED
pu_tab_excl_okcode TYPE slis_t_extab.
SET PF-STATUS 'ALV_STATUS'.
SET TITLEBAR 'TITULO1'.
ENDFORM. "pf_status_set
*&---------------------------------------------------------------------*
*& Form build_comment
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_HEADING[] text
*----------------------------------------------------------------------*
FORM build_comment USING p_heading TYPE slis_t_listheader.
DATA: hline TYPE slis_listheader,
text(60) TYPE c,
sep(20) TYPE c,
proceso TYPE i,
w_fecha(20) TYPE c,
w_hora(10) TYPE c,
w_usuario(15) TYPE c,
w_numero TYPE i.
CONCATENATE sy-datum(4) '.' sy-datum+4(2) '.' sy-datum+6(2) INTO w_fecha.
CONCATENATE sy-uzeit(2) ':' sy-uzeit+2(2) ':' sy-uzeit+4(2) INTO w_hora.
* Cabecera
CLEAR hline.
hline-typ = 'H'.
hline-info = text-ti2.
APPEND hline TO p_heading.
CLEAR hline.
hline-typ = 'S'.
hline-key = text-fec.
hline-info = w_fecha.
APPEND hline TO p_heading.
CLEAR hline.
hline-typ = 'S'.
hline-key = text-hor.
hline-info = w_hora.
APPEND hline TO p_heading.
CLEAR hline.
hline-typ = 'S'.
hline-key = text-usu.
hline-info = sy-uname.
APPEND hline TO p_heading.
con este codigo armas y muestra en tu alv, el titulo, la hora, la fecha y el usuario.
ojala te ayude :D
senzao18:
Gracias a los dos... ahorita no tengo chance de probar lo que postearon.. ya ves como son las empresas.... "No es prioridad mostrar el texto" jeje....
Luego les digo como me fue con esto....
Navegación
Ir a la versión completa