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

Re: Select-options

$
0
0

Hi Saran,

 

If possible inputs are going to be fixed as you have specified, then create 3 flgas for each input condition based on input values. After creating flag, modify fieldcatalog to hide respective fields. Check below example:

 

DATA: LV_FLAG1 TYPE C,

       LV_FLAG2 TYPE C,

       LV_FLAG3 TYPE C.

 

***Create flags

 

READ TABLE S_AUART WITH KEY LOW = 'ZONC'.

IF SY-SUBRC = 0.

   CLEAR: LV_FLAG1, LV_FLAG2, LV_FLAG3.

   LV_FLAG1 = 'X'.                                                             "If only 'ZONC'

   READ TABLE S_AUART WITH KEY LOW = 'ZCRN'.

   IF SY-SUBRC = 0.

     READ TABLE S_AUART WITH KEY LOW = 'ZCRP'.

     IF SY-SUBRC = 0.

       CLEAR: LV_FLAG1, LV_FLAG2, LV_FLAG3.

       LV_FLAG3 = 'X'.                                                       "ZCRN, ZCRP and ZONC

     ENDIF.

   ENDIF.

 

ELSE.

   READ TABLE S_AUART WITH KEY LOW = 'ZCRN'.

   IF SY-SUBRC = 0.

     READ TABLE S_AUART WITH KEY LOW = 'ZCRP'.

     IF SY-SUBRC = 0.

       CLEAR: LV_FLAG1, LV_FLAG2, LV_FLAG3.

       LV_FLAG2 = 'X'.                                                      "ZCRN, ZCRP

     ENDIF.

   ENDIF.

ENDIF.

 

*Modify Field catalog

 

IF LV_FLAG1 = 'X'.

   LOOP AT IT_FLDCAT INTO WA_FLDCAT WHERE FIELDNAME = 'fld1'

                                                                          OR FIELDNAME = 'fld2'.

     WA_FLDCAT-NO_OUT = 'X'.

     MODIFY IT_FLDCAT FROM WA_FLDCAT.

     CLEAR WA_FLDCAT.

   ENDLOOP.

 

ELSEIF LV_FLAG2 = 'X'.

   LOOP AT IT_FLDCAT INTO WA_FLDCAT WHERE FIELDNAME = 'fld3'

                                                                               OR FIELDNAME = 'fld4'.

     WA_FLDCAT-NO_OUT = 'X'.

     MODIFY IT_FLDCAT FROM WA_FLDCAT.

     CLEAR WA_FLDCAT.

   ENDLOOP.

 

ELSEIF LV_FLAG3 = 'X'.

   LOOP AT IT_FLDCAT INTO WA_FLDCAT WHERE FIELDNAME = 'fld5'

                                                                                OR FIELDNAME = 'fld5'.

     WA_FLDCAT-NO_OUT = 'X'.

     MODIFY IT_FLDCAT FROM WA_FLDCAT.

     CLEAR WA_FLDCAT.

   ENDLOOP.

ENDIF.


Viewing all articles
Browse latest Browse all 2812

Trending Articles



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