Application Development 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: 

...ALV ...

Former Member
0 Kudos

Hi,,

I am working on ALV.

My requirement is to add the some of the fields of ALV display

data.Help me to add the fields.

Sample code will be appreciated.

Thanx..

Rahul Jain.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi Rahul,,

I hope you need to total the individual fields of alv..

If so ..this code may help you

OR

you can visit the site for sample code for alv...

-


>http://www.geocities.com/mpioud

TYPES :

BEGIN OF ty_vbak,

vkorg TYPE vbak-vkorg, " Sales organization

kunnr TYPE vbak-kunnr, " Sold-to party

vbeln TYPE vbak-vbeln, " Sales document

netwr TYPE vbak-netwr, " Net Value of the Sales Order

waerk TYPE vbak-waerk, " Document currency

END OF ty_vbak.

DATA:

vbak TYPE vbak,

gt_vbak TYPE TABLE OF ty_vbak.

SELECT-OPTIONS :

s_vkorg FOR vbak-vkorg, " Sales organization

s_kunnr FOR vbak-kunnr, " Sold-to party

s_vbeln FOR vbak-vbeln. " Sales document

SELECTION-SCREEN :

SKIP, BEGIN OF LINE,COMMENT 5(27) v_1 FOR FIELD p_max.

PARAMETERS p_max(2) TYPE n DEFAULT '20' OBLIGATORY.

SELECTION-SCREEN END OF LINE.

----


INITIALIZATION.

v_1 = 'Maximum of records to read'.

----


START-OF-SELECTION.

PERFORM f_read_data.

PERFORM f_display_data.

----


  • Form f_read_data

----


FORM f_read_data.

SELECT vkorg kunnr vbeln netwr waerk

UP TO p_max ROWS

INTO TABLE gt_vbak

FROM vbak

WHERE kunnr IN s_kunnr

AND vbeln IN s_vbeln

AND vkorg IN s_vkorg.

ENDFORM. " F_READ_DATA

----


  • Form f_display_data

----


FORM f_display_data.

TYPE-POOLS: slis. " ALV Global types

DEFINE m_fieldcat.

add 1 to ls_fieldcat-col_pos.

ls_fieldcat-fieldname = &1.

ls_fieldcat-ref_tabname = 'VBAK'.

ls_fieldcat-do_sum = &2.

ls_fieldcat-cfieldname = &3.

append ls_fieldcat to lt_fieldcat.

END-OF-DEFINITION.

DEFINE m_sort.

add 1 to ls_sort-spos.

ls_sort-fieldname = &1.

ls_sort-up = 'X'.

ls_sort-subtot = &2.

append ls_sort to lt_sort.

END-OF-DEFINITION.

DATA:

ls_fieldcat TYPE slis_fieldcat_alv,

lt_fieldcat TYPE slis_t_fieldcat_alv,

lt_sort TYPE slis_t_sortinfo_alv,

ls_sort TYPE slis_sortinfo_alv,

ls_layout TYPE slis_layout_alv.

m_fieldcat 'VKORG' '' ''.

m_fieldcat 'KUNNR' '' ''.

m_fieldcat 'VBELN' '' ''.

m_fieldcat 'NETWR' 'X' 'WAERK'.

m_fieldcat 'WAERK' '' ''.

m_sort 'VKORG' 'X'. " Sort by vkorg and subtotal

m_sort 'KUNNR' 'X'. " Sort by kunnr and subtotal

m_sort 'VBELN' ''. " Sort by vbeln

ls_layout-cell_merge = 'X'.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

is_layout = ls_layout

it_fieldcat = lt_fieldcat

it_sort = lt_sort

TABLES

t_outtab = gt_vbak.

ENDFORM.

Plz reward points if answer is helpful.......

Regards,

Mandeep.

9 REPLIES 9

Former Member
0 Kudos

Hi Rahul

what exactly u want , u want after displaying alv report?

Regards,

kiran.M

Former Member
0 Kudos

Set the DO_SUM parameter in the field catalog of the field you want to sum/add to 'X'. The sum will be displayed automatically.

Please mark points if the solution was useful.

Regards,

Manoj

Former Member
0 Kudos

save alv layout variant...

or use do_sum parameter of the field cateloge

Message was edited by:

eric

Former Member
0 Kudos

hi ..

actually i want sum the fields...

Thanx...

0 Kudos

To sum the field (programmatically)

<b>FIELDCAT</b>

fill if not already filled via REUSE_ALV_FIELDCATALOG_MERGE the <b>DO_SUM</b> flag (and clear the <b>NO_SUM</b> flag that you think are not-pertinent)

This will insure posting of a total general

<b>SORT</b>

fill the <b>SUBTOT</b> field iif you want subtotals for control level changes

<b>LAYOUT</b>

Clear all flags like <b>NO_TOTALLINE</b>, <b>NO_SUBTOTALS</b>. If only total are of interest set the flag <b>TOTALS_ONLY</b> on

If you want to totalize fields of type NUMC and not only QUAN and CURRn set the flag <b>NUMC_SUM</b> on (or update FIELDCAT as stated above)

Regards

Former Member
0 Kudos

Hi Rahul,

Could you please be more clear on what you want so we can assist you in achieving the same.

Best Regards,

Ram.

0 Kudos

Hi,

Use the do_sum option in the ALV catalgoue for the field you want to sum.

DATA:

lw_fieldcattab TYPE slis_fieldcat_alv.

lw_fieldcattab-fieldname = 'YOUR FIELDNAME'.

lw_fieldcattab-do_sum = 'X'.

APPEND lw_fieldcattab TO ct_fieldcattab.

Pass the field catalogue in the ALV FM.

You can also do the sum in the ALV output also.

Regards,

Yogesh

Former Member
0 Kudos

Hi Check this part .........

data: fieldcatalog1 type slis_fieldcat_alv.

fieldcatalog1-seltext_s = 'materialno'.

fieldcatalog1-col_pos = 1.

fieldcatalog1-FIELDNAME = 'MATNR'.

fieldcatalog1-TABNAME = 'ITAB'.

fieldcatalog1-outputlen = 20.

fieldcatalog1-do_sum = 'X'. 'this is for doing sum

fieldcatalog1-key = 'X'. "this field is not scroolable

"and hideble

fieldcatalog1-hotspot = 'X'.

fieldcatalog1-emphasize = 'X'.

fieldcatalog1-REF_TABNAME = 'makt'.

append fieldcatalog1 to fieldcatalog.

clear fieldcatalog1.

Former Member
0 Kudos

Hi Rahul,,

I hope you need to total the individual fields of alv..

If so ..this code may help you

OR

you can visit the site for sample code for alv...

-


>http://www.geocities.com/mpioud

TYPES :

BEGIN OF ty_vbak,

vkorg TYPE vbak-vkorg, " Sales organization

kunnr TYPE vbak-kunnr, " Sold-to party

vbeln TYPE vbak-vbeln, " Sales document

netwr TYPE vbak-netwr, " Net Value of the Sales Order

waerk TYPE vbak-waerk, " Document currency

END OF ty_vbak.

DATA:

vbak TYPE vbak,

gt_vbak TYPE TABLE OF ty_vbak.

SELECT-OPTIONS :

s_vkorg FOR vbak-vkorg, " Sales organization

s_kunnr FOR vbak-kunnr, " Sold-to party

s_vbeln FOR vbak-vbeln. " Sales document

SELECTION-SCREEN :

SKIP, BEGIN OF LINE,COMMENT 5(27) v_1 FOR FIELD p_max.

PARAMETERS p_max(2) TYPE n DEFAULT '20' OBLIGATORY.

SELECTION-SCREEN END OF LINE.

----


INITIALIZATION.

v_1 = 'Maximum of records to read'.

----


START-OF-SELECTION.

PERFORM f_read_data.

PERFORM f_display_data.

----


  • Form f_read_data

----


FORM f_read_data.

SELECT vkorg kunnr vbeln netwr waerk

UP TO p_max ROWS

INTO TABLE gt_vbak

FROM vbak

WHERE kunnr IN s_kunnr

AND vbeln IN s_vbeln

AND vkorg IN s_vkorg.

ENDFORM. " F_READ_DATA

----


  • Form f_display_data

----


FORM f_display_data.

TYPE-POOLS: slis. " ALV Global types

DEFINE m_fieldcat.

add 1 to ls_fieldcat-col_pos.

ls_fieldcat-fieldname = &1.

ls_fieldcat-ref_tabname = 'VBAK'.

ls_fieldcat-do_sum = &2.

ls_fieldcat-cfieldname = &3.

append ls_fieldcat to lt_fieldcat.

END-OF-DEFINITION.

DEFINE m_sort.

add 1 to ls_sort-spos.

ls_sort-fieldname = &1.

ls_sort-up = 'X'.

ls_sort-subtot = &2.

append ls_sort to lt_sort.

END-OF-DEFINITION.

DATA:

ls_fieldcat TYPE slis_fieldcat_alv,

lt_fieldcat TYPE slis_t_fieldcat_alv,

lt_sort TYPE slis_t_sortinfo_alv,

ls_sort TYPE slis_sortinfo_alv,

ls_layout TYPE slis_layout_alv.

m_fieldcat 'VKORG' '' ''.

m_fieldcat 'KUNNR' '' ''.

m_fieldcat 'VBELN' '' ''.

m_fieldcat 'NETWR' 'X' 'WAERK'.

m_fieldcat 'WAERK' '' ''.

m_sort 'VKORG' 'X'. " Sort by vkorg and subtotal

m_sort 'KUNNR' 'X'. " Sort by kunnr and subtotal

m_sort 'VBELN' ''. " Sort by vbeln

ls_layout-cell_merge = 'X'.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

is_layout = ls_layout

it_fieldcat = lt_fieldcat

it_sort = lt_sort

TABLES

t_outtab = gt_vbak.

ENDFORM.

Plz reward points if answer is helpful.......

Regards,

Mandeep.