Skip to content

Add Excel import, mass change, approval worklist, report export and conflict-check samples - #109

Merged
oblomov-dev merged 2 commits into
mainfrom
claude/serene-carson-xv5jyy
Nov 2, 2026
Merged

oblomov-dev merged 2 commits into
mainfrom
claude/serene-carson-xv5jyy

Conversation

@oblomov-dev

Copy link
Copy Markdown
Member

Five samples on the travel business object of package 03, each the worked example of a guide in the documentation's new Everyday Work section (abap2UI5/docs, same branch name):

Sample Package What it shows
Z2UI5_CL_SMPS_APP_028 13 Excel import into RAP: XCO read, preview with a status per row, one MODIFY ... CREATE with the row number as %cid, refusals from CREATE and COMMIT mapped back to their row, optional retry without the refused rows
Z2UI5_CL_SMPS_APP_029 03 Mass change: describe the change once, preview old/new, one MODIFY ... UPDATE, refusals by key
Z2UI5_CL_SMPS_APP_030 03 Approval worklist: open travels, several decided with one EXECUTE, RESULT for the confirmation
Z2UI5_CL_SMPS_APP_031 13 Report: selection as range tables, one SELECT, total per currency, shown rows exported as .xlsx
Z2UI5_CL_SMPS_APP_032 03 Edit with conflict check: LastChangedAt remembered on read, compared after the UPDATE took the lock, then COMMIT

Package 13 now carries src/03 and src/00 on its branch (.github/packages.json), because 028 and 031 use the travel business object. Branch builds checked locally: 03-rap at v754 and 13-excel-email at v757, abaplint 0 issues.

Overview app, package READMEs, SAMPLES.md, catalogue.json and catalogue-derived.json are updated; npm run check passes.

Not run on a real system yet — in particular 032 relies on the managed runtime taking the lock at the UPDATE and the SELECT still seeing the saved state before the COMMIT; worth one try with two browser tabs.

Merge this before the docs PR: its check:samples resolves the new classes against samples-stack@main.


Generated by Claude Code

Z2UI5_CL_SMPS_APP_028 reads an .xlsx file with XCO, converts and checks
every row in a preview, and creates all ready rows with one MODIFY
ENTITIES. The %cid is the Excel row number, so refusals from the CREATE
and from the validations at COMMIT (mapped back via MAPPED) are shown on
the row they belong to. A COMMIT is all or nothing; "Skip refused rows"
rolls back and creates the rest in a second attempt.

The sample uses Z2UI5_R_SMPS_TRV, so package 13 now carries src/03 (and
src/00, which 03 needs) on its branch. Catalogue, SAMPLES.md and the
overview app list the new sample.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014YZFmDjwUy369k1iZKoBT5
Each one is the worked example of a guide in the documentation's new
Everyday Work section, on the travel business object of package 03:

- Z2UI5_CL_SMPS_APP_029 mass change: describe the change once, preview
  old and new values per row, one MODIFY ... UPDATE for all, refusals
  from the UPDATE and the COMMIT shown on their row by key
- Z2UI5_CL_SMPS_APP_030 approval worklist: the open travels, several
  accepted or rejected with one EXECUTE, RESULT for the new status
- Z2UI5_CL_SMPS_APP_032 edit with conflict check: optimistic locking in
  a stateless app - LastChangedAt remembered on read and compared after
  the UPDATE has taken the lock, with a button that plays the second user
- Z2UI5_CL_SMPS_APP_031 (package 13) report: selection as range tables,
  one SELECT, a total per currency, the shown rows exported with XCO

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014YZFmDjwUy369k1iZKoBT5
@oblomov-dev
oblomov-dev merged commit 2d77d91 into main Nov 2, 2026
31 checks passed
@oblomov-dev
oblomov-dev deleted the claude/serene-carson-xv5jyy branch November 2, 2026 15:49
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.

2 participants