‎2007 Jun 27 8:44 AM
Hi,
What are the important factors to dispaly the header information in alv report.
Suppose I have passed all the header information in fm REUSE_ALV_COMMENTARY_WRITE.
After that what I need to do so that I can see my desired header in alv output.
Actually my header values are properly passed in fm REUSE_ALV_COMMENTARY_WRITE.
But it is not display in output.
Anybody will pls suggest me what i need to do??
‎2007 Jun 27 8:50 AM
Hello,
check this sample.
* Displaying the top of page
PERFORM REPORT_HEADING.
* Work Area TOP-OF-PAGE commentary
DATA: WA_COMMENTARY TYPE SLIS_LISTHEADER,
L_F_INFO(132),
L_F_DATUM(10),
L_F_TIME(8),
L_F_LOW LIKE PRPS-POSID,
L_F_HIGH LIKE PRPS-POSID,
L_F_DATL(10),
L_F_DATH(10).
CLEAR : WA_COMMENTARY,
IT_COMMENTARY,
IT_COMMENTARY[].
CONCATENATE TEXT-013 SY-REPID INTO L_F_INFO
SEPARATED BY ' '.
WA_COMMENTARY-TYP = 'H'.
WA_COMMENTARY-INFO = L_F_INFO.
APPEND WA_COMMENTARY TO IT_COMMENTARY.
WRITE SY-DATUM TO L_F_DATUM.
WRITE SY-UZEIT TO L_F_TIME.
CONCATENATE TEXT-017 L_F_DATUM TEXT-018 L_F_TIME INTO L_F_INFO
SEPARATED BY ' '.
WA_COMMENTARY-TYP = 'S'.
WA_COMMENTARY-INFO = L_F_INFO.
APPEND WA_COMMENTARY TO IT_COMMENTARY.
L_F_INFO = TEXT-001.
WA_COMMENTARY-TYP = 'S'.
WA_COMMENTARY-INFO = L_F_INFO.
APPEND WA_COMMENTARY TO IT_COMMENTARY.
ENDFORM
DATA: IT_VARIANT LIKE DISVARIANT.
* For storing the variant layout
IT_VARIANT-REPORT = SY-REPID.
CLEAR G_T_OUTTAB.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = IT_VARIANT-REPORT
I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'
IT_FIELDCAT = IT_FIELDCAT
I_SAVE = 'A'
IS_VARIANT = IT_VARIANT
TABLES
T_OUTTAB = G_T_OUTTAB
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.
*&---------------------------------------------------------------------*
*& Form TOP-OF-PAGE
*&---------------------------------------------------------------------*
* For Top of page
*----------------------------------------------------------------------*
FORM TOP_OF_PAGE. "#EC CALLED
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = IT_COMMENTARY.
ENDFORM. "top_of_page
Regards,
Vasanth
‎2007 Jun 27 8:55 AM
Hi Neha,
Refer this small piece of code.
In the I_CALLBACK_TOP_OF_PAGE parameter pass TOP_OF_PAGE and create the form with the same name TOP_OF_PAGE and call FM "REUSE_ALV_COMMENTARY_WRITE" in that form
FORM display_alv
TABLES pit_out STRUCTURE wa_out.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = it_layout
it_fieldcat = it_fieldcat[]
i_callback_top_of_page = 'TOP-OF-PAGE'
TABLES
t_outtab = pit_out
EXCEPTIONS
program_error = 1
OTHERS = 2.
ENDFORM. " display_alv
************************************************************************
************************************************************************
TOP-OF-PAGE **
************************************************************************
************************************************************************
FORM top-of-page.
DATA: lit_header TYPE slis_t_listheader,
lwa_header TYPE slis_listheader.
CLEAR lwa_header.
lwa_header-typ = 'H'.
lwa_header-info = text-032.
APPEND lwa_header TO lit_header.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = lit_header.
ENDFORM. "TOP-OF-PAGE
‎2007 Jun 27 8:57 AM
HI,
SEE TO THIS CODE THIS MIGHT HELP YOU OUT
TYPES :
DATA : FCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE
EVENTS TYPE SLIS_T_EVENT WITH HEADER LINE
START-OF-SELECTION.
SELECT QUAERY
FCAT FILING UP
EVENTS-FORM = 'ANY1'.
EVENTS-NAME = 'TOP-OF-PAGE'.
APPEND EVENTS.
CLEAR EVENTS.
CALL FUNCTION REUSE_ALV_GRID_DISPLAY
I_CALLBACK_PROGRAM = .
IT_FIELDCAT = FCAT[].
IT_EVENTS = EVENTS[]
TABLES
T_OUTTAB = ITAB.
FORM ANY1.
HEADER-TYP = 'H'.
HEADER-INFO = 'MATERIAL DETAILS'.
APPEND HEADER.
CLEAR HEADER
CALL FUNCTION REUSE_ALV_COMMENTARY_WRITE.
IT_LIST_COMMENTERY = HEADER[]
I_LOGO = 'SAPENJOY-LOGO'
ENFORM.
YOU WILL FIND THE LOGO NAME IN TCODE OAER
‎2007 Jun 27 8:58 AM
Hi neha,
In the event buiding perform do this:
----
FORM ZF_BUILD_EVENTCAT USING P_I_EVENT TYPE SLIS_T_EVENT.
DATA: L_EVENT TYPE SLIS_ALV_EVENT.
REFRESH P_I_EVENT .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = P_I_EVENT
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.
CLEAR T_EVENT .
*-- SORT THE TABLE
SORT P_I_EVENT.
READ TABLE P_I_EVENT WITH KEY NAME = SLIS_EV_TOP_OF_PAGE INTO
T_EVENT BINARY SEARCH.
IF SY-SUBRC = 0.
MOVE 'TOP_OF_PAGE' TO T_EVENT-FORM.
APPEND T_EVENT TO P_I_EVENT.
ENDIF.
FORM ZF_BUILD_LISTHEADER
USING P_IT_LISTHEADER TYPE SLIS_T_LISTHEADER.
DATA: L_LISTHEADER TYPE SLIS_LISTHEADER.
REFRESH P_IT_LISTHEADER.
CLEAR L_LISTHEADER.
L_LISTHEADER-TYP = 'H'.
L_LISTHEADER-INFO = TEXT-001.
APPEND L_LISTHEADER TO P_IT_LISTHEADER.
CLEAR L_LISTHEADER.
L_LISTHEADER-TYP = 'H'.
L_LISTHEADER-INFO = TEXT-002.
APPEND L_LISTHEADER TO P_IT_LISTHEADER.
ENDFORM. " ZF_BUILD_LISTHEADER
maintain watevr text u wanna print in Text-001 an text-002.
and pass the event table in the fm REUSE_ALV_GRID_DISPLAY
this way u will be able to do.
Regards,
Sapna