#1
|
|||
|
|||
Duda al imprimir un ALV
Hola,
Tengo una duda sobre la impresión de un ALV. Resulta que a la hora de imprimir, no me imprime la parte del "top_of_page", es decir, la parte en la que tengo puesto un fondo con su respectivo logo y algun que otro dato (como la ubicación o el mensaje que indica que no se ha introducido ninguna ubicación). ¿Que hay que hacer para que se imprima tambien esa parte del ALV? Aparte, tambien quisiera sacar el nombre del usuario, la fecha y la hora en esa cabecera. ¿Existe alguna forma de hacerlo? Espero que alguien pueda ayudarme. Gracias. |
#2
|
|||
|
|||
Buenas,
para imprimir la hora, el usuario y la fecha en el formulario podrias hacer lo siguiente: Defines: data cabecera type SLIS_T_LISTHEADER. data wa_cabecera like LINE OF cabecera. FORM CREA_CABECERA . wa_cabecera-typ = 'S'. wa_cabecera-key = 'Usuario: '. wa_cabecera-info = sy-uname. APPEND wa_cabecera to cabecera. wa_cabecera-typ = 'S'. wa_cabecera-key = 'Fecha: '. data: fecha_formateada(10). write sy-datum to fecha_formateada USING EDIT MASK '__/__/____'. wa_cabecera-info = fecha_formateada. APPEND wa_cabecera to cabecera. wa_cabecera-typ = 'S'. wa_cabecera-key = 'Hora: '. wa_cabecera-info = sy-uzeit. APPEND wa_cabecera to cabecera. ENDFORM. Te saldrá como resultado en la cabecera lo siguiente: ------------------------------- Usuario: NOMBRE_USUARIO Fecha: 09/03/2009 Hora: 17:41:23 ------------------------------- Espero que te ayude... |
#3
|
|||
|
|||
Disculpa pero...después donde se supone que debo usar la variable "cabecera"?
Pensaba que habría que pasarsela al parámetro de I_CALLBACK_TOP_OF_PAGE que está en la función REUSE_ALV_GRID_DISPLAY...pero no me visualiza nada. ¿Podrías decirme donde usarla? Gracia de todas formas por la ayuda...creo que por aquí van los tiros. |
#4
|
|||
|
|||
Añade este form:
*&-------------------------------------------------------------------* *& Form TOP_OF_PAGE *&-------------------------------------------------------------------* *& Función que escribe el contenido de una tabla tipo slis_t_header *&-------------------------------------------------------------------* FORM top_of_page. CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' EXPORTING it_list_commentary = cabecera. ENDFORM. |
#5
|
|||
|
|||
Prueba añadiende esto:
PERFORM asocia_eventos. CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING IT_EVENTS = t_eventos FORM ASOCIA_EVENTOS . DATA wa LIKE LINE OF t_eventos. CALL FUNCTION 'REUSE_ALV_EVENTS_GET' IMPORTING ET_EVENTS = t_eventos EXCEPTIONS LIST_TYPE_WRONG = 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. READ TABLE t_eventos INTO wa with key name = 'TOP_OF_PAGE'. wa-form = 'TOP_OF_PAGE_F'. modify t_eventos FROM wa index sy-tabix. * (asocia al evento TOP_OF_PAGE la subrutina TOP_OF_PAGE_F) ENDFORM. " ASOCIA_EVENTOS FORM TOP_OF_PAGE_F. CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' EXPORTING IT_LIST_COMMENTARY = cabecera. ENDFORM. Espero que te sirva... |
#6
|
|||
|
|||
perdona pero.....como esta declarado t_eventos?
|
#7
|
|||
|
|||
Supongo que sera así:
DATA T_EVENTOS TYPE SLIS_T_EVENT. Cre que me voy acercando cada vez más a la solución. |
#8
|
|||
|
|||
Si, es del tipo SLIS_T_EVENT.
Para saber el tipo pincha sobre el nombre de la funcion del ALV 'REUSE_ALV_GRID_DISPLAY' o la que estes usando, y en la pestaña 'import' podras ver todos los tipos de datos que usa. Animo que ya lo tienes! |
#9
|
|||
|
|||
Y con eso....conseguis que al imprimir en PDF os salga una cabecera con el usuario, la fecha y la hora???
Es que......al debugear, tengo en T_EVENTOS los datos de usuario, fecha y hora....pero no se si los estoy pasando a la función REUSE_ALV_GRID_DISPLAY. Cuando ejecuto, veo una cabecera con un fondo y un logo que yo mismo he puesto....pero a la hora de imprimir a PDF solo sale el título del ALV como cabecera. |
#10
|
|||
|
|||
Tienes el evento 'TOP_OF_PAGE' en tu lista de eventos del ALV?.
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|