Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 9052

Re: How to write a dynamic ALV report?

$
0
0

Hi,

Since you got three radio-buttons, that means you can select one of them at a time.

Use this code. It may help.

 

 

TYPE-POOLS : SLIS.

 

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-100.

PARAMETERS: first RADIOBUTTON GROUP rb USER-COMMAND s DEFAULT 'X',

             second RADIOBUTTON GROUP rb,

             third RADIOBUTTON GROUP rb.

PARAMETERS : p_tab TYPE tabname OBLIGATORY.

SELECTION-SCREEN END OF BLOCK b1.

 

 

Data  t_fcat TYPE slis_t_fieldcat_alv.

 

Data : w_data_ref TYPE REF TO DATA,

        t_line TYPE C LENGTH 20.

 

FIELD-SYMBOLS : <i_tab> TYPE STANDARD TABLE.

 

START-OF-SELECTION.

 

    SELECT SINGLE tabname FROM  dd02l

      INTO t_line WHERE tabname = p_tab.

 

   If sy-subrc eq 0.

     CREATE DATA w_data_ref TYPE STANDARD TABLE OF (p_tab).

     ASSIGN W_data_ref->* To <i_tab>.

 

         If sy-subrc eq 0.

           SELECT * from (p_tab) INTO TABLE <i_tab> UP TO 10 ROWS.

             If sy-subrc eq 0.

               CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

                EXPORTING

                  I_PROGRAM_NAME               = sy-repid

                  I_STRUCTURE_NAME             = p_tab

                 CHANGING

                   ct_fieldcat                  = t_fcat

                EXCEPTIONS

                  INCONSISTENT_INTERFACE       = 1

                  PROGRAM_ERROR                = 2

                  OTHERS                       = 3

                         .

               IF sy-subrc = 0.

                 CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

                  EXPORTING

                    I_CALLBACK_PROGRAM                = sy-repid

                    IT_FIELDCAT                       = t_fcat

                   TABLES

                     t_outtab                          = <i_tab>

                  EXCEPTIONS

                    PROGRAM_ERROR                     = 1

                    OTHERS                            = 2

                           .

                 IF sy-subrc <> 0.

                 ENDIF.

 

               ENDIF.

         ENDIF.

 

       ENDIF.

     ENDIF.


Regards.


Viewing all articles
Browse latest Browse all 9052

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>