‎2008 Feb 29 6:15 AM
HI Experts,
I hav used select-options date. I need to disable the high date range (S_DATE-HIGH). so that user can only change the lower limit. pLZ HELP.
tHANKS.
KHAN
‎2008 Feb 29 6:20 AM
Hi,
Try like below....
DATA date TYPE dats.
SELECT-OPTIONS s_date FOR date.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-name = 'S_DATE-HIGH'.
screen-input = 0.
ENDIF.
MODIFY SCREEN.
ENDLOOP.Cheers,
jose.
‎2008 Feb 29 6:18 AM
You can use 'No Interval' addition with the select option defenation.
SELECTION-SCREEN INCLUDE SELECT-OPTIONS selcrit
[OBLIGATORY [OFF]]
[NO INTERVALS [OFF]]
[NO-EXTENSIONS [OFF]]
[MODIF ID modid]
[ID id].
Or you can use the FM' SELECT_OPTIONS_RESTRICT for that purpose.
‎2008 Feb 29 6:21 AM
HI ABHI,
I supposed to display the high range with current date but in disabled mode.
Thanks.
Khan.
‎2008 Feb 29 6:32 AM
In that case,
Use the following logic:
Even you can achieve it by the following approach:
Loop the screen table in AT SELECTION-SCREEN OUTPUT event and modify the screen table like following:
LOOP AT SCREEN.
IF SCREEN-NAME = S_MATNR-HIGH.
SCREEN-INPUT = 0. ( or SCREEN-INVISIBLE = 1)
MODIFY SCREEN.
ENDIF.
ENDLOOP.
‎2008 Feb 29 6:20 AM
Hi,
Use NO INTERVALS extension in ur select-options. This will help. Reward points if helpful.
Regards,
Ramya
‎2008 Feb 29 6:20 AM
Hi,
Try like below....
DATA date TYPE dats.
SELECT-OPTIONS s_date FOR date.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-name = 'S_DATE-HIGH'.
screen-input = 0.
ENDIF.
MODIFY SCREEN.
ENDLOOP.Cheers,
jose.
‎2008 Feb 29 6:20 AM
hi
Use NO INTERVALS Keyword....
tables : mara.
Select-options S_matnr for Mara-matnr No intervals
This will hide ur HIGH value so as ur Select options look alike Parameters
‎2008 Feb 29 6:25 AM
Hi,
SELECT-OPTIONS
Declares selection criteria for a selection screen.
Syntax
SELECT-OPTIONS <sel> FOR <f>
[DEFAULT <g> [to <h>] [OPTION <op>] SIGN <s>]
[MEMORY ID <pid>]
[LOWER CASE]
[OBLIGATORY]
[NO-DISPLAY]
[MODIF ID <key>]
[NO-EXTENSION]
[NO INTERVALS]
[NO DATABASE SELECTION].
Declares a selection table <sel> for the field <f>. For <sel>, places input fields on the corresponding selection screen. The additions allow you to set a default value, accept input in lowercase, define a required field, suppress or modify the display on the selection screen, restrict the selection table to a line or a selection to a single field, or prevent input from being passed to a logical database
Regards,
Priya.
‎2008 Feb 29 6:30 AM
Hi Khan,
Try this:
DATA date TYPE dats.
SELECT-OPTIONS s_date FOR date.
AT SELECTION-SCREEN OUTPUT.
s_date-high = sy-datum.
APPEND s_date.
LOOP AT SCREEN.
IF screen-name = 'S_DATE-HIGH'.
screen-input = 0.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Reward Points if Useful.
‎2008 Feb 29 6:37 AM
Hi,
You can just decalre like,
SELECT-OPTIONS:
<date >FOR <sflight-fldate> NO-EXTENSION NO INTERVALS.
‎2008 Feb 29 6:40 AM
Hi,
I think it will better to hide the unwanted selection. May be in the future, you would be needed to add the same again.
So, why don't you use NO-DISPLAY option with the input field.
Select-option: name for kna1-name1 NO DISPLAY.
OR
If you can use the Parameter selection if you don't want to use the high range value, then in this case, an unique input criteria will work for the user.
Thanks,
ShAMIM