From d40e36739d7e64e10a7357ff697ca66f7a44b994 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 21 Jul 2026 10:15:41 +0000 Subject: [PATCH] Drop /XX/ view-model prefix from samples The framework no longer routes two-way data through a dedicated XX/ view- model node - every binding now lives on the root model. Update the samples that referenced the /XX/ model path directly: - app_173 / app_176: template model paths {template>/XX/...} -> {template>/...} - app_346: custom JS model.setProperty("/XX/FOCUSCOLUMN"/"/XX/FOCUSROW") -> root paths - app_461: comment describing the resolved binding-context paths (the end-anchored parser already handles the shorter path unchanged) Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01BRbBrfS2hPi9EFQqjjgfHX --- src/00/05/z2ui5_cl_demo_app_346.clas.abap | 4 ++-- src/01/01/z2ui5_cl_demo_app_173.clas.abap | 6 +++--- src/01/01/z2ui5_cl_demo_app_176.clas.abap | 4 ++-- src/01/02/z2ui5_cl_demo_app_461.clas.abap | 6 +++--- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/00/05/z2ui5_cl_demo_app_346.clas.abap b/src/00/05/z2ui5_cl_demo_app_346.clas.abap index 26c58915b..cc344f41f 100644 --- a/src/00/05/z2ui5_cl_demo_app_346.clas.abap +++ b/src/00/05/z2ui5_cl_demo_app_346.clas.abap @@ -66,8 +66,8 @@ CLASS z2ui5_cl_demo_app_346 IMPLEMENTATION. && ` const m = focusCtrlId.match(/(\d+$)/);` && ` const model = z2ui5.oView.getModel() ;` && ` model.setProperty("/FOCUSID",focusCtrlId);` - && ` model.setProperty("/XX/FOCUSCOLUMN",column);` - && ` model.setProperty("/XX/FOCUSROW",m[1]);` + && ` model.setProperty("/FOCUSCOLUMN",column);` + && ` model.setProperty("/FOCUSROW",m[1]);` && ` } catch(e){}` && `}, true);` && `` diff --git a/src/01/01/z2ui5_cl_demo_app_173.clas.abap b/src/01/01/z2ui5_cl_demo_app_173.clas.abap index 542971234..84f8f700c 100644 --- a/src/01/01/z2ui5_cl_demo_app_173.clas.abap +++ b/src/01/01/z2ui5_cl_demo_app_173.clas.abap @@ -55,7 +55,7 @@ CLASS Z2UI5_CL_DEMO_APP_173 IMPLEMENTATION. view->table( client->_bind( mt_data ) )->columns( - )->template_repeat( list = `{template>/XX/MT_LAYOUT}` + )->template_repeat( list = `{template>/MT_LAYOUT}` var = `L0` )->column( mergeduplicates = `{L0>MERGE}` visible = `{L0>VISIBLE}` )->text( `{L0>FNAME}` )->get_parent( @@ -63,7 +63,7 @@ CLASS Z2UI5_CL_DEMO_APP_173 IMPLEMENTATION. )->items( )->column_list_item( )->cells( - )->template_repeat( list = `{template>/XX/MT_LAYOUT}` + )->template_repeat( list = `{template>/MT_LAYOUT}` var = `L1` )->object_identifier( text = `{= '{' + ${L1>FNAME} + '}' }` ). @@ -72,7 +72,7 @@ CLASS Z2UI5_CL_DEMO_APP_173 IMPLEMENTATION. change = client->_event( `CHANGE_FLAG` ) ). view = view->vbox( ). - view->template_if( `{template>/XX/MV_FLAG}` + view->template_if( `{template>/MV_FLAG}` )->template_then( )->icon( src = `sap-icon://accept` color = `green` )->get_parent( diff --git a/src/01/01/z2ui5_cl_demo_app_176.clas.abap b/src/01/01/z2ui5_cl_demo_app_176.clas.abap index ccb57c82b..24a9096f8 100644 --- a/src/01/01/z2ui5_cl_demo_app_176.clas.abap +++ b/src/01/01/z2ui5_cl_demo_app_176.clas.abap @@ -76,7 +76,7 @@ CLASS z2ui5_cl_demo_app_176 IMPLEMENTATION. lo_view_nested->shell( )->page( `Nested View` )->table( i_client->_bind( mt_data ) )->columns( - )->template_repeat( list = `{template>/XX/MT_LAYOUT}` + )->template_repeat( list = `{template>/MT_LAYOUT}` var = `LO` )->column( mergeduplicates = `{LO>MERGE}` visible = `{LO>VISIBLE}` )->get_parent( @@ -84,7 +84,7 @@ CLASS z2ui5_cl_demo_app_176 IMPLEMENTATION. )->items( )->column_list_item( )->cells( - )->template_repeat( list = `{template>/XX/MT_LAYOUT}` + )->template_repeat( list = `{template>/MT_LAYOUT}` var = `LO2` )->object_identifier( text = `{= '{' + ${LO2>FNAME} + '}' }` ). diff --git a/src/01/02/z2ui5_cl_demo_app_461.clas.abap b/src/01/02/z2ui5_cl_demo_app_461.clas.abap index 72e6af706..b53ea9679 100644 --- a/src/01/02/z2ui5_cl_demo_app_461.clas.abap +++ b/src/01/02/z2ui5_cl_demo_app_461.clas.abap @@ -53,9 +53,9 @@ CLASS Z2UI5_CL_DEMO_APP_461 IMPLEMENTATION. WHEN `MOVE_NODE`. " both event args arrive resolved client-side: the binding context - " paths of the dragged and the drop target item. The two-way model - " prefixes them with /XX/, e.g. /XX/T_NODES/0/NODES/1 (a file) and - " /XX/T_NODES/2 (a folder) - so parse from the END of the path + " paths of the dragged and the drop target item, e.g. + " /T_NODES/0/NODES/1 (a file) and /T_NODES/2 (a folder) - so parse + " from the END of the path SPLIT client->get_event_arg( ) AT `/` INTO TABLE DATA(lt_drag). SPLIT client->get_event_arg( 2 ) AT `/` INTO TABLE DATA(lt_drop). DATA(lv_drag_lines) = lines( lt_drag ).