2007 Mar 23 2:31 PM
Hi,
Please how to return a parameter grayed (disabled) in selection-screen.
Thanks a lot.
Hi,
Please how to return a parameter grayed (disabled) in selection-screen.
Thanks a lot.
2007 Mar 23 2:34 PM
2007 Mar 23 2:35 PM
Hi there. If you want to grey out a parameter in your selection screen so that the user cannot change or enter data, here's what you need to do. First use a modif ID with the field. Then before your start of selection you will change the screen input value. Here is some sample code:
PARAMETERS: p_field LIKE rlgrap-filename MODIF ID fpn.
AT SELECTION-SCREEN OUTPUT.
make any parameter in group FPN display only
(gray out areas we don't want user to change)
LOOP AT SCREEN.
CHECK screen-group1 = 'FPN'.
screen-input = 0. "Output (Display) only
MODIFY SCREEN.
ENDLOOP.
I hope this helps.
- April King
2007 Mar 23 2:54 PM
I have 2 parameters in my selection-screen and i went if the first is valide and exist, the second became grayed (not in default).
Thanks
2007 Mar 23 2:58 PM
hi,
In ABAP, we will not have any events like lost_cursor similar to VB.
At selection-screen gets triggered once we press Enter after giving input to First parameter. So, that validation can be done for first parameter and make the second parameter grayedout.
Regards,
Sailaja.
2007 Mar 23 3:01 PM
Okay. Then try this (assuming that you have MODIF ID fpn assigned to p_field2):
AT SELECTION-SCREEN.
IF p_field1 > space. "change this to whatever you need to check for field1 to be valid
LOOP AT SCREEN.
CHECK screen-group1 = 'FPN'.
screen-input = 0. "Output (Display) only
MODIFY SCREEN.
ENDLOOP.
ENDIF.
- April
2007 Mar 23 3:01 PM
Hi Hraichi,
PARAMETERS: P_MARA TYPE MARA-MATNR.
PARAMETERS: P_MATKL TYPE MARA-MATKL.
AT SELECTION-SCREEN.
LOOP AT SCREEN.
IF SCREEN-NAME = 'P_MARA' AND P_MATKL IS NOT INTIAL.
SCREEN-INPUT = '0'.
MODIFY SCREEN.
ENDIF.
IF SCREEN-NAME = 'P_MATKL' AND P_MARA IS NOT INTIAL.
SCREEN-INPUT = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
Thanks,
Vinay
2007 Mar 23 2:51 PM
Hi,
You can disable the parameter by setting SCREEN-INPUT as 0 to grayed out in the AT SELECTION-SCREEN event.
PARAMETERS: P_MARA TYPE MARA-MATNR.
AT SELECTION-SCREEN.
LOOP AT SCREEN.
IF SCREEN-NAME = 'P_MARA'.
SCREEN-INPUT = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
Thanks,
Vinay
2007 Mar 23 3:33 PM
How about using radio-buttons to select the active field. Something lie this:
SELECTION-SCREEN BEGIN OF LINE .
PARAMETERS : r_p1 RADIOBUTTON GROUP fred DEFAULT 'X' USER-COMMAND bob ,
p_p1 TYPE char20 MODIF ID pa1 .
SELECTION-SCREEN END OF LINE .
SELECTION-SCREEN BEGIN OF LINE .
PARAMETERS : r_p2 RADIOBUTTON GROUP fred ,
p_p2 TYPE char20 MODIF ID pa2 .
SELECTION-SCREEN END OF LINE .
AT SELECTION-SCREEN OUTPUT .
LOOP AT SCREEN .
IF screen-name EQ 'P_P1' .
IF r_p1 EQ 'X' .
MOVE '1' TO screen-input .
ELSE .
MOVE '0' TO screen-input .
ENDIF .
MODIFY SCREEN .
ENDIF .
IF screen-name EQ 'P_P2' .
IF r_p2 EQ 'X' .
MOVE '1' TO screen-input .
ELSE .
MOVE '0' TO screen-input .
ENDIF .
MODIFY SCREEN .
ENDIF .
ENDLOOP .Have a good weekend!
Lyal
2011 Feb 08 9:46 PM
| User | Count |
|---|---|
| 6 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |