06-01-2009 9:22 AM
hi,
i have created an ALV report.it is working properly but i want that there should be someheading while alv report display.but i am not understanding how to do so.plz tell me how to solve the problem???
thanx,
vaneet thakur
06-01-2009 9:26 AM
Hi,
Refer Following code
&----
*& Form sub_top_of_page *
&----
This form is to build the Page Header *
----
FORM sub_top_of_page .
*--Local Variable
DATA : lv_title(120) TYPE c, " Title
lv_blart(30) TYPE c,
lv_date(30) TYPE c,
lv_bdate1(10) TYPE c,
lv_bdate2(10) TYPE c,
lv_hkont(10) TYPE c.
*--Local Work Area
DATA : lwa_line TYPE slis_listheader. " Hold list header
WRITE : p_hkont TO lv_hkont.
SHIFT lv_hkont LEFT DELETING LEADING '0'.
*--Title Display
lwa_line-typ = 'H'. " header
lv_title = sy-title.
lwa_line-info = lv_title.
APPEND lwa_line TO it_header.
CLEAR lwa_line.
*--Compnay code
lwa_line-typ = 'S'. " Item
WRITE: p_bukrs TO lv_month.
lwa_line-key = text-017.
lwa_line-info = p_bukrs.
APPEND lwa_line TO it_header.
CLEAR lwa_line.
*--GL account
lwa_line-typ = 'S'. " Item
WRITE: p_bud TO lv_bud.
lwa_line-key = text-018.
lwa_line-info = lv_hkont.
APPEND lwa_line TO it_header.
CLEAR lwa_line.
IF NOT s_blart[] IS INITIAL.
IF NOT s_blart-high IS INITIAL.
CONCATENATE s_blart-low 'to' s_blart-high INTO lv_blart SEPARATED BY space.
*--Document type
lwa_line-typ = 'S'. " Item
WRITE: p_bud TO lv_bud.
lwa_line-key = text-019.
lwa_line-info = lv_blart.
ELSE.
*--Document type
lwa_line-typ = 'S'. " Item
WRITE: p_bud TO lv_bud.
lwa_line-key = text-019.
lwa_line-info = s_blart-low.
ENDIF.
ENDIF.
APPEND lwa_line TO it_header.
CLEAR: lwa_line.
IF NOT s_budat-high IS INITIAL.
WRITE: s_budat-low TO lv_bdate1.
WRITE: s_budat-high TO lv_bdate2.
CONCATENATE lv_bdate1 'to' lv_bdate2 INTO lv_date SEPARATED BY space.
*--Posting Date
lwa_line-typ = 'S'. " Item
WRITE: p_bud TO lv_bud.
lwa_line-key = text-020.
lwa_line-info = lv_date.
ELSE.
*--Posting Date
lwa_line-typ = 'S'. " Item
WRITE: s_budat-low TO lv_bdate1.
lwa_line-key = text-020.
lwa_line-info = lv_bdate1.
ENDIF.
APPEND lwa_line TO it_header.
CLEAR: lwa_line.
*--This funcation module will display the top of the page
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = it_header.
*--Free
FREE : it_header.
ENDFORM. "sub_top_of_page
Regards,
Prashant
06-01-2009 9:28 AM
06-01-2009 9:29 AM
hi,
data : dl_text(255) type c.
document->add_gap(
width = 1
).
document->add_text(
EXPORTING
text = 'wipro ltd.'
sap_fontsize = 'Large'
sap_color = cl_dd_area=>list_key_int
).
CALL METHOD document->new_line.
document->add_gap(
width = 4
).
document->add_text(
EXPORTING
text = 'Report: ZFRS6596'
sap_fontsize = 'Medium'
).
CALL METHOD document->new_line.
document->add_gap(
width = 4
).
document->add_text(
EXPORTING
text = 'Date:'
sap_fontsize = 'Medium'
).
CONCATENATE sy-datum4(2) ' / ' sy-datum6(2) ' / ' sy-datum(4)
into dl_text separated by cl_abap_char_utilities=>horizontal_tab.
call method document->add_text
exporting
text = dl_text.
06-01-2009 9:30 AM
06-01-2009 9:29 AM
Hi vaneet,
Use the following code,
DATA : alvdate(10) TYPE c, " VARIALBLE TO STORE FORMATTED DATE
it_comment TYPE slis_t_listheader, " COMMENTARY FOR HEADER
wa_comment TYPE slis_listheader. " WA FOR COMMENTARY
CALL FUNCTION 'HRGPBS_HESA_DATE_FORMAT'
EXPORTING
p_date = sy-datum
IMPORTING
datestring = alvdate.
wa_comment-typ = 'S'.
wa_comment-info = 'Title of the report'.
APPEND wa_comment TO it_comment.
wa_comment-typ = 'S'.
wa_comment-info = alvdate.
APPEND wa_comment TO it_comment.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = lv_repid
i_callback_top_of_page = 'TOP_OF_PAGE'
i_grid_title = text-008
is_layout = it_layout
it_fieldcat = it_fieldcat[]
TABLES
t_outtab = it_final
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.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = it_comment.
ENDFORM. "top_of_page
Regards,
Ravibabu. A
06-01-2009 9:36 AM
hi
if u r trying to display ALV using Function Modules
then to display the header information use this coding
Building ALV :
Type-pools : SLIS.
Data : it_header type slis_t_listheader,
wa_header type slis_listheader.
perform main_fieldcatalog.
perform layout.
perform list_header.
perform event.
perform alv_display.
form list_header .
wa_header-typ = 'A'. (H = Header, S = Selection, A = Action)
wa_header-info = '<Enter the Header Info here>'.
append wa_header to it_header.
endform. " LIST_HEADER
form top_of_page .
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = it_header
i_logo = 'SATYAM'.
endform. " TOP_OF_PAGE
Regards
06-01-2009 9:51 AM
Hi,
Write the following code for heading.
PERFORM FIELDCAT_AUFM.
*- EVENT CATLog
PERFORM EVENT_CAT.
*- Display the ALV HIERSEQ LIST DISPLAY
PERFORM DISPLY_FINAL.
FORM EVENT_CAT .
DATA: STR1 TYPE STRING,
STR2 TYPE STRING,
STR3 TYPE STRING,
STR4 TYPE STRING.
CONCATENATE 'Process Order :' S_AUFNR-LOW ' - ' S_AUFNR-HIGH INTO STR1.
CONCATENATE 'Material :' S_MATNR-LOW ' - ' S_MATNR-HIGH INTO STR3.
CONCATENATE 'Plant :' S_WERKS-LOW ' - ' S_WERKS-HIGH INTO STR4.
TIT_CAT 'H' '' 'In Bold u want to write' .
TIT_CAT 'S' ' ' STR1 .
TIT_CAT 'S' ' ' STR2 .
TIT_CAT 'S' ' ' STR3 .
TIT_CAT 'S' ' ' STR4 .
WA_EVENTS-NAME = 'TOP_OF_PAGE'.
WA_EVENTS-FORM = 'SUB1'.
APPEND WA_EVENTS TO IT_EVENTS.
ENDFORM. " EVET_CAT
*&---------------------------------------------------------------------*
*& Form sub1
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM SUB1 .
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = TB_COMMENT
* I_LOGO =
* I_END_OF_LIST_GRID =
.
ENDFORM. " pre_event
FORM DISPLY_AUFM .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = V_PRGNAME
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
* I_CALLBACK_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME =
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS =
IS_LAYOUT = WA_LAYOUT
IT_FIELDCAT = IT_FIELDCAT[]
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
IT_EVENTS = IT_EVENTS[]
* IT_EVENT_EXIT =
* IS_PRINT =
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_HTML_HEIGHT_TOP = 0
* I_HTML_HEIGHT_END = 0
* IT_ALV_GRAPHICS =
* IT_HYPERLINK =
* IT_ADD_FIELDCAT =
* IT_EXCEPT_QINFO =
* IR_SALV_FULLSCREEN_ADAPTER =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = IF_AUFM1
* 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. " DISPLY_AUFM
Regards
Lalit
06-01-2009 9:59 AM
Sorry unable to post in code format.
Edited by: LL D on Jun 1, 2009 11:02 AM
06-01-2009 10:09 AM
Dear vaneet,
use the below code you can able to display heading in ALV
form top_of_page .
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = i_header.
.
endform. " TOP_OF_PAGE
&----
*& Form LIST_HEADER
&----
Providing list header for top-of-page
----
form list_header .
Local data declaration
data: l_date type char10, "Date
l_time(8) type c. "Time
wa_header-typ = 'H'.
wa_header-info = 'Sales Order Information Report'.
append wa_header to i_header.
Run date Display
clear l_date.
wa_header-typ = 'S'.
write: sy-datum to l_date dd/mm/yyyy.
wa_header-key = 'Run Date :'(002).
wa_header-info = l_date.
append wa_header to i_header.
clear: wa_header.
wa_header-typ = 'S'.
WRITE: sy-uzeit TO l_time .
l_time0(2) = sy-uzeit0(2).
l_time+2(1) = ':'.
l_time3(2) = sy-uzeit2(2).
l_time+5(1) = ':'.
l_time6(2) = sy-uzeit4(2).
wa_header-key = 'Run Time :'(009).
wa_header-info = l_time.
append wa_header to i_header.
clear: wa_header.
endform. " LIST_HEADER
Cheers
fareed