fix srtti types (#1047)

* fix srtti types

* update
This commit is contained in:
oblomov 2024-03-29 16:54:52 +01:00 committed by GitHub
parent 93a8a988f4
commit b4fed491d5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 24 additions and 7 deletions

View File

@ -366,7 +366,7 @@ ENDCLASS.
CLASS Z2UI5_CL_UTIL_API IMPLEMENTATION.
CLASS z2ui5_cl_util_api IMPLEMENTATION.
METHOD boolean_abap_2_json.
@ -422,6 +422,11 @@ CLASS Z2UI5_CL_UTIL_API IMPLEMENTATION.
METHOD check_unassign_inital.
IF val IS INITIAL.
result = abap_true.
RETURN.
ENDIF.
FIELD-SYMBOLS <any> TYPE data.
ASSIGN val->* TO <any>.

View File

@ -156,14 +156,24 @@ CLASS z2ui5_cl_core_bind_srv IMPLEMENTATION.
METHOD clear.
TRY.
data(lv_path) = shift_right( val = val sub = `->*` ).
DATA(lv_path) = shift_right( val = val sub = `->*` ).
mo_app->mt_attri->*[ name = lv_path ]-check_dissolved = abap_false.
mo_app->mt_attri->*[ name = lv_path ]-name_client = ``.
mo_app->mt_attri->*[ name = lv_path ]-bind_type = ``.
* clear mo_app->mt_attri->*[ name = lv_path ]-r_ref.
* clear mo_app->mt_attri->*[ name = lv_path ]-o_typedescr.
LOOP AT mo_app->mt_attri->* REFERENCE INTO DATA(lr_bind2)
WHERE name = lv_path.
CLEAR lr_bind2->r_ref.
LOOP AT mo_app->mt_attri->* REFERENCE INTO DATA(lr_bind2).
IF lr_bind2->name CS val.
DELETE mo_app->mt_attri->*.
ENDIF.
ENDLOOP.
* IF lr_bind2->name CS val.
* DELETE mo_app->mt_attri->*.
* ENDIF.
* ENDLOOP.
CATCH cx_root.
ENDTRY.

View File

@ -110,7 +110,7 @@ CLASS z2ui5_cl_core_dissolve_srv IMPLEMENTATION.
DATA(lt_attri) = z2ui5_cl_util=>rtti_get_t_attri_by_oref( lr_ref ).
LOOP AT lt_attri REFERENCE INTO DATA(lr_attri)
WHERE visibility = cl_abap_objectdescr=>public
WHERE visibility = cl_abap_objectdescr=>public
AND is_interface = abap_false
AND is_constant = abap_false.
TRY.

View File

@ -78,6 +78,8 @@ CLASS z2ui5_cl_core_app IMPLEMENTATION.
CATCH cx_root INTO DATA(x2).
TRY.
lo_model->attri_refs_update( ).
DATA(lo_dissolver) = NEW z2ui5_cl_core_dissolve_srv(
attri = mt_attri
app = mo_app ).