2008 Jan 09 11:36 AM
hi frenz
I have made an alv report use Reuse alv grid display .
I want to display the heading in the alv as
Company : "company code name " date : from dd:mm:yy to dd:mm:yy .
Plzzz help
Thanks
Ashu
hi frenz
I have made an alv report use Reuse alv grid display .
I want to display the heading in the alv as
Company : "company code name " date : from dd:mm:yy to dd:mm:yy .
Plzzz help
Thanks
Ashu
2008 Jan 09 11:40 AM
Hi,
U can use the function Module REUSE_ALV_COMMENTARY_WRITE in the Top of page event of the REUSE_ALV_GRID_DISPLAY.
for that u should populate the events table
Refer the following code
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = L_REPID
I_CALLBACK_PF_STATUS_SET = G_STATUS
I_CALLBACK_USER_COMMAND = G_USER_COMMAND
I_STRUCTURE_NAME = 'T_FINAL'
IS_LAYOUT = WG_GS_LAYOUT
IT_FIELDCAT = IG_FIELDCATLOG[]
IT_SORT = IG_SORTCAT[]
I_SAVE = G_SAVE
IS_VARIANT = WG_VARIANT
IT_EVENTS = IG_EVENTS[]
TABLES
T_OUTTAB = IG_FINAL[].
FORM TOP_OF_PAGE.
DATA : L_TIME(10) TYPE C,
L_DATE1(10) TYPE C.
WRITE SY-DATUM TO L_DATE1 MM/DD/YYYY.
WRITE SY-UZEIT TO L_TIME USING EDIT MASK '__:__:__'.
CLEAR IG_LIST_COMMENTS_LN.
IG_LIST_COMMENTS_LN-TYP = C_H.
IG_LIST_COMMENTS_LN-KEY = SPACE.
IG_LIST_COMMENTS_LN-INFO = 'Caritor Ind Pvt. Ltd'(022).
APPEND IG_LIST_COMMENTS_LN TO IG_LIST_COMMENTS.
CLEAR IG_LIST_COMMENTS_LN.
IG_LIST_COMMENTS_LN-TYP = C_S.
IG_LIST_COMMENTS_LN-KEY = 'Name:'(021).
IG_LIST_COMMENTS_LN-INFO = SY-REPID.
APPEND IG_LIST_COMMENTS_LN TO IG_LIST_COMMENTS.
CLEAR IG_LIST_COMMENTS_LN.
IG_LIST_COMMENTS_LN-TYP = C_S.
IG_LIST_COMMENTS_LN-KEY = 'Time:'(020).
IG_LIST_COMMENTS_LN-INFO = L_TIME.
APPEND IG_LIST_COMMENTS_LN TO IG_LIST_COMMENTS.
CLEAR IG_LIST_COMMENTS_LN.
IG_LIST_COMMENTS_LN-TYP = C_S.
IG_LIST_COMMENTS_LN-KEY = 'Date:'(019).
IG_LIST_COMMENTS_LN-INFO = L_DATE1.
APPEND IG_LIST_COMMENTS_LN TO IG_LIST_COMMENTS.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = IG_LIST_COMMENTS.
CLEAR : IG_EVENTS,
IG_LIST_COMMENTS.
REFRESH : IG_EVENTS,
IG_LIST_COMMENTS.
ENDFORM. "TOP-OF-PAGE
FORM HANDLE_EVENT.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = IG_EVENTS.
SORT IG_EVENTS BY NAME FORM.
READ TABLE IG_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
INTO IG_EVENTS_LN.
IF SY-SUBRC = 0.
MOVE G_FORM TO IG_EVENTS_LN-FORM.
MODIFY IG_EVENTS FROM IG_EVENTS_LN INDEX SY-TABIX.
ENDIF.
ENDFORM. " handle_event
Edited by: gayathri jayajeevan on Jan 9, 2008 5:11 PM
2008 Jan 09 11:49 AM
i am sending some sample code for this kind of requirement.
TABLES:mara ,
marc.
DATA: BEGIN OF t_mara OCCURS 0,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
laeda TYPE mara-laeda,
werks TYPE marc-werks,
pstat TYPE marc-pstat,
plifz TYPE marc-plifz,
END OF t_mara,
BEGIN OF t_marc OCCURS 0,
matnr TYPE marc-matnr,
werks TYPE marc-werks,
pstat TYPE marc-pstat,
plifz TYPE marc-plifz,
END OF t_marc.
SELECT-OPTIONS: s_matnr FOR mara-matnr.
PARAMETERS: p_werks TYPE marc-werks.
SELECT matnr ersda laeda FROM mara INTO TABLE t_mara
WHERE
matnr IN s_matnr.
IF sy-subrc = 0.
SELECT matnr werks FROM marc
INTO TABLE t_marc
FOR ALL ENTRIES IN t_mara
WHERE
matnr = t_mara-matnr
AND werks = p_werks.
IF sy-subrc = 0.
LOOP AT t_mara.
READ TABLE t_marc WITH KEY matnr = t_mara-matnr.
IF sy-subrc = 0.
t_mara-werks = t_marc-werks.
t_mara-pstat = t_marc-pstat.
t_mara-plifz = t_marc-plifz.
MODIFY t_mara TRANSPORTING werks pstat plifz.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
TYPE-POOLS: slis.
DATA: t_field_catalog TYPE slis_t_fieldcat_alv WITH HEADER LINE.
DATA: w_pos TYPE i.
DATA : lh TYPE slis_t_listheader,
ls TYPE slis_listheader .
DATA : l_date(10).
DATA : l_date1(20).
PERFORM field_catalog TABLES t_field_catalog
USING: 'T_MARA' 'MATNR' 'X' 'Material' '20' w_pos '',
'T_MARA' 'ERSDA' ' ' 'Creation Date' '25' w_pos '',
'T_MARA' 'LAEDA' ' ' 'Modified Date' '25' w_pos ''.
'T_MARA' 'WERKS' 'X' 'Plant' '10' w_pos ''.
ls-typ = 'H'.
ls-info = 'Sales Document Flow'.
APPEND ls TO lh.
ls-typ = 'S'.
WRITE: sy-datum TO l_date USING EDIT MASK '__/__/____'.
CONCATENATE 'DATE :' l_date INTO l_date1 SEPARATED BY space.
ls-info = l_date1.
APPEND ls TO lh.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
i_callback_user_command = 'USER_COMM'
i_callback_top_of_page = 'TOP'
it_fieldcat = t_field_catalog[]
i_default = 'X'
TABLES
t_outtab = t_mara .
&----
*& Form TOP
&----
text
----
FORM top .
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = lh
i_logo = 'ENJOYSAP_LOGO'
I_END_OF_LIST_GRID =
.
ENDFORM . "TOP
*
&----
*& Form field_catalog
&----
text
----
----
FORM field_catalog TABLES t_field_catalog STRUCTURE t_field_catalog
USING fp_tabname TYPE any
fp_fieldname TYPE any
fp_key TYPE any
fp_text TYPE any
fp_output_len TYPE any
fp_pos TYPE any
fp_do_sum TYPE any.
t_field_catalog-tabname = fp_tabname.
t_field_catalog-fieldname = fp_fieldname.
t_field_catalog-seltext_l = fp_text.
t_field_catalog-key = fp_key.
t_field_catalog-outputlen = fp_output_len.
t_field_catalog-col_pos = fp_pos.
APPEND t_field_catalog.
CLEAR t_field_catalog.
fp_pos = fp_pos + 1.
ENDFORM. " field_catalog
**************************************************************
ALV INTERACTIVE :- *************
*****************************************************************
FORM user_comm USING r_ucomm LIKE sy-ucomm
r_selfield TYPE slis_selfield.
DATA: t_field_catalog1 TYPE slis_t_fieldcat_alv WITH HEADER LINE.
DATA: w_pos1 TYPE i.
PERFORM field_catalog1 TABLES t_field_catalog1
USING: 'T_MARA' 'WERKS' 'X' 'PLANT' '20' w_pos1 '',
'T_MARA' 'PSTAT' ' ' 'MAINTENANCE STATUS' '25' w_pos1 '',
'T_MARA' 'PLIFZ' ' ' 'DELIVERY TIME' '25' w_pos1 ''.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
it_fieldcat = t_field_catalog1[]
i_default = 'X'
TABLES
t_outtab = t_mara.
ENDFORM. "user_comm
FORM field_catalog1 TABLES t_field_catalog1 STRUCTURE
t_field_catalog
USING fp_tabname TYPE any
fp_fieldname TYPE any
fp_key TYPE any
fp_text TYPE any
fp_output_len TYPE any
fp_pos TYPE any
fp_do_sum TYPE any.
t_field_catalog1-tabname = fp_tabname.
t_field_catalog1-fieldname = fp_fieldname.
t_field_catalog1-seltext_l = fp_text.
t_field_catalog1-key = fp_key.
t_field_catalog1-outputlen = fp_output_len.
t_field_catalog1-col_pos = fp_pos.
APPEND t_field_catalog1.
CLEAR t_field_catalog1.
fp_pos = fp_pos + 1.
ENDFORM. " field_catalog
if useful reward some points.
2008 Jan 09 11:46 AM
Hi,
Please refer to the link below :
http://www.sapdev.co.uk/reporting/alv/alvgrid_rephead.htm
Thanks,
Sriram Ponna.
2008 Jan 09 11:48 AM
Hi,
Refer this code
&----
*& Form sub_create_events *
&----
This form will display the ALV Events *
----
FORM sub_create_events .
*--Local Work Area
DATA: lwa_event TYPE slis_alv_event. "Work area for Events
*--Call Function to display the events for the ALV
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 1
IMPORTING
et_events = it_events.
*--Sort by Name
SORT it_events BY name.
*--Clear
CLEAR lwa_event.
READ TABLE it_events INTO lwa_event WITH KEY name = slis_ev_top_of_page
BINARY SEARCH.
IF sy-subrc = 0.
MOVE c_top_of_page TO lwa_event-form.
MODIFY it_events FROM lwa_event TRANSPORTING form WHERE
name = slis_ev_top_of_page.
ENDIF.
*--Clear
CLEAR : lwa_event.
ENDFORM. "sub_create_events
&----
*& 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
2008 Jan 09 12:24 PM
Hi,
For Alv Headings, u can use listHeader.
Data: t_listheader type slis_t_listheader,
w_listheader type
slis_listheader.
In list header we have 3 categories :
1. Header --->It is used for main headings.
2. Section --> It is used for subheadings.
3. Action --> It is used for numbers i.e.,
dates,etc.
Eg.,
w_listheader-header = ' heading',
w_listheader-section = 'sub heading'.
w_listheader-action =
' date'.
Append w_listheader to t_listheader.
Clear w_listheader.
Here we have to call a function module:
Reuse_alv_commentary_write.
bye.
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |