nested views (#337)

* error message

* update nested views
This commit is contained in:
oblomov 2023-07-04 17:44:08 +02:00 committed by GitHub
parent bf6626ebe5
commit b38c700ae2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 54 additions and 13 deletions

View File

@ -135,16 +135,22 @@ CLASS z2ui5_cl_http_handler IMPLEMENTATION.
` if (!sap.z2ui5.checkNestAfter) {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML !== '') {` && |\n| &&
` sap.z2ui5.oController.ViewClose(sap.z2ui5.oViewNest);` && |\n| &&
* ` jQuery.sap.delayedCall(50, this, function () { ` &&
` new sap.ui.core.mvc.XMLView.create({` && |\n| &&
` definition: sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.XML,` && |\n| &&
` }).then(oView => {` && |\n| &&
` oView.setModel(new sap.ui.model.json.JSONModel(sap.z2ui5.oResponse.OVIEWMODEL));` && |\n| &&
` var oParent = sap.z2ui5.oView.byId(sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.ID);` && |\n| &&
` oParent.addContent(oView);` && |\n| &&
` // oParent.addContent(oView);` && |\n| &&
` oParent[ sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.METHOD_DESTROY ]();` && |\n| &&
` // oParent.removeAllMidColumnPages();` && |\n| &&
` oParent[ sap.z2ui5.oResponse.PARAMS.S_VIEW_NEST.METHOD_INSERT ](oView);` && |\n| &&
` // oParent.addMidColumnPage(oView);` && |\n| &&
` sap.z2ui5.checkNestAfter = true;` && |\n| &&
` sap.z2ui5.oViewNest = oView;` && |\n| &&
` },` && |\n| &&
` );` && |\n| &&
* ` }); ` &&
` }` && |\n| &&
` }` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_POPOVER.CHECK_CLOSE == true) {` && |\n| &&
@ -299,8 +305,10 @@ CLASS z2ui5_cl_http_handler IMPLEMENTATION.
` );` && |\n| &&
` } else {` && |\n| &&
` if (sap.z2ui5.oView) {` && |\n| &&
` if (sap.z2ui5.oResponse.PARAMS.S_VIEW.CHECK_UPDATE_MODEL == true) {` && |\n| &&
` sap.z2ui5.oView.setModel(oModel);` && |\n| &&
` }` && |\n| &&
` }` && |\n| &&
` sap.z2ui5.oController.onAfterRendering();` && |\n| &&
` }` && |\n| &&
` },` && |\n| &&

View File

@ -656,11 +656,14 @@ CLASS z2ui5_lcl_fw_handler DEFINITION.
BEGIN OF s_view,
xml TYPE string,
check_destroy TYPE abap_bool,
check_update_model type abap_bool,
END OF s_view,
BEGIN OF s_view_nest,
xml TYPE string,
id TYPE string,
check_destroy TYPE abap_bool,
xml TYPE string,
id TYPE string,
method_insert TYPE string,
method_destroy TYPE string,
check_destroy TYPE abap_bool,
END OF s_view_nest,
BEGIN OF s_popup,
xml TYPE string,
@ -944,7 +947,7 @@ CLASS z2ui5_lcl_fw_app IMPLEMENTATION.
* SPLIT lv_prog AT `=` INTO DATA(lv_classname) DATA(lv_Dummy) ##NEEDED.
DATA(lv_classname) = segment( val = lv_prog index = 1 sep = `=` ).
DATA(lv_link2) = client->get( )-s_config-origin && `/sap/bc/adt/oo/classes/` && lv_classname && `/source/main`.
DATA(lv_source) = `<p>Source: <a href="` && lv_link2 && `" style="color:blue; font-weight:600;">web</a></p>`.
DATA(lv_source) = `<p><a href="` && lv_link2 && `" style="color:blue; font-weight:600;">Source Code</a></p>`.
DATA(lv_descr) = escape( val = lv_txt && lv_source format = cl_abap_format=>e_xml_attr ).
DATA(ls_get) = client->get( ).
@ -1704,6 +1707,8 @@ CLASS z2ui5_lcl_fw_client IMPLEMENTATION.
mo_handler->ms_next-s_set-s_view_nest-xml = val.
mo_handler->ms_next-s_set-s_view_nest-id = id.
mo_handler->ms_next-s_set-s_view_nest-method_destroy = method_destroy.
mo_handler->ms_next-s_set-s_view_nest-method_insert = method_insert.
ENDMETHOD.
@ -1800,4 +1805,10 @@ CLASS z2ui5_lcl_fw_client IMPLEMENTATION.
ENDMETHOD.
METHOD z2ui5_if_client~view_model_update.
mo_handler->ms_next-s_set-s_view-check_update_model = abap_true.
ENDMETHOD.
ENDCLASS.

View File

@ -878,15 +878,21 @@ CLASS z2ui5_cl_xml_view DEFINITION
METHODS filter_control
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
METHODS flexible_column_layout
IMPORTING
!layout TYPE clike
layout TYPE clike
id TYPE clike
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS begin_column_pages
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
VALUE(result) TYPE REF TO z2ui5_cl_xml_view.
METHODS mid_column_pages
IMPORTING
!id TYPE clike OPTIONAL
RETURNING
VALUE(result) TYPE REF TO z2ui5_cl_xml_view .
@ -1017,7 +1023,9 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
METHOD begin_column_pages.
" todo, implement method
result = me.
result = _generic( name = `beginColumnPages`
ns = `f` ).
ENDMETHOD.
@ -1446,9 +1454,14 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
METHOD flexible_column_layout.
result = _generic( name = `FlexibleColumnLayout`
ns = `f`
t_prop = VALUE #( ( n = `layout` v = layout ) ) ).
t_prop = VALUE #(
( n = `layout` v = layout )
( n = `id` v = id )
) ).
ENDMETHOD.
@ -1850,6 +1863,7 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
METHOD message_view.
result = _generic( name = `MessageView`
t_prop = VALUE #( ( n = `items` v = items )
( n = `groupItems` v = lcl_utility=>get_json_boolean( groupItems ) ) ) ).
@ -1857,8 +1871,11 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION.
METHOD mid_column_pages.
" todo, implement method
result = me.
result = _generic( name = `midColumnPages`
ns = `f`
t_prop = VALUE #( ( n = `id` v = id ) ) ).
ENDMETHOD.

View File

@ -53,10 +53,15 @@ INTERFACE z2ui5_if_client
IMPORTING
val TYPE clike.
METHODS view_model_update.
METHODS view_display_nested
IMPORTING
val TYPE clike
id type clike.
id type clike
method_insert type clike
method_destroy type clike
.
METHODS cursor_set
IMPORTING