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: 

Just Show Line of Average in ABAP REPORT ALV

Former Member
0 Kudos

Hi Gurus/Experts,

i am succes to create an average in my report

But my client want just to show the line of average like in the picture below,

Can we do that ?

if we can please tell me how to do that.

1 ACCEPTED SOLUTION

venkat_aileni
Contributor
0 Kudos

Hi Zaldy,

Try below sample code:

TYPE-POOLS: slis.

TABLES: vbap.

SELECT-OPTIONS: s_vbeln FOR vbap-vbeln.

DATA: it_final TYPE STANDARD TABLE OF vbap,

       wa_final TYPE vbap.

DATA: it_fieldcat TYPE slis_t_fieldcat_alv,

       wa_fieldcat TYPE slis_fieldcat_alv,

       it_sort     TYPE slis_t_sortinfo_alv,

       wa_sort     TYPE slis_sortinfo_alv,

       it_events   TYPE slis_t_event,

       wa_events   TYPE slis_alv_event.

INITIALIZATION.

   CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

     EXPORTING

       i_program_name         = sy-repid

       i_structure_name       = 'VBAP'

       i_bypassing_buffer     = 'X'

     CHANGING

       ct_fieldcat            = it_fieldcat

     EXCEPTIONS

       inconsistent_interface = 1

       program_error          = 2

       OTHERS                 = 3.

   IF it_fieldcat[] IS NOT INITIAL.

     READ TABLE it_fieldcat INTO wa_fieldcat

                            WITH KEY fieldname = 'KWMENG'.

     IF sy-subrc = 0.

       wa_fieldcat-do_sum = 'X'.

       MODIFY it_fieldcat FROM wa_fieldcat INDEX sy-tabix.

     ENDIF.

   ENDIF.

START-OF-SELECTION.

   SELECT *

     FROM vbap

     INTO TABLE it_final

    WHERE vbeln IN s_vbeln.

   CLEAR: wa_sort.

   wa_sort-spos = '02' .

   wa_sort-fieldname = 'MATNR'.

   wa_sort-tabname = 'IT_FINAL'.

   wa_sort-up = 'X'.

*  wa_sort-subtot = 'X'.

   APPEND wa_sort TO it_sort .

   CLEAR: wa_sort.

   wa_sort-spos = '02' .

   wa_sort-fieldname = 'KWMENG'.

   wa_sort-tabname = 'IT_FINAL'.

*  wa_sort-up = 'X'.

   wa_sort-subtot = 'X'.

   APPEND wa_sort TO it_sort .

   CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

    IMPORTING

      et_events             = it_events

    EXCEPTIONS

      list_type_wrong       = 1

      OTHERS                = 2.

END-OF-SELECTION.

   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

     EXPORTING

       i_callback_program       = sy-repid

*     I_CALLBACK_PF_STATUS_SET = ' '

*     I_CALLBACK_USER_COMMAND  = ' '

*     I_CALLBACK_TOP_OF_PAGE   = ' '

*     IS_LAYOUT                =

       it_fieldcat              = it_fieldcat

       it_sort                  = it_sort

      IT_EVENTS                = it_events

     TABLES

       t_outtab                 = it_final

     EXCEPTIONS

       program_error            = 1

       OTHERS                   = 2.

Output:

Hope this helps.

-Venkat

2 REPLIES 2

venkat_aileni
Contributor
0 Kudos

Hi Zaldy,

Try below sample code:

TYPE-POOLS: slis.

TABLES: vbap.

SELECT-OPTIONS: s_vbeln FOR vbap-vbeln.

DATA: it_final TYPE STANDARD TABLE OF vbap,

       wa_final TYPE vbap.

DATA: it_fieldcat TYPE slis_t_fieldcat_alv,

       wa_fieldcat TYPE slis_fieldcat_alv,

       it_sort     TYPE slis_t_sortinfo_alv,

       wa_sort     TYPE slis_sortinfo_alv,

       it_events   TYPE slis_t_event,

       wa_events   TYPE slis_alv_event.

INITIALIZATION.

   CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

     EXPORTING

       i_program_name         = sy-repid

       i_structure_name       = 'VBAP'

       i_bypassing_buffer     = 'X'

     CHANGING

       ct_fieldcat            = it_fieldcat

     EXCEPTIONS

       inconsistent_interface = 1

       program_error          = 2

       OTHERS                 = 3.

   IF it_fieldcat[] IS NOT INITIAL.

     READ TABLE it_fieldcat INTO wa_fieldcat

                            WITH KEY fieldname = 'KWMENG'.

     IF sy-subrc = 0.

       wa_fieldcat-do_sum = 'X'.

       MODIFY it_fieldcat FROM wa_fieldcat INDEX sy-tabix.

     ENDIF.

   ENDIF.

START-OF-SELECTION.

   SELECT *

     FROM vbap

     INTO TABLE it_final

    WHERE vbeln IN s_vbeln.

   CLEAR: wa_sort.

   wa_sort-spos = '02' .

   wa_sort-fieldname = 'MATNR'.

   wa_sort-tabname = 'IT_FINAL'.

   wa_sort-up = 'X'.

*  wa_sort-subtot = 'X'.

   APPEND wa_sort TO it_sort .

   CLEAR: wa_sort.

   wa_sort-spos = '02' .

   wa_sort-fieldname = 'KWMENG'.

   wa_sort-tabname = 'IT_FINAL'.

*  wa_sort-up = 'X'.

   wa_sort-subtot = 'X'.

   APPEND wa_sort TO it_sort .

   CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

    IMPORTING

      et_events             = it_events

    EXCEPTIONS

      list_type_wrong       = 1

      OTHERS                = 2.

END-OF-SELECTION.

   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

     EXPORTING

       i_callback_program       = sy-repid

*     I_CALLBACK_PF_STATUS_SET = ' '

*     I_CALLBACK_USER_COMMAND  = ' '

*     I_CALLBACK_TOP_OF_PAGE   = ' '

*     IS_LAYOUT                =

       it_fieldcat              = it_fieldcat

       it_sort                  = it_sort

      IT_EVENTS                = it_events

     TABLES

       t_outtab                 = it_final

     EXCEPTIONS

       program_error            = 1

       OTHERS                   = 2.

Output:

Hope this helps.

-Venkat

0 Kudos

Hi Venkat,

i have 1 question for you,

how can you know what i want and are you always in aBAP developmnt forum ? and how many times you help me

thank you bro you always help me ^_^