NewSAP Cloud Application Programming Model
In the last 90 days
173 changes
Today
SAP Fiori Application Generator Available in Open SourcepublishedThe SAP Fiori tools team announces that the code behind @sap/generator-fiori@sap/generator-fioriThe single entry point for generating a Fiori application — the user picks a template and the generator produces the project around it.sap official, cap has moved entirely to open source, and names the packages it is built from: writers that output SAP Fiori elements and freestyle SAPUI5 application files, inquirer prompts for picking a back end, and ABAP deploy tasks, coordinated by a sub-generator. Before publishing, the team broke up what had been a monolith, added TypeScript typings and raised test coverage.Fiori annotations
App hostingcore coverage, coverage by ecosystem, coverage by flavor revisedReassessed against the graph (check:capabilities): removed the absence claim about ui5 artifacts.App hosting
Frontend boundarycore coverage revisedReassessed against the graph (check:capabilities): both providers of this capability are sap-official, so no artifact of another origin is present behind the door; the schema allows relationship only on a core-and-community block.Frontend boundary
Integrated frontend dev servercoverage by ecosystem revisedReassessed against the graph (check:capabilities): the only provider of the capability that counts is cds-plugin-ui5, which sits on the CAP door and does not serve the UI5 door, so no provider of another origin counts there. The core stays present on the sourced what_core_does. The middlewares the removed sentence named are not providers of this capability.Integrated frontend dev server
Show 2 more
Localizationcoverage by ecosystem revisedReassessed against the graph (check:capabilities): providers arrived after the block was last looked at, an XLIFF editor and an MCP server among them, and the text named none of the kinds.Localization
Server-side renderingcoverage by ecosystem, coverage by flavor revisedReassessed against the graph (check:capabilities): the sentence claimed an absence of providers, which goes stale when one arrives.Server-side rendering
Yesterday
Keep the Core Clean with Rizing CDSXpublishedJhodel CailanJhodel Cailanmaintains 1 entry, wrote 3 posts, contributed to 1 entry recounts hitting a wall where neither RAP nor CAP supported more than a non-draft OData V2 service for the side-by-side extensibility scenario he wanted, and built Rizing CDSX@rizing/cds-extensionA CAP extension, CDSX, that puts a draft-capable facade in front of an OData service imported into CAP, so Fiori elements can edit records that live in another system as drafts.partner, cap (
@rizing/cds-extension) to add draft handlingDraft handlingLetting a user edit a record over several requests before it becomes real — saving unfinished changes, locking, and activating a completed draft.SAP and community, narrow by design over a shadow persistence entity that mirrors a remote, cds import-ed service. He walks through the @cdsx.api annotation that proxies the entity, bootstrapping the module from cds.on('bootstrap') in server.js, and testing the result through a generated Fiori elements app backed by an OData V4 draft service.Draft handlingMon 19
From Inbox to Quotation: An AI-Assisted Sales Workbench in React on SAP CAPpublishedA Devtoberfest 2026 session walking live through a sales workbench that turns an incoming customer e-mail into a quotation in S/4HANA, built as a React UI on CAP. It shows the filterable request inbox, the extracted configuration properties with a confidence indicator per characteristic, the variant configurator rendered in React from a JSON schema the configuration service returns, and the link from a derived value back to the place in the e-mail it was read from; the stated reason for the stack is that CAP keeps authentication, destinations and deployment the same in every project, which is where frontend boundaryFrontend boundaryConnecting a separately hosted frontend to an application service: authentication, routing, access to backend systems, user identity propagation and tenant isolation across the hosting boundary.SAP only holds. The inbox grows while a user works because a CAP WebSocket plugin pushes new requests into the list — WebSocketWebSocketPushing to a browser that already has the page open, rather than making it ask again — the half of a UI that polling imitates badly.Community only.Frontend boundary
Integrated frontend dev serverecosystems revisedThe UI5 dev middlewares staged in intake-20261019-bestofui5 that forward the app's backend paths (ui5-middleware-route-proxy, ui5-middleware-destination) could only be placed under ui5-build-tooling, whose own boundary leaves proxying to a backend to middlewares. The two facets stay on CAP, where they were asked. The UI5 reading comes from the UI5 CLI Server page and SAP's backend-proxy-middleware README.Integrated frontend dev server
Sun 18
ui5-cap-serverside-rendering-demoadded to the atlasDemo CAP bookshop with server-rendered UI5 views
Sat 17
abap2UI5 protocoladded to the atlasVersioned specification of the abap2UI5 roundtrip protocol
App hostingdescription revisedKeep the default capability wording neutral; preserve the previous wording in framing_by_ecosystem.ui5. Maintainer-requested scope audit.App hosting
Build and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configurationexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Build BTP CAP App with Fiori Integration – Part 2: Implementing End to End Appexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Show 45 more
Build SAP Overview Page using SAP HANA Cloud & SAP CAP service annotations in Visual Studio Codeexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Building an Enterprise Application Using Fiori Elements and CAP - Part 1explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Building an Enterprise Application Using Fiori Elements and CAP – Part 2explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Building an Enterprise Application Using Fiori Elements and CAP – Part 3explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Calling bound / unbound CAP actions from Fiori elements application.explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
CAP - Dynamically hide UI facets in Fiori Elementsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
CAP JavaでObject Pageの項目の動的な入力制御を実装するexplains revisedDoor scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
CAP with Fiori Elements: Actions on List Report / Object Page using Annotations - Part1explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
CAP with Fiori Elements: Actions on List Report / Object Page using Annotations – Part2explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
CAP with Fiori Elements: Configure Multiple Views on List Report Tablesexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
CAP with Fiori Elements: Side Effects, Custom Actions, Dynamic Expressionsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Case-insensitive filters in Fiori Elements (List report + CAP)explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Create an SAP Fiori Elements UI for CAP Node.js applications in SAP Business Application Studioexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Create Fiori List Report with object page using CAPM(node.js) Serviceexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Deep Insert in SAP CAPM Using Composition and Fiori Elementsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Developing a Fiori elements app with CAP and Fiori Toolsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Developing Fiori Element Application (List Report and Object Page) consuming the OData service created using SAP Cloud Application Programming modelexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Developing SAP Fiori Element application by using SAP Cloud Application Programming Modelexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Discovering SAP Fiori Elements Analytical functions by implementing SAP Support Message Reportingexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Display of hierarchical data in SAP Fiori elements using SAP Cloud Application Programming Modelexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Draft handlingdescription revisedKeep the default capability wording neutral; preserve the previous wording in framing_by_ecosystem.cap. Maintainer-requested scope audit.Draft handling
Dynamic Criticality in SAP CAP Using Fiori Elements and Node.jsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Establish a central inbox with SAP Task Centerexplains revisedDoor scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md).Task and approval UIs
Extend SAP SuccessFactors on SAP BTP with CAP - Develop the SAP Fiori Elements Applicationexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Extend Upload Set with Table to Fiori Elements and utilize Object Storeexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Fiori Elements Analytical Table with CAP: Does it work with V2 and V4?explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
From R/3 ABAP to CAP/Fiori Elements on SAP BTP- Deploymentexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
From R/3 ABAP to CAP/Fiori Elements on SAP Cloudexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Frontend boundarydescription revisedKeep the default capability wording neutral; preserve the previous wording in framing_by_ecosystem.cap. Maintainer-requested scope audit.Frontend boundary
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-2]explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
How to Approve/Reject Task via API in SAP Build Process Automationexplains revisedDoor scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md).Task and approval UIs
How to ensure that users can efficiently enter data in SAP Fiori elements applicationsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Draft handling
Integrated frontend dev servername, description revisedKeep the default capability wording neutral; preserve the previous wording in framing_by_ecosystem.cap. Maintainer-requested scope audit.Integrated frontend dev server
Part 1: How to build an extension application for SAP S/4HANA Cloud using CAP, SAP Cloud SDK and SAP Fiori elementsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Part 2: How to build an extension application for SAP S/4HANA Cloud using CAP, SAP Cloud SDK and SAP Fiori elementsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Random collection of useful code fragments for CAP Fiori Elements and SAPUI5explains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
SAP Build Process Automationで「グループ宛て承認ワークフロー」を構築するexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Task and approval UIs
SAP CAP Remote Services & SAP Fiori Elementsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
SAP Fiori Element using CAP Model – List Report Appexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
SAP Fiori Elements using CAP Model - Introductionexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
SAP Tech Bytes: Using the SAP Approuter at dev time - a full-stack journey with UI5 and CAPexplains revisedDoor scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md).Integrated frontend dev server
The SAP Fiori elements feature showcase with CAP CDS annotationsexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Tree-Table Support in CAP is Now Generally Availableexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Use SAP CAP SAPUI5 Smart Filter to Show Value Help that are not Associated Entititesexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Visualizing Your SAP Bill of Materials Using CAP, Fiori elements, and the UI5 Network Graphexplains revisedDoor scope proposed from the title and summary, so a door page lists the piece only where it holds (docs/concepts/content-on-doors.md).Fiori annotations
Thu 15
cap-reuse-html5added to the atlasFiori elements app in the HTML5 Application Repository with cdm.json
Fiori annotationscore coverage, coverage by flavor revisedThe door has two flavors and neither was assessed, so both were derived from the options alone. Java reads core-only: the three community providers are cds-plugins @sap/cds loads, and the Java side's own facts are the compiler running under the Maven build and the one hierarchy annotation the Java runtime reads itself.Fiori annotations
Thu 8
blog-bookshopadded to the atlasCAP bookshop with Fiori elements UI deployed whole to Cloud Foundry
blog-cap-chartadded to the atlasFiori overview page comparing aggregated and plain donut-chart cards
cap-defaultvalue-functionadded to the atlasCommon.DefaultValuesFunction pointed at a CAP service function
cap-fe-masseditadded to the atlasMass edit enabled in a Fiori elements list report over CAP
Show 1 more
cap-feature-controladded to the atlasSingleton entity whose flags drive Fiori elements feature control
Mon 28
cap-collaborative-draftprovides, description, requires, compat, flavors revisedStated rather than left to the cds-plugin fallback: the README's first line says CAP Node.js backends.Draft handling
Sun 27
cds-plugin-ui5description, provides, compat, flavors, identity revisedRead from the package's own README licence section, as its siblings in the same repository already record.Integrated frontend dev server
Draft handlingcore coverage revisedcapire audit 2026-09-27: a page this capability owns was cited nowhere.Draft handling
Integrated frontend dev servercore coverage, description, facets revisedThe two facts that separate the answers here: where a project has to sit to be served, and what serves its resources once it is found. Both are stated by each option's own documentation, and both are text until the answers are numerous enough to have a vocabulary.Integrated frontend dev server
Localizationcore coverage revisedcapire audit 2026-09-27: a page this capability owns was cited nowhere.Localization
Sat 26
How to Approve/Reject Task via API in SAP Build Process AutomationpublishedWalks through the Workflow API's
/task-instances PATCH call that SAP Build Process AutomationSAP Build Process AutomationSAP's low-code and no-code tool for business processes: graphical process models, drag-and-drop forms, decision tables and robotic process automation bots, with dashboards over running process instances.sap official, btp exposes to approve or reject a user task from outside its Inbox, matching the instance ID from the Monitoring tab and the identifier of the button the approval form defines. Covers the permission split between an authenticated user, who needs the ProcessAutomationAdmin or ProcessAutomationParticipant role collection to appear as the one who completed the task, and Client Credentials, which completes it as a generic client identity, plus the error codes the API returns for a missing instance, an already-completed task or an invalid status.Task and approval UIsSAP Build Process Automationで「グループ宛て承認ワークフロー」を構築するpublishedWalks through building a group-addressed approval workflow in SAP Build Process AutomationSAP Build Process AutomationSAP's low-code and no-code tool for business processes: graphical process models, drag-and-drop forms, decision tables and robotic process automation bots, with dashboards over running process instances.sap official, btp: a user group created in SAP Cloud Identity ServicesCloud Identity ServicesIdentity Authentication and Identity Provisioning as one tenant: the login, the user store or the federation to a corporate identity provider, and the provisioning of users into whatever sits behind it.sap official, btp is bound to the app so an approval step can send one request to every group member's inbox at once, closing as soon as any one of them acts. The approval formTask and approval UIsThe screen a person approves something on — a workflow or process task rendered as a form, embedded in an inbox that supplies its context. Distinct from workflow integration, which is about driving the engine: this is the half a human touches, and its hard part is that it cannot run without the engine that normally feeds it.SAP only shown in that inbox carries a Claim button that hides a claimed task from the other members, and the workflowWorkflow integrationDriving an external workflow or automation engine from an application and reacting to what it emits — triggering runs transactionally and importing the engine’s shape as a typed model.SAP and community, core adopted it's approval step binds its group recipients to the field the requester chose on the start form.Task and approval UIs
Fri 25
@sap-ux/odata-vocabulariesadded to the atlasOASIS and SAP OData vocabularies with a VocabularyServiceFiori annotations
cap-materialbom-graphadded to the atlasCAP sample drawing a material BOM as a UI5 network graph
fiori-table-maintenanceadded to the atlasCAP and UI5 app for in-place table maintenance with SmartTable
ui5-call-actionadded to the atlasUI5 apps calling CAP OData actions and functions from custom code
Show 1 more
cap-materialbom-graphentry revisedDrafted from the repository's own files, because its README is the unedited
cds init template and the only sentence the maintainer wrote about it is the repository description, "This is a sample to show the Material as Network Graph in a Fiori elements app": db/schema.cds for the model and the GraphNetwork pseudo-entity, srv/service.js for the READ handler that walks the bill of materials, app/material/webapp/manifest.json for the list report and object page generated from @sap/generator-fiori:lrop and the custom section, the graph fragment for sap.suite.ui.commons.networkgraph, and package.json for @sap/cds ^8 and @cap-js/sqlite. artifact_type sample and use_as starting-point are a placement: one commit, a local SQLite run and no deployment described. domain ui-and-frontend-bridge follows the half of it the sample is about, as on cap-sflight. No licence is recorded: the repository has no LICENSE file and package.json carries the cds init defaults "license": "UNLICENSED" and "private": true.Tue 22
SAP Task Centerrequires revisedSAP's Discovery Center lists both Work Zone editions as required services of the all-tasks plan, and npm run check:catalogue listed the relations with no edge. Basis entitlement and conditional: the plan's own description says either edition serves (vocab PERSPECTIVES, 2026-09-22).
Server-side renderingcore coverage revisedThe state said community-only and nothing else, so the cap door carried no sentence a reader could use and no source for the claim. capire states that CAP has no UI technology of its own, and the documented bootstrap of the built-in server mounts the app folder as static content without a rendering step; the community sentence names the one provider the graph holds. State unchanged.Server-side rendering
ui5-cap-serverside-rendering-plugindescription, provides revisedA bare ref said the plugin answers the capability without saying how. The object form carries the contribution and the files it was read from.Server-side rendering
Sun 20
Fiori annotationscore coverage revisedThree independent cds-plugins now provide this capability on CAP beside SAP's own packages: @mpah/enum-value-help, cap-js-geoloc-plugin and urp-vocab. The relationship is unassessed: no retrieved document gives the history between them and the core.Fiori annotations
Fri 18
@mpah/enum-value-helpadded to the atlasCAP plugin generating value help for enum fields from an annotationFiori annotations
@rizing/cds-extensionadded to the atlasCAP plugin putting a draft-capable facade in front of imported ODataDraft handling
@sap-ux/i18nadded to the atlasReader and writer for i18n bundles of UI5 or CAP projectsLocalization
cap-js-geoloc-pluginrequires, provides, description revisedThe entry opened on a warning with nothing saying what the plugin does. when_not_to_use also said 'One release, November 2025': npm holds six versions, four alphas and 1.0.0 and 1.0.1, published between 31 October and 3 November 2025, and the changelog inside 1.0.1 is numbered v2.1.Fiori annotations
Show 1 more
Localizationecosystems, coverage by ecosystem, framing by ecosystem revisedBehind the UI5 door the texts are files in the app rather than model elements in a service, which is what the CAP framing describes.Localization
Tue 15
Establish a central inbox with SAP Task CenterpublishedSAP's reference architecture for SAP Task CenterSAP Task CenterOne inbox across SAP applications: tasks from S/4HANA, SuccessFactors, Ariba and BTP workflows in one list, with a public API for a custom task provider.sap official, btp as one inbox for the tasks of several SAP applications, opened in the Task Center web app or as To-Dos in SAP Start and SAP Mobile Start, which is the inbox half of task and approval UIsTask and approval UIsThe screen a person approves something on — a workflow or process task rendered as a form, embedded in an inbox that supplies its context. Distinct from workflow integration, which is about driving the engine: this is the half a human touches, and its hard part is that it cannot run without the engine that normally feeds it.SAP only. It rests on Cloud Identity ServicesCloud Identity ServicesIdentity Authentication and Identity Provisioning as one tenant: the login, the user store or the federation to a corporate identity provider, and the provisioning of users into whatever sits behind it.sap official, btp: every task provider must work with Identity Authentication, its users must carry the Global User ID and so must the recipients of each task, and sign-on between the provider and Identity Authentication is what lets a user navigate from Task Center into the provider. Task Center reaches providers through destinations in a customer subaccount, with Cloud ConnectorCloud ConnectorSAP's on-premises agent that links SAP BTP applications to systems in a customer's own network, as a reverse invoke proxy that exposes only the systems and resources it is configured to allow.sap official, btp for on-premise SAP S/4HANA.Task and approval UIs
cap-js-geoloc-pluginprovides revisedGeocoding and routing is the job the plugin does; the Fiori annotations are how it shows it. The edge became possible with location-services, drafted in intake-20260915-location-services.Fiori annotations
Localizationecosystems, coverage by ecosystem, framing by ecosystem revisedOn BTP the concern includes getting texts translated by a service, where the CAP framing is serving texts per locale and the ABAP framing is translating repository objects in the system.Localization
Mon 14
App hostingcoverage by ecosystem, coverage by flavor revisedHosting is a question about a built bundle, not about what produced it: UI5 Web Components' own README describes the library as suitable for static web sites and expects it bundled into the app rather than served from its own runtime, so the same two BTP services that answer for the freestyle door answer here too, unchanged. No artifact whose own ecosystem is ui5 states web-components on a provides or demonstrates edge for this capability, so the reading rests on the same absence coverage_by_ecosystem.ui5 already recorded.App hosting
Fiori annotationsecosystems revisedWidened to ABAP: SAP-samples/abap-platform-fiori-feature-showcase demonstrates annotation-driven Fiori elements for OData V4 on RAP, the same concern as CAP's annotations.Fiori annotations
Localizationecosystems revisedSeven repositories translate ABAP texts: they push object lists to SAP Translation Hub, call DeepL or LibreTranslate, export a package's texts to a spreadsheet, keep form labels in a table, and read texts from the online text repository.Localization
Server-side renderingcoverage by ecosystem, coverage by flavor revisedUI5 Web Components for React documents partial SSR support since v1.17.0 (outer markup only, client-rendered component) and the base UI5 Web Components library tracks full declarative-shadow-DOM SSR as an open, unassigned feature request. Neither is a catalogued artifact in this graph, so no ui5-door provider states web-components for this capability, but the concern plainly exists here — unmapped rather than not-applicable.Server-side rendering
Sun 13
SAP-samples/cap-sflightadded to the atlasTravel-booking reference app on CAP Node.js and Java backends
SAP-samples/fiori-elements-feature-showcaseadded to the atlasShowcase of Fiori elements for OData V4 features on a CAP backend
SAP-samples/fiori-elements-fpm-exercises-codejamadded to the atlasCodeJam building a bookshop app on the flexible programming model
SAP-samples/fiori-elements-v4-cap-advancedadded to the atlasExercise solutions for the UX405 course on Fiori elements with CAP
Show 1 more
SAP-samples/ui5-cap-event-appadded to the atlasEvent registration app showing OData V4 draft with UI5 and CAP
Wed 9
SAP Application Frontend serviceadded to the atlasManaged hosting and routing for built frontendsApp hosting
SAP HTML5 Application Repository service for SAP BTPadded to the atlasStores UI5 and HTML5 apps and serves them through the approuterApp hosting
SAP Task Centeradded to the atlasOne inbox for tasks across SAP applications and BTP workflows
cds-plugin-ui5contributors revisedTwo actor files carried the same GitHub login. peter-m-ssig was keyed on a slugified display name — the umlaut in "Peter Müssig" drops out of the slug, so it looked nothing like the crawled petermuessig and nobody spotted the double. Merged onto the login, which is the identity the crawl matches on.Integrated frontend dev server
Show 1 more
SAP Application Frontend serviceentry revised@sap/appfront-cli was in the corpus and the service it drives was not, so the BTP door listed a CLI with nothing behind it. SAP's own page names the HTML5 Application Repository as the thing to stay on where it fits better, which is why the two carry an alternative_to edge rather than one quietly superseding the other.App hosting
Tue 8
@sap/ux-cds-compiler-facadeadded to the atlasWrapper around the CDS compiler for annotation handlingFiori annotations
Build and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configurationpublishedGeneration and deployment in one piece, with the managed approuter rather than a standalone one — so the routing is configuration instead of a module, and the post covers what that changes at deploy time.Fiori annotations
Build BTP CAP App with Fiori Integration – Part 2: Implementing End to End ApppublishedThe implementation half of the series whose first part set up the account and the database: the application itself, end to end.Fiori annotations
Build SAP Overview Page using SAP HANA Cloud & SAP CAP service annotations in Visual Studio CodepublishedAn Overview Page — the card-based Fiori elements floorplan, less written about than the list report — driven entirely from annotations on a CAP service, in VS Code rather than Business Application Studio.Fiori annotations
Show 39 more
Building an Enterprise Application Using Fiori Elements and CAP - Part 1publishedPart one of three, and it is all backend: the CAP service the UI will sit on. The author states the constraint the series works under — simple enough for someone new to the stack, without departing from the standard project layout.Fiori annotations
Building an Enterprise Application Using Fiori Elements and CAP – Part 2publishedThe generator run and the List Report it produces, on top of the service from part one. This is where the annotations start doing the work rather than the CDS entities.Fiori annotations
Building an Enterprise Application Using Fiori Elements and CAP – Part 3publishedThe Object Page, which the author points out is entirely annotation-driven — there is no page to design, only facets to declare. The last of the three.Fiori annotations
Calling bound / unbound CAP actions from Fiori elements application.published
invokeAction from the Fiori elements Edit flow API, with the difference between bound and unbound actions spelled out first because the call shape differs. Under three thousand characters and it answers exactly one question.Fiori annotationsCAP - Dynamically hide UI facets in Fiori ElementspublishedFacets hidden at runtime rather than at design time, which needs two things at once:
UI.Hidden on the annotation side and a virtual element on the CDS side to decide it. Both are linked from the post, and it is barely two pages.Fiori annotationsCAP with Fiori Elements: Actions on List Report / Object Page using Annotations - Part1publishedActions on their own, at length — where an action can be placed, what the annotation looks like for each position, and what changes between the List Report and the Object Page. Part one of two.Fiori annotations
CAP with Fiori Elements: Actions on List Report / Object Page using Annotations – Part2publishedThe second half of the actions pair, published the same day. Between them they cover more ground on this one annotation than the documentation does in one place.Fiori annotations
CAP with Fiori Elements: Configure Multiple Views on List Report TablespublishedSeveral tabs over one entity, each with its own filter — the multiple-views annotation, which is one of the few Fiori elements features that changes the shape of the page rather than its content.Fiori annotations
CAP with Fiori Elements: Side Effects, Custom Actions, Dynamic ExpressionspublishedThe first of the author's Fiori elements posts, and the widest: side effects, which are the annotation that tells the UI a field changed something else; custom actions; and dynamic expressions. The three that turn a generated app into a usable one.Fiori annotations
Case-insensitive filters in Fiori Elements (List report + CAP)publishedA blocker rather than a feature: filters on a List Report are case-sensitive, the business wanted them not to be, and the CAP backend is where it gets fixed. Node and Java both.Fiori annotations
Create an SAP Fiori Elements UI for CAP Node.js applications in SAP Business Application StudiopublishedWritten the week Fiori elements gained OData V4 support, which is what made a generated List Report over a CAP Node.js service possible at all. Short, and dated in the useful sense — it marks when the generator stopped being a V2-only path.Fiori annotations
Create Fiori List Report with object page using CAPM(node.js) ServicepublishedThe short version of the generated-app walkthrough — an existing CAPM Node.js service, and the List Report with Object Page on top of it. Under three thousand characters.Fiori annotations
Custom Handlers for Entities in SAP CAPpublishedWritten from the moment of not knowing: a two-level composition with drafts, the Fiori elements UI working perfectly, and no idea which handlers are actually needed. What comes out is the action lifecycle laid out as a reference — NEW, EDIT, PATCH and the rest — with a matrix saying which handler fires for which, which is the thing the documentation leaves you to assemble.Draft handling
Deep Insert in SAP CAPM Using Composition and Fiori ElementspublishedParent and children created in one transaction, which composition already gives you in the model — the post is about what Fiori elements does with it, and what the payload looks like when the UI sends both at once.Fiori annotations
Developing a Fiori elements app with CAP and Fiori ToolspublishedA learning write-up from someone new to CAP at the time, and long enough to be thorough. Carries its own update pointing at a newer post on deploying a CAP-based Fiori app to a central launchpad without an approuter.Fiori annotations
Developing Fiori Element Application (List Report and Object Page) consuming the OData service created using SAP Cloud Application Programming modelpublishedOne of the earliest entries here, from mid-2020: the List Report and Object Page pair generated over a CAP OData service, when that combination was still new enough to need explaining.Fiori annotations
Developing SAP Fiori Element application by using SAP Cloud Application Programming ModelpublishedThe long version, and it starts by naming the floorplans — List Report, Worklist, Object Page, Overview Page, Analytical List Page — which is the decision most walkthroughs skip. Then one of them, built out against a CAP service.Fiori annotations
Discovering SAP Fiori Elements Analytical functions by implementing SAP Support Message ReportingpublishedAnalytical annotations learned by building something the author wanted — a view over SAP support messages — after a conversation in February 2021 that the post dates precisely. Exploration written up as exploration.Fiori annotations
Display of hierarchical data in SAP Fiori elements using SAP Cloud Application Programming ModelpublishedHierarchies before the framework supported them, and the post now opens with its own update saying that Fiori elements V4 and OData V4 support tree views natively and linking the guide. Read the update first; the rest is the record of what people did in the meantime.Fiori annotations
Dynamic Criticality in SAP CAP Using Fiori Elements and Node.jspublishedColouring rows by status, which sounds like a UI question and is not: criticality is a value the service has to compute and expose, so the work is a virtual element in CDS and the annotation that points at it. Comes from a real requirement — business users wanting to spot the records that need attention.Fiori annotations
Extend SAP SuccessFactors on SAP BTP with CAP - Develop the SAP Fiori Elements ApplicationpublishedThe UI instalment of the SuccessFactors extension series — the imported service is already modelled and this is the application over it. Names the three posts it depends on.Fiori annotations
Extend Upload Set with Table to Fiori Elements and utilize Object StorepublishedThe Object Store variant of the author's earlier Document Management post, written after testing @cap-js/attachments@cap-js/attachmentsAn official CAP Node.js plugin for attachment handling, with local database storage and AWS S3, Azure Blob or GCP Object Store integration.sap official, cap — a sample managing text and file information together, and offered as something for people new to BTP rather than as a pattern.Fiori annotations
Fiori Elements Analytical Table with CAP: Does it work with V2 and V4?publishedA question in the title and an answer in the post, with the boundary drawn carefully: this is an analytical table inside a List Report, not the Analytical List Page, and the two protocol versions do not behave the same.Fiori annotations
From R/3 ABAP to CAP/Fiori Elements on SAP BTP- DeploymentpublishedThe doing half: the steps and the code that got the application from the first post deployed and working. Shorter, and it assumes the argument has already been made.Fiori annotations
From R/3 ABAP to CAP/Fiori Elements on SAP CloudpublishedWritten by an ABAP developer of fourteen years explaining what changed and what did not — the argument being that CAP kept the focus on business logic that ABAP had, where learning UI5 and a framework or two had not. The reasoning half of a pair.Fiori annotations
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-2]publishedPart 1 left a working OData service whose Fiori preview showed nothing useful. This is the annotations that fix that — the UI vocabulary added to the CDS model until the generated list report has columns worth reading.Fiori annotations
Part 1: How to build an extension application for SAP S/4HANA Cloud using CAP, SAP Cloud SDK and SAP Fiori elementspublishedThe substantial part of a side-by-side extensibility series: CAP Node.js, Cloud SDK and Fiori elements against S/4HANA Cloud. Eighteen thousand characters, and the one to read if you only read one.Fiori annotations
Part 2: How to build an extension application for SAP S/4HANA Cloud using CAP, SAP Cloud SDK and SAP Fiori elementspublishedThe second part, continuing the same extension. Opens with a recap of the stack rather than of the steps, which makes it readable on its own.Fiori annotations
Random collection of useful code fragments for CAP Fiori Elements and SAPUI5publishedExactly what it says, and the author gives the reason: none of these were easy to find in the documentation or the samples. A collection of fragments rather than an argument, and the kind of page people bookmark.Fiori annotations
SAP CAP Remote Services & SAP Fiori ElementspublishedWhat happens to a generated UI when the data is not local: a CAP service projecting a remote one, with Fiori elements on top. The author explored it to find out where the abstraction holds, which is the useful register for this.Fiori annotations
SAP Fiori Element using CAP Model – List Report ApppublishedThe build half of the same author's pair: the List Report application over the CAP model introduced in the previous post.Fiori annotations
SAP Fiori Elements using CAP Model - IntroductionpublishedThe introduction to a demo project, and it says where the project came from — exploring what the then-new Fiori tools could do. Context rather than code; the List Report post is the one that builds.Fiori annotations
The SAP Fiori elements feature showcase with CAP CDS annotationspublishedThe feature showcase, which is the closest thing to a reference for what the annotations can do, presented here with its CAP CDS side. Short, because the value is in what it points at.Fiori annotations
Tree-Table Support in CAP is Now Generally AvailablepublishedThe announcement that closes a gap other posts here worked around for years — hierarchy maintenance for Java in February, recursive support in March, generally available since July. Read it beside the 2022 post that had to build hierarchies by hand.Fiori annotations
Use SAP CAP SAPUI5 Smart Filter to Show Value Help that are not Associated EntititespublishedValue help for a field with no association behind it, which is the case the annotation assumes away. Short, and the workaround is the content.Fiori annotations
@sap-ux/cds-annotation-parserartifact type, description revisedPlacement copied the package's own npm description. Replaced with a line written for this graph — what it does and where it sits — because an unattributed sentence is an unattributed claim.Fiori annotations
@sap-ux/cds-odata-annotation-converterartifact type, description revisedPlacement copied the package's own npm description. Replaced with a line written for this graph — what it does and where it sits — because an unattributed sentence is an unattributed claim.Fiori annotations
@sap-ux/fiori-annotation-apiartifact type, description revisedPlacement copied the package's own npm description. Replaced with a line written for this graph — what it does and where it sits — because an unattributed sentence is an unattributed claim.Fiori annotations
@sap/generator-fiorilinks, artifact type, description revisedPlacement copied the package's own npm description. Replaced with a line written for this graph — what it does and where it sits — because an unattributed sentence is an unattributed claim.Fiori annotations
Mon 7
CAP JavaでObject Pageの項目の動的な入力制御を実装するpublishedTwo ways to make an object page field editable or not from the value of another field in CAP Java, with the same rule implemented both ways. The first routes the decision through a separate entity holding default values, reached by Side Effects annotations; the second adds a virtual element the Java event handler fills. The piece is about the trade the two make — annotation-only versus a handler that runs — rather than about which is correct, and the running code is the repository it links.Fiori annotations
cap-java-draft-composition-deleteadded to the atlasCAP Java draft cancel on composition items as a flag update
cap-js-geoloc-pluginadded to the atlasAnnotation-driven geocoding, address correction and routing for CAPFiori annotations
CAP, CORS and custom headerspublishedWhat CAP itself does about CORS, and where it stops. The starting point is a colleague's request and a deliberate constraint: @sap/approuter has full CORS support, but the author wanted to know what the CAP server offers on its own and how to extend it. Ends up covering preflight requests and custom servers, which is the mechanism a frontend hosted outside BTP actually runs into.Frontend boundary
Show 7 more
fiori-dynamic-feature-controladded to the atlasOne object page field made read-only from another's value, two ways
fiori-inline-editadded to the atlasList report inline edit on a draft-enabled CAP service
fiori-navigation-patternsadded to the atlasOutbound navigation patterns from a Fiori Elements list report
How to ensure that users can efficiently enter data in SAP Fiori elements applicationspublishedGuidance for draft-enabled Fiori Elements applications aimed at the user who spends their day in them: entering data quickly and by keyboard, on a slow network, without the round trips a draft-backed form can otherwise impose. Written from the design side rather than the implementation side, which is the half most CAP writing about drafts leaves out.Draft handling
SAP Tech Bytes: Using the SAP Approuter at dev time - a full-stack journey with UI5 and CAPpublishedGetting UI5 Tooling and the CAP server onto one port under one command, using cds-plugin-ui5cds-plugin-ui5A CDS plugin that runs the UI5 CLI express middlewares inside the CDS server, so a UI5 CLI project is served from the same port as the services, mounted under a path from its ui5.yaml.community org, cap — which the post presents as the thing that removes the proxy and destination configuration a full-stack dev setup otherwise needs. Part one of a journey that goes on to put the approuter in front at development time.Integrated frontend dev server
urp-vocabadded to the atlasCDS vocabulary for User-Rendered Patterns display annotationsFiori annotations
Visualizing Your SAP Bill of Materials Using CAP, Fiori elements, and the UI5 Network GraphpublishedA parent-child structure rendered as a network graph inside a Fiori Elements application, with the CAP service modelling the bill of materials behind it. Useful as one of the few worked examples of putting a non-standard visualisation into an annotation-driven floorplan rather than building a freestyle app around it.Fiori annotations
Wed 2
@sap-ux/cds-annotation-parseradded to the atlasParser for annotations in CDS sourceFiori annotations
@sap-ux/cds-odata-annotation-converteradded to the atlasConverter from CDS annotations to their OData formFiori annotations
@sap-ux/fiori-annotation-apiadded to the atlasProgrammatic API for reading and writing project annotationsFiori annotations
@sap/generator-fioriadded to the atlasEntry point for generating a Fiori application from a templateFiori annotations
Mon 31
@sap/appfront-cliadded to the atlasCLI for the SAP BTP Application Frontend serviceFrontend boundary
@sap/cds-fioriadded to the atlasFiori draft handling and UI-facing behaviour for CAP servicesDraft handling
cap-collaborative-draftadded to the atlasCollaborative draft support for CAP Node.js servicesDraft handling
cds-plugin-ui5added to the atlasUI5 CLI middlewares running inside the CDS serverIntegrated frontend dev server
Show 6 more
ui5-cap-serverside-rendering-pluginadded to the atlasCAP plugin rendering UI5 views with entity data on the serverServer-side rendering
cds-plugin-ui5origin ring revisedui5-community is the UI5 ecosystem's community org, the counterpart of cap-js-community. It was absent from the owner table because that table only knew CAP, so this fell through to independent. Found by probing UI5.Integrated frontend dev server
Draft handlingcore coverage revisedStates renamed to describe who is present rather than to interpret intent. left-open-on-purpose asserted a motive; core-and-community states a fact, with relationship carrying the intent separately.Draft handling
Fiori annotationscore coverage revisedStates renamed to describe who is present rather than to interpret intent. left-open-on-purpose asserted a motive; core-and-community states a fact, with relationship carrying the intent separately.Fiori annotations
Frontend boundarycore coverage revisedStates renamed to describe who is present rather than to interpret intent. left-open-on-purpose asserted a motive; core-and-community states a fact, with relationship carrying the intent separately.Frontend boundary
Localizationcore coverage revisedStates renamed to describe who is present rather than to interpret intent. left-open-on-purpose asserted a motive; core-and-community states a fact, with relationship carrying the intent separately.Localization
Tue 25
cap-companionadded to the atlasPlayback-only SAP Companion (Help4) workarea served from CAPIn-app guidance