Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

ALV

Former Member
0 Likes
1,203

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

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,180

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

8 REPLIES 8
Read only

former_member156446
Active Contributor
0 Likes
1,180

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.

Read only

Former Member
0 Likes
1,181

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

Read only

0 Likes
1,180

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

Read only

0 Likes
1,180

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

Read only

0 Likes
1,180

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

Read only

0 Likes
1,180

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

Read only

0 Likes
1,180

Thanks Santosh ...

My problem is solved.

Regards,

Satya

Read only

Former Member
0 Likes
1,180

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