Практически в каждом отчете мы используем Select-options. При этом по умолчанию нам доступны все опции выбора.
Но что делать если нам нужен только четкое равенство? Постоянно проверять ввод с экрана? Нет, можно убрать ненужные опции выбора.
для этого напишем следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
SELECT-OPTIONS s_datum FOR gr_field. INITIALIZATION. DATA: ls_restriction TYPE sscr_restrict. ls_restriction = VALUE #( opt_list_tab = VALUE #( ( name = 'GR_1' options-eq = abap_true ) ) ass_tab = VALUE #( ( kind = 'S' name = 'S_DATUM' sg_main = 'I' sg_addy = space op_main = 'GR_1' ) ) ). CALL FUNCTION 'SELECT_OPTIONS_RESTRICT' EXPORTING restriction = ls_restriction EXCEPTIONS too_late = 1 repeated = 2 selopt_without_options = 3 selopt_without_signs = 4 invalid_sign = 5 empty_option_list = 6 invalid_kind = 7 repeated_kind_a = 8 OTHERS = 9. IF sy-subrc <> 0. * Implement suitable error handling here ENDIF. START-OF-SELECTION. |
Результат: