11-10-2006 5:34 AM
Hi,
How can we use ranges in place of select-options.
if I enter a range in which one value doesn't exist.then it must show a error message 'lower limits is greater than higher limit'.
please do the needful
Hemant
11-10-2006 5:41 AM
Hi,
1. check here definitiona and use of ranges
DATA: range_tab type range of <data type of atinn>,
wa_range like line of range_tab.
loop at itab into wa_itab.
wa_range-low = wa_itab-atinn.
wa_range-high = wa_itab-atinn.
wa_range-SIGN = 'I'. <b>(can be 'E')</b>
wa_range-OPTION = 'EQ'. <b>(Can be 'BT')</b>
append wa_range to range_tab.
endloop.
Message was edited by: Palak Limbachiya
11-10-2006 5:56 AM
Hi Hemant
If you ask me, i would say RANGES is nothing by SELECT-OPTIONS with NO-DISPLAY option.
Eg:
ranges: r_matnr for mara-matnr.
'='
select-options: s_matnr for mara-matnr no-display.
For a parameter which is not visible on selection-screen, we have to do implicit validations.
Kind Regards
Eswar
11-10-2006 6:04 AM
Hi
Define a range:
Ranges: r_field for <table>.
if not field1 is initial.
r_field-sign = 'E'.
r_field-option = 'EQ'.
r_field-option-low = field1.
append r_field.
endif.
if not field2 is initial.
r_field-sign = 'E'.
r_field-option = 'EQ'.
r_field-option-low = field2.
append r_field.
endif.
if field1 is initial and field2 is initial.
r_field-sign = 'I'.
r_field-option = 'EQ'.
append r_field.
endif.
select * from <table> where field1 in r_field.
rgds
Anver
if hlped pls mark points
11-10-2006 9:34 AM
<b>Hi
code like this
Ranges: r_field for <table>.
At selection-screen on r_field .
if r_field-low is initial.
message with 'lower limits is greater than higher limit'.
if not field1 is initial.
r_field-sign = 'E'.
if field1 CA '*+'.
r_field-option = 'CP'."for pattern search by wild card symbols
else.
r_field-option = 'EQ'.
endif.
r_field-option-low = field1.
append r_field.
endif.
if not field2 is initial.
r_field-sign = 'E'.
if field2 CA '*+'.
r_field-option = 'CP'."for pattern search by wild card symbols
else.
r_field-option = 'EQ'.
endif.
r_field-option-low = field2.
append r_field.
endif.
if field1 is initial and field2 is initial.
r_field-sign = 'I'.
r_field-option = 'EQ'.
append r_field.
endif.
select * from <table> where field1 in r_field.
Mark points if helpful
Regs
Manas Ranjan Panda</b><b></b>