Create an option
SE24 -> ZCL_AQO_TESTER
To create an option based on class attributes, just press F8.
The description of the fields is similar to the description of the structure
except that attributes must be PUBLIC and READ-ONLY
They can be either:
- Instance Attribute
- Static Attribute
but not both at the same time (otherwise an exception will occur)
Since READ-ONLY attributes cannot be changed outside the class you need to add ZCL_AQO_OPTION to the class friends.
If you forget to do this, a special reminder will be issued at runtime
When make initialization
It is advisable to call the setup creation code once in CONSTRUCTOR or in CLASS-CONSTRUCTOR
" Default values! For simple types use initilazation in declaration itself
" Optional initialization
APPEND INITIAL LINE TO me->bukrs_range ASSIGNING <ls_bukrs>.
<ls_bukrs>-sign = 'I'.
<ls_bukrs>-option = 'BT'.
<ls_bukrs>-low = '1000'.
<ls_bukrs>-high = '3000'.
SELECT * INTO TABLE me->t002_tab
FROM t002.
" Read new values
TRY.
zcl_aqo_option=>create(
iv_package_id = '$TMP' " Package "#EC NOTEXT
iv_option_id = 'Class options'(op1) " Any text < 30 symbols
" Public read-only attributes is options!
" CLASS-DATA or DATA (but not both)
io_data = me
" iv_repair = abap_true
).
CATCH zcx_aqo_exception INTO lo_error.
MESSAGE lo_error TYPE 'S' DISPLAY LIKE 'E'.
RETURN.
ENDTRY.
After that, the attributes of ME->* will contain the data that the developer or consultant could change in one of the maintenance programs