2007 Jun 21 6:33 AM
Hi Friends,
I am having a problem in the report I am not able to display the header details in the ALV report any suggestions friends,i am sending the code along with this mail.
Regards
Dinesh
REPORT YTEST5.
TABLES:vbrk,VBRP.
TYPES:
BEGIN OF vbrk_struct ,
vbeln type vbrk-vbeln,
fkart type vbrk-fkart,
fkdat type vbrk-fkdat,
bukrs type vbrk-bukrs,
netwr type vbrk-netwr,
END OF vbrk_struct.
TYPES:
BEGIN OF vbrp_struct,
vbeln type vbrp-vbeln,
posnr type vbrp-posnr,
matnr type vbrp-matnr,
fkimg type vbrp-fkimg,
aubel type vbrp-aubel,
kostl type vbrp-kostl,
ps_psp_pnr type vbrp-ps_psp_pnr,
arktx type vbrp-arktx,
END OF vbrp_struct.
TYPES:
BEGIN OF display_struct,
vbeln type vbrk-vbeln,
fkart type vbrk-fkart,
fkdat type vbrk-fkdat,
bukrs type vbrk-bukrs,
netwr type vbrk-netwr,
posnr type vbrp-posnr,
matnr type vbrp-matnr,
fkimg type vbrp-fkimg,
aubel type vbrp-aubel,
kostl type vbrp-kostl,
ps_psp_pnr type vbrp-ps_psp_pnr,
arktx type vbrp-arktx,
END OF display_struct .
DATA: v_index LIKE sy-tabix.
DATA: t_vbrk_itab TYPE STANDARD TABLE OF vbrk_struct .
DATA: t_vbrp_itab TYPE STANDARD TABLE OF vbrp_struct .
DATA: display_itab TYPE STANDARD TABLE OF display_struct .
data:i_header1 type slis_t_listheader with header line.
DATA: S_FIELDCATALOG TYPE SLIS_FIELDCAT_ALV.
DATA: T_FIELDCATALOG1 TYPE SLIS_T_FIELDCAT_ALV.
DATA: V_REPID TYPE SYREPID.
FIELD-SYMBOLS: <fs_struct1> TYPE vbrk_struct,
<fs_struct2> TYPE vbrp_struct,
<fs_struct3> TYPE display_struct.
SELECT-OPTIONS s_vbeln FOR vbrk-vbeln.
SELECT-OPTIONS s_bukrs FOR vbrk-bukrs.
SELECT-OPTIONS s_fkdat FOR vbrk-fkdat.
START-OF-SELECTION
PERFORM GET_DATA1.
PERFORM GET_DATA2.
PERFORM GET_DATA3.
Perform Fieldcatlog
PERFORM DISPLAY_DATA.
&----
*& Form GET_DATA1
&----
text
----
--> p1 text
<-- p2 text
----
form GET_DATA1 .
SELECT vbeln fkart fkdat bukrs netwr FROM vbrk
INTO CORRESPONDING FIELDS OF TABLE
t_vbrk_itab
WHERE
bukrs IN s_bukrs AND
fkdat IN s_fkdat AND
vbeln IN s_vbeln.
endform. " GET_DATA1
&----
*& Form GET_DATA2
&----
text
----
--> p1 text
<-- p2 text
----
form GET_DATA2 .
SELECT vbeln posnr matnr fkimg aubel kostl ps_psp_pnr arktx FROM vbrp
INTO CORRESPONDING FIELDS OF TABLE
t_vbrp_itab
FOR ALL ENTRIES IN
t_vbrk_itab
WHERE vbeln = t_vbrk_itab-vbeln.
endform. " GET_DATA2
&----
*& Form GET_DATA3
&----
text
----
--> p1 text
<-- p2 text
----
FORM GET_DATA3 .
SORT t_vbrk_itab BY vbeln.
SORT t_vbrp_itab BY vbeln.
CLEAR: v_index.
LOOP AT t_vbrk_itab ASSIGNING <fs_struct1>.
READ TABLE t_vbrp_itab ASSIGNING <fs_struct2>
WITH KEY vbeln = <fs_struct1>-vbeln BINARY SEARCH.
MOVE sy-tabix TO v_index.
WHILE sy-subrc IS INITIAL AND <fs_struct1>-vbeln = <fs_struct2>-vbeln.
MOVE: <fs_struct2>-vbeln TO <fs_struct3>-vbeln,
<fs_struct2>-posnr TO <fs_struct3>-posnr,
<fs_struct2>-matnr TO <fs_struct3>-matnr,
<fs_struct2>-fkimg TO <fs_struct3>-fkimg,
<fs_struct2>-aubel TO <fs_struct3>-aubel,
<fs_struct2>-kostl TO <fs_struct3>-kostl,
<fs_struct2>-ps_psp_pnr TO <fs_struct3>-ps_psp_pnr,
<fs_struct2>-arktx TO <fs_struct3>-arktx.
MOVE:
<fs_struct1>-fkart TO <fs_struct3>-fkart,
<fs_struct1>-fkdat TO <fs_struct3>-fkdat,
<fs_struct1>-bukrs TO <fs_struct3>-bukrs,
<fs_struct1>-netwr TO <fs_struct3>-netwr.
APPEND <fs_struct3> TO display_itab.
CLEAR display_itab.
ADD 1 TO v_index.
READ TABLE t_vbrp_itab ASSIGNING <fs_struct2> INDEX v_index.
ENDWHILE.
ENDLOOP.
ENDFORM. " GET_DATA3
&----
*& Form Fieldcatlog
&----
text
----
--> p1 text
<-- p2 text
----
form Fieldcatlog .
DEFINE MACRO_F.
S_FIELDCATALOG-FIELDNAME = &1.
s_fieldcatalog-seltext_m = &2.
S_FIELDCATALOG-COL_POS = &3.
APPEND S_FIELDCATALOG TO T_FIELDCATALOG1.
CLEAR S_FIELDCATALOG.
END-OF-DEFINITION.
MACRO_F 'VBELN' ' Billing Document No' 1.
MACRO_F 'FKART' ' Billing Type ' 2.
MACRO_F 'FKDAT' ' Billing date for billing index' 3.
MACRO_F 'BUKRS' ' Company code ' 4.
MACRO_F 'NETWR' ' Net Currency' 5.
MACRO_F 'POSNR' ' Billing item' 6.
MACRO_F 'MATNR' ' Material No' 7.
MACRO_F 'FKIMG' ' Actual Invoiced Quantity' 8.
MACRO_F 'AUBEL' ' Sales Document ' 9.
MACRO_F 'KOSTL' ' Cost center ' 10.
MACRO_F 'ARKTX' ' Material Despn' 11.
endform. " Fieldcatlog
&----
*& Form DISPLAY_DATA
&----
text
----
--> p1 text
<-- p2 text
----
form DISPLAY_DATA .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = V_REPID
I_CALLBACK_TOP_OF_PAGE = 'HEADING'
I_GRID_TITLE = 'HEADER' " Hard coded Messge Display
IT_FIELDCAT = T_FIELDCATALOG1
I_SAVE = 'A'
TABLES
T_OUTTAB = display_itab.
ENDFORM. " DISPLAY_DATA
FORM HEADING.
CLEAR: i_header1 .
REFRESH : i_header1 .
i_header1-typ = 'H'.
i_header1-info = 'ALV- Sales Order Details'.
append i_header1.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = i_header1[]
i_logo = 'ENJOYSAP_LOGO'.
ENDFORM.
2007 Jun 21 6:37 AM
Hi,
You didn't pass the sy-repid value in the variable V_REPID.
form DISPLAY_DATA .
<b>V_REPID = SY-REPID.</b>
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = V_REPID
....
Thanks
Naren
Hi Friends,
I am having a problem in the report I am not able to display the header details in the ALV report any suggestions friends,i am sending the code along with this mail.
Regards
Dinesh
REPORT YTEST5.
TABLES:vbrk,VBRP.
TYPES:
BEGIN OF vbrk_struct ,
vbeln type vbrk-vbeln,
fkart type vbrk-fkart,
fkdat type vbrk-fkdat,
bukrs type vbrk-bukrs,
netwr type vbrk-netwr,
END OF vbrk_struct.
TYPES:
BEGIN OF vbrp_struct,
vbeln type vbrp-vbeln,
posnr type vbrp-posnr,
matnr type vbrp-matnr,
fkimg type vbrp-fkimg,
aubel type vbrp-aubel,
kostl type vbrp-kostl,
ps_psp_pnr type vbrp-ps_psp_pnr,
arktx type vbrp-arktx,
END OF vbrp_struct.
TYPES:
BEGIN OF display_struct,
vbeln type vbrk-vbeln,
fkart type vbrk-fkart,
fkdat type vbrk-fkdat,
bukrs type vbrk-bukrs,
netwr type vbrk-netwr,
posnr type vbrp-posnr,
matnr type vbrp-matnr,
fkimg type vbrp-fkimg,
aubel type vbrp-aubel,
kostl type vbrp-kostl,
ps_psp_pnr type vbrp-ps_psp_pnr,
arktx type vbrp-arktx,
END OF display_struct .
DATA: v_index LIKE sy-tabix.
DATA: t_vbrk_itab TYPE STANDARD TABLE OF vbrk_struct .
DATA: t_vbrp_itab TYPE STANDARD TABLE OF vbrp_struct .
DATA: display_itab TYPE STANDARD TABLE OF display_struct .
data:i_header1 type slis_t_listheader with header line.
DATA: S_FIELDCATALOG TYPE SLIS_FIELDCAT_ALV.
DATA: T_FIELDCATALOG1 TYPE SLIS_T_FIELDCAT_ALV.
DATA: V_REPID TYPE SYREPID.
FIELD-SYMBOLS: <fs_struct1> TYPE vbrk_struct,
<fs_struct2> TYPE vbrp_struct,
<fs_struct3> TYPE display_struct.
SELECT-OPTIONS s_vbeln FOR vbrk-vbeln.
SELECT-OPTIONS s_bukrs FOR vbrk-bukrs.
SELECT-OPTIONS s_fkdat FOR vbrk-fkdat.
START-OF-SELECTION
PERFORM GET_DATA1.
PERFORM GET_DATA2.
PERFORM GET_DATA3.
Perform Fieldcatlog
PERFORM DISPLAY_DATA.
&----
*& Form GET_DATA1
&----
text
----
--> p1 text
<-- p2 text
----
form GET_DATA1 .
SELECT vbeln fkart fkdat bukrs netwr FROM vbrk
INTO CORRESPONDING FIELDS OF TABLE
t_vbrk_itab
WHERE
bukrs IN s_bukrs AND
fkdat IN s_fkdat AND
vbeln IN s_vbeln.
endform. " GET_DATA1
&----
*& Form GET_DATA2
&----
text
----
--> p1 text
<-- p2 text
----
form GET_DATA2 .
SELECT vbeln posnr matnr fkimg aubel kostl ps_psp_pnr arktx FROM vbrp
INTO CORRESPONDING FIELDS OF TABLE
t_vbrp_itab
FOR ALL ENTRIES IN
t_vbrk_itab
WHERE vbeln = t_vbrk_itab-vbeln.
endform. " GET_DATA2
&----
*& Form GET_DATA3
&----
text
----
--> p1 text
<-- p2 text
----
FORM GET_DATA3 .
SORT t_vbrk_itab BY vbeln.
SORT t_vbrp_itab BY vbeln.
CLEAR: v_index.
LOOP AT t_vbrk_itab ASSIGNING <fs_struct1>.
READ TABLE t_vbrp_itab ASSIGNING <fs_struct2>
WITH KEY vbeln = <fs_struct1>-vbeln BINARY SEARCH.
MOVE sy-tabix TO v_index.
WHILE sy-subrc IS INITIAL AND <fs_struct1>-vbeln = <fs_struct2>-vbeln.
MOVE: <fs_struct2>-vbeln TO <fs_struct3>-vbeln,
<fs_struct2>-posnr TO <fs_struct3>-posnr,
<fs_struct2>-matnr TO <fs_struct3>-matnr,
<fs_struct2>-fkimg TO <fs_struct3>-fkimg,
<fs_struct2>-aubel TO <fs_struct3>-aubel,
<fs_struct2>-kostl TO <fs_struct3>-kostl,
<fs_struct2>-ps_psp_pnr TO <fs_struct3>-ps_psp_pnr,
<fs_struct2>-arktx TO <fs_struct3>-arktx.
MOVE:
<fs_struct1>-fkart TO <fs_struct3>-fkart,
<fs_struct1>-fkdat TO <fs_struct3>-fkdat,
<fs_struct1>-bukrs TO <fs_struct3>-bukrs,
<fs_struct1>-netwr TO <fs_struct3>-netwr.
APPEND <fs_struct3> TO display_itab.
CLEAR display_itab.
ADD 1 TO v_index.
READ TABLE t_vbrp_itab ASSIGNING <fs_struct2> INDEX v_index.
ENDWHILE.
ENDLOOP.
ENDFORM. " GET_DATA3
&----
*& Form Fieldcatlog
&----
text
----
--> p1 text
<-- p2 text
----
form Fieldcatlog .
DEFINE MACRO_F.
S_FIELDCATALOG-FIELDNAME = &1.
s_fieldcatalog-seltext_m = &2.
S_FIELDCATALOG-COL_POS = &3.
APPEND S_FIELDCATALOG TO T_FIELDCATALOG1.
CLEAR S_FIELDCATALOG.
END-OF-DEFINITION.
MACRO_F 'VBELN' ' Billing Document No' 1.
MACRO_F 'FKART' ' Billing Type ' 2.
MACRO_F 'FKDAT' ' Billing date for billing index' 3.
MACRO_F 'BUKRS' ' Company code ' 4.
MACRO_F 'NETWR' ' Net Currency' 5.
MACRO_F 'POSNR' ' Billing item' 6.
MACRO_F 'MATNR' ' Material No' 7.
MACRO_F 'FKIMG' ' Actual Invoiced Quantity' 8.
MACRO_F 'AUBEL' ' Sales Document ' 9.
MACRO_F 'KOSTL' ' Cost center ' 10.
MACRO_F 'ARKTX' ' Material Despn' 11.
endform. " Fieldcatlog
&----
*& Form DISPLAY_DATA
&----
text
----
--> p1 text
<-- p2 text
----
form DISPLAY_DATA .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = V_REPID
I_CALLBACK_TOP_OF_PAGE = 'HEADING'
I_GRID_TITLE = 'HEADER' " Hard coded Messge Display
IT_FIELDCAT = T_FIELDCATALOG1
I_SAVE = 'A'
TABLES
T_OUTTAB = display_itab.
ENDFORM. " DISPLAY_DATA
FORM HEADING.
CLEAR: i_header1 .
REFRESH : i_header1 .
i_header1-typ = 'H'.
i_header1-info = 'ALV- Sales Order Details'.
append i_header1.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = i_header1[]
i_logo = 'ENJOYSAP_LOGO'.
ENDFORM.
2007 Jun 21 6:36 AM
Hi,
go through this link and use accordingly in your report.
[Removed by the moderator.]
http://help.sap.com/saphelp_nw04s/helpdata/en/86/641b88c9034eebacb26ba7fbb17981/content.htm
[Removed by the moderator.]
Regards
2007 Jun 21 6:37 AM
Hi,
You didn't pass the sy-repid value in the variable V_REPID.
form DISPLAY_DATA .
<b>V_REPID = SY-REPID.</b>
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = V_REPID
....
Thanks
Naren
2007 Jun 21 6:39 AM
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
...
i_callback_top_of_page = 'TOP_OF_PAGE'
...
and define your header :
FORM top_of_page.
REFRESH i_header.
**----To display the header in the ALV report.
PERFORM zf_header USING i_header.
**----To print the headings and other comments for the list.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = i_header
i_logo = 'ENJOYSAP_LOGO'.
ENDFORM. "TOP_OF_PAGE
2007 Jun 21 6:43 AM
hi,
use it in the event like this and try.
PERFORM get_event USING it_event.
----
FORM get_event USING P_IT_EVENT TYPE slis_t_event.
DATA : wa_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = it_event.
READ TABLE it_event WITH KEY name = slis_ev_top_of_page INTO wa_event.
IF SY-SUBRC = 0.
MOVE 'TOP_OF_PAGE' to wa_event-form.
APPEND wa_event to it_event.
ENDIF.
ENDFORM. " get_event
********************************************************************
*FORM FOR TOP_OF_PAGE(to assign form for the top-of-page event)
********************************************************************
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = it_listheader.
ENDFORM. "top_of_page
____________________________________________________
in function module.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
IT_EVENTS = it_event[]
regards,
prabhu
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |