‎2008 Jan 16 5:13 AM
Hi experts.
My ALV output is coming like this :
VendorNumber VendorName CompanyCode Outstand value
0001 XXX Z010 10
0002 YYY Z010 20
0006 ZZZ Z020 30
0007 BBB Z010 40
If Company code is not selected in the Selection screen,then all the Company Codes data with selected Vendors will be gathered .So in the Report Output ,the Sum should be done for Outstanding value based on the each Company Code.
Plese help me .Point is surely rewarded.
Thanks,
Satya
‎2008 Jan 16 5:19 AM
Hi,
Use this code.
data: lt_sort type slis_t_sortinfo_alv,
lw_sort type slis_sortinfo_alv.
in fieldcat table.
clear lw_fcat.
lw_fcat-fieldname = 'OUTSTANDVALUE'.
lw_fcat-seltext_l = 'Outstandind value'.
lw_fcat-do_sum = 'X'.
append lw_fcat to lt_fcat.
and for sorting.
clear lw_sort.
lw_sort-spos = 1.
lw_sort-fieldname = 'BUKRS' . "Company code
LW_SORT-Up = 'X'.
append lw_sort to lt_sort.
clear lw_sort.
lw_sort-spos = 3.
lw_sort-fieldname = 'OUTSTANDVALUE'. "Out standing value
LW_SORT-Up = 'X'.
lw_sort-subtot = 'X'.
append lw_sort to lt_sort.
and pass this to resue_alv_grid_display function.
eg
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = ' '
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 = lv_layout
IT_FIELDCAT = lt_fcat[]
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT = lt_sort[]
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
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 = itab
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
regards,
Santosh Thorat
‎2008 Jan 16 5:19 AM
sort the table based on company code before sending it to reuse FM
or
in the field catalog set field_catalog-sort = 'X'.
for the field catalog of Outstand value field_catalog-dosum = 'X'.
-
and after your report is executed you can play with the layout and save it, with the sum value displaying. there is a SIGMA sign on the toolbar which does the SUM.
‎2008 Jan 16 5:19 AM
Hi,
Use this code.
data: lt_sort type slis_t_sortinfo_alv,
lw_sort type slis_sortinfo_alv.
in fieldcat table.
clear lw_fcat.
lw_fcat-fieldname = 'OUTSTANDVALUE'.
lw_fcat-seltext_l = 'Outstandind value'.
lw_fcat-do_sum = 'X'.
append lw_fcat to lt_fcat.
and for sorting.
clear lw_sort.
lw_sort-spos = 1.
lw_sort-fieldname = 'BUKRS' . "Company code
LW_SORT-Up = 'X'.
append lw_sort to lt_sort.
clear lw_sort.
lw_sort-spos = 3.
lw_sort-fieldname = 'OUTSTANDVALUE'. "Out standing value
LW_SORT-Up = 'X'.
lw_sort-subtot = 'X'.
append lw_sort to lt_sort.
and pass this to resue_alv_grid_display function.
eg
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = ' '
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 = lv_layout
IT_FIELDCAT = lt_fcat[]
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT = lt_sort[]
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
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 = itab
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
regards,
Santosh Thorat
‎2008 Jan 16 5:36 AM
Hi Santosh ,
Thanks for the replay . I hv tried with lw_fcat-do_sum = 'X'. and it is showing the total sum of the field at the end of the report.But my requirement is like ...for every company code it'll add the value.
Companycode1 total sum for this company code1
Companycode2 total sum for this company code1
Hope you understand .
Regards,
Satya
‎2008 Jan 16 5:52 AM
Hi,
Use the logic.
clear lw_sort.
lw_sort-spos = 1.
lw_sort-fieldname = 'BUKRS' . "Company code
LW_SORT-Up = 'X'.
append lw_sort to lt_sort.
clear lw_sort.
lw_sort-spos = 3.
lw_sort-fieldname = 'OUTSTANDVALUE'. "Out standing value
LW_SORT-Up = 'X'.
lw_sort-subtot = 'X'.
append lw_sort to lt_sort.
and pass this lt_sort table in reuse_alv_grid_display function module.
regards,
Santosh Thorat
‎2008 Jan 16 6:28 AM
Hi santosh ,
Thanks a lot for ur help.But after adding the lw_sort-subtot = 'X'. still its not showing the subtotal .I am sending u the code where i already used please have a look into it and let me know if there is some issue ..
* Fieldcat for company Vendor Number
*CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = c_lifnr
IMPORTING
output = c_lifnr.
wa_fieldcat-col_pos = c_1.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_lifnr.
wa_fieldcat-seltext_m = text-675.
wa_fieldcat-outputlen = c_14.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for company Vendor Name
wa_fieldcat-col_pos = c_2.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_name1.
wa_fieldcat-seltext_m = text-676.
wa_fieldcat-outputlen = c_12.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
****************************************************************
if kd_bukrs is initial.
Fieldcat for company code.
wa_fieldcat-col_pos = c_3.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_bukrs.
wa_fieldcat-seltext_m = text-690.
LW_SORT-Up = 'X'.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-outputlen = c_18.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
endif.
****************************************************************
Fieldcat for company Total amount outsatnding
wa_fieldcat-col_pos = c_4.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_opsum.
wa_fieldcat-seltext_m = text-677.
LW_SORT-Up = 'X'.
lw_sort-subtot = 'X'.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-outputlen = c_24.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
*****************************************************************
Fieldcat for type raart
wa_fieldcat-col_pos = c_5.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_type.
wa_fieldcat-seltext_m = text-684.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-outputlen = c_18.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
*****************************************************************
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_6.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast1.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-678.
wa_fieldcat-outputlen = c_11.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_7.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast2.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-679.
wa_fieldcat-outputlen = c_13.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_8.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast3.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-680.
wa_fieldcat-outputlen = c_17.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_9.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast4.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-681.
wa_fieldcat-outputlen = c_15.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_10.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast5.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-682.
wa_fieldcat-outputlen = c_16.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_11.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast6.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-683.
wa_fieldcat-outputlen = c_10.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Thanks,
Satya
‎2008 Jan 16 7:08 AM
hi,
wa_fieldcat-col_pos = c_1.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_lifnr.
wa_fieldcat-seltext_m = text-675.
wa_fieldcat-outputlen = c_14.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for company Vendor Name
wa_fieldcat-col_pos = c_2.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_name1.
wa_fieldcat-seltext_m = text-676.
wa_fieldcat-outputlen = c_12.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
****************************************************************
if kd_bukrs is initial.
Fieldcat for company code.
wa_fieldcat-col_pos = c_3.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_bukrs.
wa_fieldcat-seltext_m = text-690.
no sum in this field.
wa_fieldcat-outputlen = c_18.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
endif.
****************************************************************
Fieldcat for company Total amount outsatnding
wa_fieldcat-col_pos = c_4.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_opsum.
wa_fieldcat-seltext_m = text-677.
here you have to use do sum.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-outputlen = c_24.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
*****************************************************************
Fieldcat for type raart
wa_fieldcat-col_pos = c_5.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_type.
wa_fieldcat-seltext_m = text-684.
wa_fieldcat-outputlen = c_18.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
*****************************************************************
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_6.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast1.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-678.
wa_fieldcat-outputlen = c_11.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_7.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast2.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-679.
wa_fieldcat-outputlen = c_13.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_8.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast3.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-680.
wa_fieldcat-outputlen = c_17.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_9.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast4.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-681.
wa_fieldcat-outputlen = c_15.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_10.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast5.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-682.
wa_fieldcat-outputlen = c_16.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
Fieldcat for Amount Assigned to a Sorted List Interval
wa_fieldcat-col_pos = c_11.
wa_fieldcat-tabname = c_i_final.
wa_fieldcat-fieldname = c_rast6.
wa_fieldcat-do_sum = c_x.
wa_fieldcat-seltext_m = text-683.
wa_fieldcat-outputlen = c_10.
APPEND wa_fieldcat TO i_fieldcat.
CLEAR wa_fieldcat.
*after filling the fieldcat table,
data: lt_sort type slis_t_sortinfo_alv,
lw_sort type slis_sortinfo_alv.
clear lw_sort.
lw_sort-spos = 1.
lw_sort-fieldname = 'BUKRS' . "Company code
LW_SORT-Up = 'X'.
append lw_sort to lt_sort.
clear lw_sort.
lw_sort-spos = 2.
lw_sort-fieldname = 'OUTSTANDVALUE'. "Out standing value
LW_SORT-Up = 'X'.
lw_sort-subtot = 'X'.
append lw_sort to lt_sort.
and then pass it to reuse_alv_grid_display.
regards,
Santosh Thorat
‎2008 Jan 17 3:56 AM
‎2008 Jan 16 5:46 AM
Hi Satyanarayana,
Try the below logic that wil helpful to u.check it once.Along with logic i will send a sample code for ur problem check it once ok..
LOGIC:
*SubTotal on the Field OUTSTAND VALUE
wa_fieldcat-col_pos = '3'. "Column Position
wa_fieldcat-tabname = 'IT_SALESORDER'. "Internal
wa_fieldcat-fieldname = 'OUTSTAND VALUE'. "Field Name
wa_fieldcat-do_sum = 'X'. "Sum
wa_fieldcat- seltext_m = 'Net Value'. "Display Text
APPEND wa_fieldcat TO gt_fieldcat.
FORM sorting USING p_it_sortcat TYPE slis_t_sortinfo_alv.
CLEAR wa_sortcat.
wa_sortcat-fieldname = 'BUKRS'. "COMPANY CODE
wa_sortcat-up ='X'.
wa_sortcat-subtot = 'X'.
APPEND wa_sortcat TO p_it_sortcat.
endform.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
i_callback_program = sy-repid
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 =
it_fieldcat = gt_fieldcat
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
it_sort = gt_sortcat
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
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
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = gt_salesorder
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.
SAMPLE PROGRAM:COPY THIS PRG AND EXECUTE IT OK
&----
*& Report YSALESORDER_ALV_SUBTOTALS *
*& *
&----
*& DEVELOPER : KIRAN KUMAR.G *
*& PURPOSE : DISPLAYING SUBTOTALS FOR A PARTICULAR SALES DOC NO *
*& CREATION DT: 26/11/2007 *
*& REQUEST : ERPK900035 *
&----
REPORT ysalesorder_alv_subtotals.
----
Type Pools
----
TYPE-POOLS:slis.
----
Tables
----
TABLES: vbak, "Sales Document: Header Data
vbap. "Sales Document: Item Data
----
Global Structures
----
DATA:gt_fieldcat TYPE slis_t_fieldcat_alv,
wa_fieldcat TYPE slis_fieldcat_alv,
gt_sortcat TYPE slis_t_sortinfo_alv,
wa_sortcat LIKE LINE OF gt_sortcat.
----
Internal Table
----
DATA: BEGIN OF gt_salesorder OCCURS 0,
vbeln LIKE vbak-vbeln, " Sales Document Number
posnr LIKE vbap-posnr, " Sales Doc Item
netwr LIKE vbap-netwr, " Net Value
END OF gt_salesorder.
----
SELECT OPTIONS
----
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_vbeln FOR vbak-vbeln. " Sales Document Number.
SELECTION-SCREEN END OF BLOCK b1.
----
Initialization
----
INITIALIZATION.
PERFORM initialization.
----
Start Of Selection
----
START-OF-SELECTION.
PERFORM field_catalog. "For Structure Creation
PERFORM fetch_data. "Get the Data From DB Table
PERFORM sorting USING gt_sortcat.
----
End Of Selection
----
END-OF-SELECTION.
PERFORM display_data.
&----
*& Form initialization
&----
text
----
--> p1 text
<-- p2 text
----
FORM initialization .
s_vbeln-sign = 'I'.
s_vbeln-option = 'BT'.
s_vbeln-low = '4969'.
s_vbeln-high = '5000'.
APPEND s_vbeln.
ENDFORM. " initialization
&----
*& Form field_catalog
&----
text
----
--> p1 text
<-- p2 text
----
FORM field_catalog .
REFRESH : gt_fieldcat.
CLEAR : wa_fieldcat.
wa_fieldcat-col_pos = '1'. "Column Position
wa_fieldcat-tabname = 'IT_SALESORDER'. "Internal Table
wa_fieldcat-fieldname = 'VBELN'. "Field Name
wa_fieldcat-key = 'X'. "Blue Color
wa_fieldcat-seltext_m = 'Sales Doc No'. "Display Text In Screen
APPEND wa_fieldcat TO gt_fieldcat.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = '2'. "Column Position
wa_fieldcat-tabname = 'IT_SALESORDER'. "Internal Table Name
wa_fieldcat-fieldname = 'POSNR'. "Field Name
wa_fieldcat-seltext_m = 'Sales Doc Item'."Display Text In Screen
APPEND wa_fieldcat TO gt_fieldcat.
CLEAR wa_fieldcat.
*SubTotal on the Field NETWR
wa_fieldcat-col_pos = '3'. "Column Position
wa_fieldcat-tabname = 'IT_SALESORDER'. "Internal Table
wa_fieldcat-fieldname = 'NETWR'. "Field Name
wa_fieldcat-do_sum = 'X'. "Sum
wa_fieldcat-seltext_m = 'Net Value'. "Display Text In Screen
APPEND wa_fieldcat TO gt_fieldcat.
CLEAR wa_fieldcat.
ENDFORM. " field_catalog
&----
*& Form sorting
&----
text
----
-->P_IT_SORTCAT text
----
FORM sorting USING p_it_sortcat TYPE slis_t_sortinfo_alv.
CLEAR wa_sortcat.
wa_sortcat-fieldname = 'VBELN'.
wa_sortcat-up ='X'.
wa_sortcat-subtot = 'X'.
APPEND wa_sortcat TO p_it_sortcat.
ENDFORM. " sorting
&----
*& Form display_data
&----
text
----
--> p1 text
<-- p2 text
----
FORM display_data .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
i_callback_program = sy-repid
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 =
it_fieldcat = gt_fieldcat
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
it_sort = gt_sortcat
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
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
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = gt_salesorder
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. " display_data
&----
*& Form fetch_data
&----
text
----
--> p1 text
<-- p2 text
----
FORM fetch_data .
REFRESH : gt_salesorder.
CLEAR : gt_salesorder.
SELECT a~vbeln
posnr
b~netwr
FROM vbak AS a
INNER JOIN vbap AS b ON avbeln = bvbeln
INTO TABLE gt_salesorder
WHERE a~vbeln IN s_vbeln.
ENDFORM. " fetch_data
Reward points if helpful.
Kiran Kumar.G.A
Edited by: KIRAN KUMAR on Jan 16, 2008 6:47 AM