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

Incorrect Value in the Dynamic Table

Former Member
0 Likes
3,419

Hi Experts,

I have created a customer outstanding report using REUSE_ALV_HIERSEQ_LIST_DISPLAY. I am getting the dump saying "Incorrect value in the dynamic table". In debugging, the error is coming in the above function module. Please guide.

*&---------------------------------------------------------------------*

*& Report  ZCUSTOUT

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  ZCUSTOUT.

tables: bsad, bsid.

TYPE-POOLS: slis.

types: begin of ty_bsad,

        bukrs type bukrs,

        kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsad.

   types: begin of ty_bsid,

          burks type bukrs,

          kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsid.

   data: it_bsad type standard table of ty_bsad,

         it_bsid type standard table of ty_bsid.

   data: wa_bsad type standard table of ty_bsad,

         wa_bsid type standard table of ty_bsid.

   DATA: w_fcat TYPE slis_fieldcat_alv.

   DATA: t_fcat TYPE slis_t_fieldcat_alv.

   CONSTANTS: c_bsad TYPE slis_tabname VALUE 'WA_BSAD'.

CONSTANTS: c_bsid TYPE slis_tabname VALUE 'WA_BSID'.

DATA: w_keyinfo TYPE slis_keyinfo_alv.

   select-options: s_bukrs for bsad-bukrs,

                   s_kunnr for bsad-kunnr.

   select-options: s_date for bsad-budat.

start-of-selection.

break-point.

perform get_Data.

perform build_fieldcat.

perform display_alv.

form get_Data.

   select bukrs

          kunnr

          budat

          wrbtr

     belnr

     shkzg

     from bsad

     into table it_bsad

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.

   select bukrs

        kunnr

        budat

        wrbtr

        belnr

        shkzg

     from bsid

     into table it_bsid

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.

endform.

FORM build_fieldcat .

   w_keyinfo-header01 = 'BUKRS'.

   w_keyinfo-item01 = 'BUKRS'.

*&---------------------------------------------------------------------*

   w_fcat-col_pos = 1.

   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 2.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 3.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 4.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 5.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.

     w_fcat-col_pos = 6.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.

w_fcat-col_pos = 7.

   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 8.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 9.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 10.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 11.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

     w_fcat-col_pos = 12.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

ENDFORM.                    " BUILD_FIELDCAT

FORM display_alv .

   CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'

     EXPORTING

       it_fieldcat      = t_fcat

       i_tabname_header = c_bsad

       i_tabname_item   = c_bsid

       is_keyinfo       = w_keyinfo

     TABLES

       t_outtab_header  = it_bsad

       t_outtab_item    = it_bsid.

ENDFORM.                    " DISPLAY_ALV

Regards

Purnand

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
2,723

Hi,

  types: begin of ty_bsid, 

          burks type bukrs,

          kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsid.

change the Burks to bukrs.

Modified code

   *&---------------------------------------------------------------------*
*& Report  ZTEST23
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZTEST23.
tables: bsad, bsid.

TYPE-POOLS: slis.




types: begin of ty_bsad,

        bukrs type bukrs,

        kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsad.



   types: begin of ty_bsid,

          bukrs type bukrs,

          kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsid.



   data: it_bsad type standard table of ty_bsad,

         it_bsid type standard table of ty_bsid.


   data: wa_bsad type standard table of ty_bsad,

         wa_bsid type standard table of ty_bsid.


   DATA: w_fcat TYPE slis_fieldcat_alv.

   DATA: t_fcat TYPE slis_t_fieldcat_alv.


   CONSTANTS: c_bsad TYPE slis_tabname VALUE 'WA_BSAD'.

CONSTANTS: c_bsid TYPE slis_tabname VALUE 'WA_BSID'.


DATA: w_keyinfo TYPE slis_keyinfo_alv.



   select-options: s_bukrs for bsad-bukrs,

                   s_kunnr for bsad-kunnr.


   select-options: s_date for bsad-budat.



start-of-selection.


break-point.

perform get_Data.

perform build_fieldcat.

perform display_alv.




form get_Data.

   select bukrs

          kunnr

          budat

          wrbtr

     belnr

     shkzg

     from bsad

     into table it_bsad

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.


   select bukrs

        kunnr

        budat

        wrbtr

        belnr

        shkzg

     from bsid

     into table it_bsid

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.

endform.


FORM build_fieldcat .

   w_keyinfo-header01 = 'BUKRS'.

   w_keyinfo-item01 = 'BUKRS'.

*&---------------------------------------------------------------------*


   w_fcat-col_pos = 1.


   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 2.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 3.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 4.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 5.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


     w_fcat-col_pos = 6.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.





w_fcat-col_pos = 7.


   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 8.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 9.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 10.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 11.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


     w_fcat-col_pos = 12.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

ENDFORM.                    " BUILD_FIELDCAT


FORM display_alv .


   CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'

     EXPORTING

       it_fieldcat      = t_fcat

       i_tabname_header = c_bsad

       i_tabname_item   = c_bsid

       is_keyinfo       = w_keyinfo

     TABLES

       t_outtab_header  = it_bsad

       t_outtab_item    = it_bsid.

ENDFORM.                    " DISPLAY_ALV

Regards,

Suman

15 REPLIES 15
Read only

Former Member
0 Likes
2,724

Hi,

  types: begin of ty_bsid, 

          burks type bukrs,

          kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsid.

change the Burks to bukrs.

Modified code

   *&---------------------------------------------------------------------*
*& Report  ZTEST23
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZTEST23.
tables: bsad, bsid.

TYPE-POOLS: slis.




types: begin of ty_bsad,

        bukrs type bukrs,

        kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsad.



   types: begin of ty_bsid,

          bukrs type bukrs,

          kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsid.



   data: it_bsad type standard table of ty_bsad,

         it_bsid type standard table of ty_bsid.


   data: wa_bsad type standard table of ty_bsad,

         wa_bsid type standard table of ty_bsid.


   DATA: w_fcat TYPE slis_fieldcat_alv.

   DATA: t_fcat TYPE slis_t_fieldcat_alv.


   CONSTANTS: c_bsad TYPE slis_tabname VALUE 'WA_BSAD'.

CONSTANTS: c_bsid TYPE slis_tabname VALUE 'WA_BSID'.


DATA: w_keyinfo TYPE slis_keyinfo_alv.



   select-options: s_bukrs for bsad-bukrs,

                   s_kunnr for bsad-kunnr.


   select-options: s_date for bsad-budat.



start-of-selection.


break-point.

perform get_Data.

perform build_fieldcat.

perform display_alv.




form get_Data.

   select bukrs

          kunnr

          budat

          wrbtr

     belnr

     shkzg

     from bsad

     into table it_bsad

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.


   select bukrs

        kunnr

        budat

        wrbtr

        belnr

        shkzg

     from bsid

     into table it_bsid

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.

endform.


FORM build_fieldcat .

   w_keyinfo-header01 = 'BUKRS'.

   w_keyinfo-item01 = 'BUKRS'.

*&---------------------------------------------------------------------*


   w_fcat-col_pos = 1.


   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 2.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 3.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 4.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 5.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.


     w_fcat-col_pos = 6.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.





w_fcat-col_pos = 7.


   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 8.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 9.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 10.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


   w_fcat-col_pos = 11.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.


     w_fcat-col_pos = 12.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSID'.

   APPEND w_fcat TO t_fcat.

ENDFORM.                    " BUILD_FIELDCAT


FORM display_alv .


   CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'

     EXPORTING

       it_fieldcat      = t_fcat

       i_tabname_header = c_bsad

       i_tabname_item   = c_bsid

       is_keyinfo       = w_keyinfo

     TABLES

       t_outtab_header  = it_bsad

       t_outtab_item    = it_bsid.

ENDFORM.                    " DISPLAY_ALV

Regards,

Suman

Read only

0 Likes
2,723

Hi,

I appreciate your reply. It was really a helpful answer.

Regards

Purnand

Read only

Former Member
0 Likes
2,723

Hi,

The output is completely unexpected. I fail to understand why.

tables: bsad, bsid.

TYPE-POOLS: slis.

types: begin of ty_bsad,

        bukrs type bukrs,

        kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsad.

   types: begin of ty_bsid,

          bukrs type bukrs,

          kunnr type kunnr,

        budat type budat,

        wrbtr type wrbtr,

        belnr type belnr_d,

        shkzg type SHKZG,

   end of ty_bsid.

   data: it_bsad type standard table of ty_bsad,

         it_bsid type standard table of ty_bsid.

   data: wa_bsad type ty_bsad,

         wa_bsid type ty_bsid.

   DATA: w_fcat TYPE slis_fieldcat_alv.

   DATA: t_fcat TYPE slis_t_fieldcat_alv.

   CONSTANTS: c_bsad TYPE slis_tabname VALUE 'WA_BSAD'.

CONSTANTS: c_bsid TYPE slis_tabname VALUE 'WA_BSID'.

DATA: w_keyinfo TYPE slis_keyinfo_alv.

   select-options: s_bukrs for bsad-bukrs,

                   s_kunnr for bsad-kunnr.

   select-options: s_date for bsad-budat.

start-of-selection.

break-point.

perform get_Data.

perform build_fieldcat.

perform display_alv.

FORM display_alv .

   CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'

     EXPORTING

       it_fieldcat      = t_fcat

       i_tabname_header = c_bsad

       i_tabname_item   = c_bsid

       is_keyinfo       = w_keyinfo

     TABLES

       t_outtab_header  = it_bsad

       t_outtab_item    = it_bsid.

ENDFORM.                    " DISPLAY_ALV

form get_Data.

   select bukrs

          kunnr

          budat

          wrbtr

     belnr

     shkzg

     from bsad

     into table it_bsad

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.

   select bukrs

        kunnr

        budat

        wrbtr

        belnr

        shkzg

     into table it_bsid

     from bsid

*    for all entries in it_bsad

*    where bukrs = it_bsad-bukrs and kunnr = it_bsad-kunnr and budat =

*it_bsad-budat.

     where bukrs in s_bukrs and kunnr in s_kunnr and budat in s_date.

endform.

FORM build_fieldcat .

   w_keyinfo-header01 = 'BUKRS'.

   w_keyinfo-item01 = 'BUKRS'.

*  w_keyinfo-header01 = 'KUNNR'.

*  w_keyinfo-item01 = 'KUNNR'.

*&---------------------------------------------------------------------*

   w_fcat-col_pos = 1.

   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSAD'.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 2.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSAD'.

   w_fcat-outputlen = 15.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 3.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSAD'.

    w_fcat-outputlen = 15.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 4.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSAD'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 5.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSAD'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

     w_fcat-col_pos = 6.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSAD'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

w_fcat-col_pos = 7.

   w_fcat-fieldname = 'BUKRS'.

   w_fcat-seltext_m = 'COMPANY CODE'.

   w_fcat-tabname = 'WA_BSID'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 8.

   w_fcat-fieldname = 'KUNNR'.

   w_fcat-seltext_m = 'CUSTOMER No.'.

   w_fcat-tabname = 'WA_BSID'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 9.

   w_fcat-fieldname = 'BUDAT'.

   w_fcat-seltext_m = 'POSTING DATE'.

   w_fcat-tabname = 'WA_BSID'.

   w_fcat-outputlen = 15.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 10.

   w_fcat-fieldname = 'WRBTR'.

   w_fcat-seltext_l = 'AMOUNT'.

   w_fcat-tabname = 'WA_BSID'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

   w_fcat-col_pos = 11.

   w_fcat-fieldname = 'BELNR'.

   w_fcat-seltext_m = 'DOCUMENT No.'.

   w_fcat-tabname = 'WA_BSID'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

     w_fcat-col_pos = 12.

   w_fcat-fieldname = 'SHKZG'.

   w_fcat-seltext_m = 'INDICATOR'.

   w_fcat-tabname = 'WA_BSID'.

   w_fcat-outputlen = 10.

   APPEND w_fcat TO t_fcat.

ENDFORM.                    " BUILD_FIELDCAT


Why it is coming 17 times?

Read only

0 Likes
2,723

How did you fill w_keyinfo ?

Regards,

Raymond

Read only

0 Likes
2,723

Hi Raymond,

Thank you for the response. I referred another program with the same FM.

w_keyinfo-header01 = 'BUKRS'.


   w_keyinfo-item01 = 'BUKRS'.


In the other program, they used the primary keys and so I did. The values are coming fine but why repeating..  Actually I thought I have to put key as its name suggests, so I have put. Please suggest where I am lacking.

Regards

Purnand

Read only

0 Likes
2,723

That is normal, actually YOU asked the program to display every item of second table with the same company code that current line in fist table.

What is your exact purpose, as BSID and BSAD are account document item table for customer, they are at same level, no hierarchical hierarchy between them. Usually their records are merged in a single internal table, with an icon appended for status cleared or not. A header would be customer (KNB1+KNA1) if hierarchical display actually required ?

Regards,
Raymond

Read only

0 Likes
2,723

Hi,

Thank you for the reply. I have to create the ALV hierarchical report with these 2 tables. Functional guys want the output of both the tables in one report.

The functional of coding you are telling is correct but I don't want that. Both the tables would have same number of records. Like in my case there are 17 records, I want the output of 17 records of bsad and bsid.

But the above report is showing 17*17 times.

Regards

Purnand

Read only

0 Likes
2,723

You don't actually need a hierarchy ALV list, better look for

  • REUSE_ALV_BLOCK_LIST_INIT
  • REUSE_ALV_BLOCK_LIST_APPEND
  • REUSE_ALV_BLOCK_LIST_DISPLAY

Regards,

Raymond

Read only

0 Likes
2,723

Hi,

Thank you for your precious time.

I want the format in the following form:

The functional consultant showed these 2 report outputs and told me to create like this. I checked their codings. They have used 'REUSE_ALV_HIERSEQ_LIST_DISPLAY' FM.

I checked the sample code and tried to create of my own but the output got ruined. Can you please help me?

Read only

0 Likes
2,723

Hi,

I changed the FM to reuse_alv_grid_display since there is no header and item relationship between bsad and bsid. Thank you for your valuable time.

Regards

Purnand

Read only

Former Member
0 Likes
2,723

This message was moderated.

Read only

Former Member
0 Likes
2,723

Pl guide.

Read only

0 Likes
2,723

Hi,

The table IT_BSAD contains 17 records and IT_BSID contains 17 records. Whereas if you want to have only one header and 17 records corresponding to that header, then you have only one single record which will only contain WA_BSAD-BUKRS & WA_BSAD-KUNNR as header records. As there are 17 records all with different BELNR so it is displaying the records 17 * 17 times. In simple terms Header record will have all the fields which have the same values for all 17 records.

Also place a breakpoint at function module REUSE_ALV_HIERSEQ_LIST_DISPLAY and check the records in IT_BSAD & IT_BSID which will give you more clarity.

Hope this helps.

Thanks,

Tooshar Bendale

Read only

Former Member
0 Likes
2,723

Hi,

The table IT_BSAD contains 17 records and IT_BSID contains 17 records. Whereas if you want to have only one header and 17 records corresponding to that header, then you have only one single record which will only contain WA_BSAD-BUKRS & WA_BSAD-KUNNR as header records. As there are 17 records all with different BELNR so it is displaying the records 17 * 17 times. In simple terms Header record will have all the fields which have the same values for all 17 records.

Also place a breakpoint at function module REUSE_ALV_HIERSEQ_LIST_DISPLAY and check the records in IT_BSAD & IT_BSID which will give you more clarity.

Hope this helps.

Thanks,

Tooshar Bendale

Read only

Former Member
0 Likes
2,723

Hi,

Please check this code if it is helpful.


REPORT  ztest23.
TABLES: bsad, bsid.

TYPE-POOLS: slis.




TYPES: BEGIN OF ty_bsad,

        bukrs TYPE bukrs,

        kunnr TYPE kunnr,

        budat TYPE budat,

        wrbtr TYPE wrbtr,

        belnr TYPE belnr_d,

        shkzg TYPE shkzg,

   END OF ty_bsad.



TYPES: BEGIN OF ty_bsid,

       bukrs TYPE bukrs,

       kunnr TYPE kunnr,

     budat TYPE budat,

     wrbtr TYPE wrbtr,

     belnr TYPE belnr_d,

     shkzg TYPE shkzg,

END OF ty_bsid.



DATA: it_bsad TYPE STANDARD TABLE OF ty_bsad,

      it_bsid TYPE STANDARD TABLE OF ty_bsid.


DATA: wa_bsad TYPE STANDARD TABLE OF ty_bsad,

      wa_bsid TYPE STANDARD TABLE OF ty_bsid.


DATA: w_fcat TYPE slis_fieldcat_alv.

DATA: t_fcat TYPE slis_t_fieldcat_alv.


CONSTANTS: c_bsad TYPE slis_tabname VALUE 'WA_BSAD'.

CONSTANTS: c_bsid TYPE slis_tabname VALUE 'WA_BSID'.


DATA: w_keyinfo TYPE slis_keyinfo_alv.



SELECT-OPTIONS: s_bukrs FOR bsad-bukrs,

                s_kunnr FOR bsad-kunnr.


SELECT-OPTIONS: s_date FOR bsad-budat.



START-OF-SELECTION.


*  BREAK-POINT.

  PERFORM get_data.

  PERFORM build_fieldcat.

  PERFORM display_alv.




*&---------------------------------------------------------------------*
*&      Form  get_Data
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM get_data.

  SELECT bukrs

         kunnr

         budat

         wrbtr

        belnr

       shkzg

       FROM bsad

    INTO TABLE it_bsad

    WHERE bukrs IN s_bukrs AND kunnr IN s_kunnr AND budat IN s_date.

  IF sy-subrc EQ 0.
    SORT it_bsad BY bukrs kunnr.
    SELECT bukrs
         kunnr

         budat

         wrbtr

         belnr

         shkzg

      FROM bsid

      INTO TABLE it_bsid
       FOR ALL ENTRIES IN it_bsad
      WHERE bukrs = it_bsad-bukrs and kunnr = it_bsad-kunnr.
    IF sy-subrc EQ 0.
      SORT it_bsid BY bukrs.
      DELETE ADJACENT DUPLICATES FROM it_bsad COMPARING bukrs.
    ENDIF.
  ENDIF.

ENDFORM.                    "get_Data


*&---------------------------------------------------------------------*
*&      Form  build_fieldcat
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM build_fieldcat .

  w_keyinfo-header01 = 'BUKRS'.

  w_keyinfo-item01 = 'BUKRS'.

*&---------------------------------------------------------------------*


  w_fcat-col_pos = 1.


  w_fcat-fieldname = 'BUKRS'.

  w_fcat-seltext_m = 'COMPANY CODE'.

  w_fcat-tabname = 'WA_BSAD'.

  APPEND w_fcat TO t_fcat.


  w_fcat-col_pos = 2.

  w_fcat-fieldname = 'KUNNR'.

  w_fcat-seltext_m = 'CUSTOMER No.'.

  w_fcat-tabname = 'WA_BSID'.

  APPEND w_fcat TO t_fcat.


  w_fcat-col_pos = 3.

  w_fcat-fieldname = 'BUDAT'.

  w_fcat-seltext_m = 'POSTING DATE'.

  w_fcat-tabname = 'WA_BSID'.

  APPEND w_fcat TO t_fcat.


  w_fcat-col_pos = 4.

  w_fcat-fieldname = 'WRBTR'.

  w_fcat-seltext_l = 'AMOUNT'.

  w_fcat-tabname = 'WA_BSID'.

  APPEND w_fcat TO t_fcat.


  w_fcat-col_pos = 5.

  w_fcat-fieldname = 'BELNR'.

  w_fcat-seltext_m = 'DOCUMENT No.'.

  w_fcat-tabname = 'WA_BSID'.

  APPEND w_fcat TO t_fcat.


  w_fcat-col_pos = 6.

  w_fcat-fieldname = 'SHKZG'.

  w_fcat-seltext_m = 'INDICATOR'.

  w_fcat-tabname = 'WA_BSID'.

  APPEND w_fcat TO t_fcat.





*  w_fcat-col_pos = 7.
*
*
*  w_fcat-fieldname = 'BUKRS'.
*
*  w_fcat-seltext_m = 'COMPANY CODE'.
*
*  w_fcat-tabname = 'WA_BSID'.
*
*  APPEND w_fcat TO t_fcat.
*
*
*  w_fcat-col_pos = 8.
*
*  w_fcat-fieldname = 'KUNNR'.
*
*  w_fcat-seltext_m = 'CUSTOMER No.'.
*
*  w_fcat-tabname = 'WA_BSID'.
*
*  APPEND w_fcat TO t_fcat.
*
*
*  w_fcat-col_pos = 9.
*
*  w_fcat-fieldname = 'BUDAT'.
*
*  w_fcat-seltext_m = 'POSTING DATE'.
*
*  w_fcat-tabname = 'WA_BSID'.
*
*  APPEND w_fcat TO t_fcat.
*
*
*  w_fcat-col_pos = 10.
*
*  w_fcat-fieldname = 'WRBTR'.
*
*  w_fcat-seltext_l = 'AMOUNT'.
*
*  w_fcat-tabname = 'WA_BSID'.
*
*  APPEND w_fcat TO t_fcat.
*
*
*  w_fcat-col_pos = 11.
*
*  w_fcat-fieldname = 'BELNR'.
*
*  w_fcat-seltext_m = 'DOCUMENT No.'.
*
*  w_fcat-tabname = 'WA_BSID'.
*
*  APPEND w_fcat TO t_fcat.
*
*
*  w_fcat-col_pos = 12.
*
*  w_fcat-fieldname = 'SHKZG'.
*
*  w_fcat-seltext_m = 'INDICATOR'.
*
*  w_fcat-tabname = 'WA_BSID'.
*
*  APPEND w_fcat TO t_fcat.

ENDFORM.                    " BUILD_FIELDCAT


*&---------------------------------------------------------------------*
*&      Form  display_alv
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM display_alv .


  CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
    EXPORTING
      it_fieldcat      = t_fcat
      i_tabname_header = c_bsad
      i_tabname_item   = c_bsid
      is_keyinfo       = w_keyinfo
    TABLES
      t_outtab_header  = it_bsad
      t_outtab_item    = it_bsid.

ENDFORM.                    " DISPLAY_ALV

Regards,

Suman