
REPORT zfiori_theme.
TABLES: suid_st_bname.
DATA: lt_spers_obj TYPE TABLE OF spers_obj WITH HEADER LINE.
DATA: lv_spers_fld TYPE spers_fld.
DATA: BEGIN OF tp_s_user_profile_base,
uname TYPE syuname,
id TYPE string,
shell_type TYPE string,
value TYPE string,
data_type TYPE string,
edit_state TYPE i,
validation_mask TYPE string,
END OF tp_s_user_profile_base .
DATA: s_obj TYPE RANGE OF spers_obj-object_id,
sr_obj LIKE LINE OF s_obj.
DATA: lv_uname TYPE sy-uname.
DATA: pers_data LIKE TABLE OF tp_s_user_profile_base,
pers_data_list TYPE spers_adt.
SELECT-OPTIONS: s_user FOR suid_st_bname-bname.
PARAMETERS p_theme TYPE /ui2/nwbc_cfg_param_value.
START-OF-SELECTION.
LOOP AT s_user REFERENCE INTO DATA(lsr_user).
CLEAR: sr_obj.
sr_obj-sign = lsr_user->sign.
sr_obj-option = lsr_user->option.
sr_obj-low = lsr_user->low.
sr_obj-high = lsr_user->high.
APPEND sr_obj TO s_obj.
ENDLOOP.
SELECT * FROM spers_obj INTO TABLE lt_spers_obj
WHERE pers_type EQ 'U'
AND object_id IN s_obj
AND pers_key EQ '/UI2/USER_PROFILE'
AND fieldname EQ 'VALUE'.
END-OF-SELECTION.
lv_spers_fld = p_theme.
LOOP AT lt_spers_obj.
CLEAR: pers_data, pers_data[], lv_uname.
lv_uname = lt_spers_obj-object_id.
CALL METHOD cl_pers_admin=>get_data
EXPORTING
p_pers_key = '/UI2/USER_PROFILE'
p_uname = lv_uname
p_user_data_only = ' '
IMPORTING
p_pers_data = pers_data
p_pers_data_list = pers_data_list.
LOOP AT pers_data ASSIGNING FIELD-SYMBOL(<fs_pers>).
<fs_pers>-value = lv_spers_fld.
ENDLOOP.
CALL METHOD cl_pers_admin=>set_data
EXPORTING
p_pers_key = '/UI2/USER_PROFILE'
p_uname = lv_uname
p_pers_data = pers_data
EXCEPTIONS
pers_key_not_found = 1
data_type_error = 2
user_does_not_exist = 3
not_set_to_default = 4
pers_key_locked = 5
OTHERS = 6.
IF sy-subrc EQ 0.
WRITE:/ lv_uname, (50) 'Updated'.
ELSE.
WRITE:/ lv_uname, (50) 'NON-Error'.
ENDIF.
ENDLOOP.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
15 | |
10 | |
8 | |
7 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |