MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Cabecera de un ALV???? (foro/showthread.php?t=10164)

fence 10/01/08 10:01:21

Cabecera de un ALV????
 
Hola,

estoy creando una ALV similar al que se genera cuanod se ejecuta la tx. IW39. en la cabecera de la misma debe aparecer e periodo indicado en la pantalla de selección con el típico "DESDE: XX/XX/XXXX HASTA: XX/XX/XXXX" y en la línea de abajo otro dato. Bien, el problema es que no recuerdo cómo se hace la cabecera de una ALV y no dispongo de ningún manual o ejemplo para poder seguir y recordar. Si alguien puede ayudarme....

Un saludo.

Atlas 10/01/08 12:54:56

es un alv clasico o con objetos???

paraujo 14/01/08 12:58:49

Cabecera ALV
 
DATA:
* catálogo de campos: contiene la definicion y los titulos de
* los campos de salida
GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
* cabecera reporte
LT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
* especificaciones de la disposición de la lista
GS_LAYOUT TYPE SLIS_LAYOUT_ALV,

* nombre del programa
GC_REPID LIKE SY-CPROG,

* Variable para el parámetro IS_VARIANT
L_LAYOUT TYPE DISVARIANT.


*---------------------------------------
PERFORM HEADER CHANGING LT_TOP_OF_PAGE.
* Cabecera reporte


* Llamo a la funcion que imprime el listado ALV
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = GC_REPID
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'
* cabecera reporte
IS_LAYOUT = GS_LAYOUT
IT_FIELDCAT = GT_FIELDCAT[]
I_SAVE = 'A'
IS_VARIANT = L_LAYOUT
TABLES
T_OUTTAB = GT_VENTAS
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.

*---------------------------------------------------------------------*
* FORM TOP_OF_PAGE *
*---------------------------------------------------------------------*
FORM TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = LT_TOP_OF_PAGE.

ENDFORM. "top_of_page


*---------------------------------------------------------------------*
* FORM HEADER *
*---------------------------------------------------------------------*
FORM HEADER USING LT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.

DATA: LS_LINE TYPE SLIS_LISTHEADER.

DATA: LS_FECHA TYPE D,
LS_FECHA2 TYPE D.

CLEAR LS_LINE.
LS_LINE-TYP = 'H'.

LS_LINE-INFO = 'Reporte de Ventas'.
APPEND LS_LINE TO LT_TOP_OF_PAGE.
CLEAR LS_LINE.
LS_LINE-TYP = 'S'.

CONCATENATE 'Emitido por:' SY-UNAME INTO LS_LINE-INFO SEPARATED BY SPACE.
APPEND LS_LINE TO LT_TOP_OF_PAGE.

WRITE SY-DATUM DD/MM/YY TO LS_FECHA.

CONCATENATE 'Fecha:' LS_FECHA INTO LS_LINE-INFO SEPARATED BY SPACE.
APPEND LS_LINE TO LT_TOP_OF_PAGE.

CONCATENATE 'Sociedad:' SO_BUKRS-LOW '-' SO_BUKRS-HIGH INTO LS_LINE-INFO SEPARATED BY SPACE.
APPEND LS_LINE TO LT_TOP_OF_PAGE.

CONCATENATE 'Clientes:' SO_KUNAG-LOW '-' SO_KUNAG-HIGH INTO LS_LINE-INFO SEPARATED BY SPACE.
APPEND LS_LINE TO LT_TOP_OF_PAGE.

WRITE SO_FKDAT-LOW DD/MM/YY TO LS_FECHA.
WRITE SO_FKDAT-HIGH DD/MM/YY TO LS_FECHA2.

CONCATENATE 'Fechas:' LS_FECHA '-' LS_FECHA2 INTO LS_LINE-INFO SEPARATED BY SPACE.
APPEND LS_LINE TO LT_TOP_OF_PAGE.


ENDFORM. "HEADER


Espero te sirva, yo soy nueva en esto y así me funcionó bien.
Saludos.

darona 15/01/08 14:14:06

Se hace en el layout.
Puedes usar el campo TITLE o el SMALLTITLE.

Saludos,
David.

fence 16/01/08 07:28:36

Muchas gracias por vuestra ayuda. Me ha sido de gran utilidad


Husos Horarios son GMT. La hora en este momento es 17:00:26.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web