Skip to content

Migrate from z2ui5_cl_ai_xml to z2ui5_cl_ui5_view_builder - #17

Merged
oblomov-dev merged 1 commit into
mainfrom
claude/ai-xml-ui5-migration-gpb04k
Aug 14, 2026
Merged

oblomov-dev merged 1 commit into
mainfrom
claude/ai-xml-ui5-migration-gpb04k

Conversation

@oblomov-dev

Copy link
Copy Markdown
Member

The framework removed z2ui5_cl_ai_xml (abap2UI5/abap2UI5#2586); the view builder is z2ui5_cl_ui5_view_builder. The verbs map 1:1 - open/leaf/shut become ele/tag/end, a( ) and stringify( ) keep their names, and the attribute target rule is the same - so the rendered views come out identical.

What could not be a plain rename:

  • z2ui5_cl_cci=>leaf becomes z2ui5_cl_cci=>tag, named after the builder verb it mirrors. The new builder takes no attribute table, so the method now owns the ty_t_attr type and sets each surviving key=value pair through its own a( ) call.
  • as_bool( ) is gone; a boolean from an ABAP variable goes through a( )'s b parameter (sample_01), and the two builder docs that recommended as_bool( ) now name the true/false literals instead.

Touching every sample also deletes the 21 client->view_model_update( ) calls - the method is obsolete and does nothing, the framework pushes a changed model on its own - and reworks the three prose mentions (sample_04, sample_10, README, ChartJs.js with regenerated BSP).

abaplint green against the framework's main; abap2UI5-linter reconstructs and renders all 11 sample views, the obsolete-model-update findings are gone, the remaining findings predate this change.

Claude-Session: https://claude.ai/code/session_011MiigXtbxL5Z4prr5QK23C

The framework removed z2ui5_cl_ai_xml (abap2UI5/abap2UI5#2586); the view
builder is z2ui5_cl_ui5_view_builder. The verbs map 1:1 - open/leaf/shut
become ele/tag/end, a( ) and stringify( ) keep their names, and the
attribute target rule is the same - so the rendered views come out
identical.

What could not be a plain rename:

- z2ui5_cl_cci=>leaf becomes z2ui5_cl_cci=>tag, named after the builder
  verb it mirrors. The new builder takes no attribute table, so the
  method now owns the ty_t_attr type and sets each surviving key=value
  pair through its own a( ) call.
- as_bool( ) is gone; a boolean from an ABAP variable goes through
  a( )'s b parameter (sample_01), and the two builder docs that
  recommended as_bool( ) now name the true/false literals instead.

Touching every sample also deletes the 21 client->view_model_update( )
calls - the method is obsolete and does nothing, the framework pushes a
changed model on its own - and reworks the three prose mentions
(sample_04, sample_10, README, ChartJs.js with regenerated BSP).

abaplint green against the framework's main; abap2UI5-linter reconstructs
and renders all 11 sample views, the obsolete-model-update findings are
gone, the remaining findings predate this change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011MiigXtbxL5Z4prr5QK23C
Copilot AI lite review requested due to automatic review settings August 14, 2026 23:44

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@oblomov-dev
oblomov-dev merged commit da69f5b into main Aug 14, 2026
4 checks passed
@oblomov-dev
oblomov-dev deleted the claude/ai-xml-ui5-migration-gpb04k branch August 14, 2026 23:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants