Everything in CAP / Java
101 of 738
Domain
Signals
Content: 4
Java: Answers in Java
More
Group by: Capability
EntryBySignalsLast activity
Error handlingSAP only
Messaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client ApplicationsMessaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client ApplicationsGetting a message out of a CAP service and onto a Fiori elements object page in a draft scenario — errors, warnings and information, each of which the UI treats differently. Co-written with one of the people on the OData side, and it spends its length on the message container rather than on the handler that fills it.arley-triana-morin, published 2022-08-11
Messaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client Applications
OData changed in @cap-js-community/odata-v2-adapter 1.10.0, 2023-04-05. Affects A recipe, Runnable code.
ODataSAP and community
Adding Immutable Blockchain Proofs to SAP With CAP - Cardano and OData V4Adding Immutable Blockchain Proofs to SAP With CAP - Cardano and OData V4The write-up behind ODATANO, by its author: how a public blockchain gets reachable from CAP as an ordinary OData V4 service rather than through a bespoke client. The premise it starts from is worth the read on its own — SAP systems are trusted but mutable, which is what an immutable anchor is for — and Cardano is chosen for peer-reviewed research and formal methods rather than for popularity. Written as an experiment with feedback invited, not as a recommendation.maxalexweber, published 2026-05-15
Messaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client ApplicationsMessaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client ApplicationsGetting a message out of a CAP service and onto a Fiori elements object page in a draft scenario — errors, warnings and information, each of which the UI treats differently. Co-written with one of the people on the OData side, and it spends its length on the message container rather than on the handler that fills it.arley-triana-morin, published 2022-08-11
Messaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client Applications
OData changed in @cap-js-community/odata-v2-adapter 1.10.0, 2023-04-05. Affects A recipe, Runnable code.
OpenAPIUnmapped
Invoke OpenAPI-documented APIs remotely with SAP Cloud Application Programming ModelInvoke OpenAPI-documented APIs remotely with SAP Cloud Application Programming ModelThe other direction: consuming an API described by an OpenAPI document from CAP, rather than publishing one. Worth pairing with the plugin entries here, which all serve the outbound half.wittro, published 2022-08-30
Invoke OpenAPI-documented APIs remotely with SAP Cloud Application Programming Model
Destinations changed in @sap-cloud-sdk/connectivity 4.0.0, 2025-03-04. Affects Runnable code.
Serve your application over MCPSAP only
Add MCP capabilities to a CAP serviceAdd MCP capabilities to a CAP serviceA fifteen-minute walkthrough of turning a plain CAP service into an MCP server: annotate the service with @mcp, install @cap-js/mcp, and it is served alongside OData at /mcp/<path>. The part worth reading it for is what happens next — cds watch writes the endpoint into the local agent's own configuration file, so OpenCode or Claude Code can call the service without anyone editing JSON by hand. It is built on the tiny-sample facet, so there is nothing to prepare, and it shows the protocol traffic rather than only the result. Written while the adapter was in beta, and it says so.published 2026-08-13
AI-native North Star architecture — Platform LayerAI-native North Star architecture — Platform LayerThe platform layer of SAP's North Star architecture, the chapter that says where agents run and what a developer builds them with. It names an AI Golden Path built on the SAP Cloud Application Programming Model, the ABAP Cloud development model with RAP and the SAP Fiori design system, and a managed agent runtime on SAP BTP that is designed to provide software development kits for building agents in any framework, an agent sandbox, container-hosted execution, a skills registry and continuous evaluations, which is the ground agent tooling covers. Agents are extended without changing their code through four patterns, the first of them tool extensibility through the Model Context Protocol, the concern MCP servers is named for; the process-layer chapter adds that a pro-code path with a standardised agent SDK and a prompt-driven path through the Joule Studio solution produce the same code artifact on the same runtime. It describes a design SAP intends rather than products that exist, and the SDK and the registry it names have no entry here yet.published 2026-05-13
AI-native North Star architecture — Platform Layer
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects A reference.
Natural Language Queries for SAP CAP via MCP: The LLM Translates, CDS ExecutesNatural Language Queries for SAP CAP via MCP: The LLM Translates, CDS ExecutesThe division of labour is the argument, and it is in the subtitle: the model turns English into a CDS query and CDS runs it, so nothing generates SQL and nothing hallucinates a join. Schema annotations do the resolving. Long, with the package, the repository and the MCP registry entry all linked.Shahid, published 2026-06-25
The Easiest Way to Expose a CAP Node.js Project as an MCP ServerThe Easiest Way to Expose a CAP Node.js Project as an MCP ServerFrom cds init to a running MCP server in a handful of steps, ending at the MCP Inspector so the result is something you can see rather than something you have to trust. The claim it makes for the plugin is the absence of work: no REST wiring by hand, the CAP application exposed as a server because the package is installed. A walkthrough rather than an argument — the reasoning about what should be exposed lives elsewhere.Jacky Liu, published 2026-07-03
WebSocketUnmapped
Real-Time Architecture in SAP CAP: Mastering Asynchronous Jobs, Gateways with WebSocketsReal-Time Architecture in SAP CAP: Mastering Asynchronous Jobs, Gateways with WebSocketsThe other half of the author's own industrial-data post: mass ingestion is only useful if the screen keeps up, so background jobs push progress to the UI over WebSockets instead of the user reloading. Written from a mission-critical case rather than a demo.rgadirov, published 2026-03-12
Real-Time Architecture in SAP CAP: Mastering Asynchronous Jobs, Gateways with WebSockets
Async processing changed in @sap/cds 10.0, 2026-07-02. Affects A recipe.
Analytical queriesUnmapped
SAP Data and Analytics Showcase - Develop a Machine Learning Application on SAP BTPSAP Data and Analytics Showcase - Develop a Machine Learning Application on SAP BTPThe overview post of a showcase written by three authors, setting out the dataset, the scenario and the solution map before any of it is built. Its job is to say which piece goes where across the SAP data and analytics portfolio; the CAP application is one station on that map rather than the subject.former_member10846, published 2022-08-12
SAP Data and Analytics Showcase – Use SAP Cloud Application Programming Model to Develop a Machine Learning Application on SAP BTPSAP Data and Analytics Showcase – Use SAP Cloud Application Programming Model to Develop a Machine Learning Application on SAP BTPThe instalment where the showcase becomes code: the CAP application built in Business Application Studio, and the sub-scenario it covers implemented step by step. The overview post is the one that says why this piece exists at all.former_member10846, published 2022-08-12
AttachmentsSAP only
Media Handling in SAP CAPM – Backend and Frontend ImplementationMedia Handling in SAP CAPM – Backend and Frontend ImplementationFiles against a record with the front end included, which most of the attachments writing here leaves out — the entity that stores the content, the custom logic around it, and then the UI5 side that uploads and retrieves. End to end rather than one half.published 2026-03-02
Concurrency controlSAP only
Handling Concurrent Updates in SAP CAP JavaHandling Concurrent Updates in SAP CAP JavaAlice and Bob open the same employee record; Bob saves last and quietly erases Alice's change. The lost-update problem stated concretely and then answered in CAP Java, which is the only entry here on the subject — hence the capability.Anjali_Pathak, published 2026-05-26
Data modellingSAP only
Deep Insert in SAP CAPM Using Composition and Fiori ElementsDeep Insert in SAP CAPM Using Composition and Fiori ElementsParent 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.published 2026-05-22
Database connectorsSAP only
Building a CAP App with Fiori Integration – Part 1: Environment & HANA Cloud SetupBuilding a CAP App with Fiori Integration – Part 1: Environment & HANA Cloud SetupA trial account taken from nothing to a CAPM project with a HANA Cloud instance behind it. Everything here is prerequisites, which the author says outright — the application is in the parts that follow.SuryaRamesh, published 2026-04-08
Connect SAP CAP (Node.js) to On-Premise/Private PostgreSQL using SAP Cloud ConnectorConnect SAP CAP (Node.js) to On-Premise/Private PostgreSQL using SAP Cloud ConnectorAn end-to-end route from a CAP Node.js application on Cloud Foundry to a PostgreSQL database that is never made publicly reachable, over BTP Connectivity and the Cloud Connector using a TCP destination and SOCKS5. The part worth having is that it covers the deployer as well as the server: the generated PostgreSQL deployer has to reach the same private database to deploy the CDS model, and a guide that only connects the runtime leaves you with a schema you cannot install.Kalaikovan, published 2026-08-07
Connect SAP CAP (Node.js) to On-Premise/Private PostgreSQL using SAP Cloud Connector
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
Distributed Resiliency of SAP CAP applications using SAP HANA Cloud (Multi-Zone Replication)Distributed Resiliency of SAP CAP applications using SAP HANA Cloud (Multi-Zone Replication)Resilience defined the way an operator would — failures happen in a complex landscape and should go unnoticed by the user — and then what multi-zone replication on HANA Cloud means for the CAP application in front of it.shanthakumar_krishnaswamy, published 2022-11-12
Extend SAP SuccessFactors on SAP BTP with CAP - Deploy to SAP HANA CloudExtend SAP SuccessFactors on SAP BTP with CAP - Deploy to SAP HANA CloudThe deployment instalment of the author's SuccessFactors extension series — the project already exists and the imported service is already modelled, so this is only the move onto HANA Cloud. Depends on the two posts before it and says so.ale_biagi, published 2022-03-29
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-1]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-1]The first of six, and it does the thing the later parts depend on: build the Incident Management application against SQLite on a laptop, with no cloud database in sight. The series is called decoupled because the front end and the back end are deployed separately, and this part is entirely the back end.sanjucs, published 2026-05-06
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-1]
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe, Runnable code.
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-3]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-3]The cloud database appears: a HANA Cloud instance created on BTP and mapped to a Cloud Foundry space. No application code — this is the part where the platform has to be right before the next part can connect to it.sanjucs, published 2026-05-08
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-4]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-4]The switch from SQLite to HANA and the first deploy of the back end to Cloud Foundry — the point in the series where the persistence stops being a file and the build starts producing HDI artifacts.sanjucs, published 2026-05-12
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-4]
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
How I migrated my on-prem xsa cds3+hana solution to cds6+sqliteHow I migrated my on-prem xsa cds3+hana solution to cds6+sqliteThree major CDS versions and a database swap in one move, done to get an old on-premise XSA application running somewhere cheap. The repository is linked, and the interest is in what broke between cds3 and cds6 rather than in the destination.alex_myakinkii, published 2022-08-07
How I migrated my on-prem xsa cds3+hana solution to cds6+sqlite
Database connectors has changed twice since this was published, most recently in @sap/cds 10.1.0, 2026-09-07. Affects Runnable code.
How to create an API to run a HANA Cloud Stored Procedure in Cloud FoundryHow to create an API to run a HANA Cloud Stored Procedure in Cloud FoundryReaching past CDS to the database's own machinery — built-in algorithms, SQLScript procedures and functions — and putting an API in front of them. Long, and it is the case where the model is not where the logic belongs.gonzalo_hernan_sendra, published 2022-12-08
How to create an API to run a HANA Cloud Stored Procedure in Cloud Foundry
Database connectors has changed twice since this was published, most recently in @sap/cds 10.1.0, 2026-09-07. Affects Runnable code.
Part 1: Creating and Deploying a SAP CAP Application with SAP HANA on SAP BTP (Cloud Foundry)Part 1: Creating and Deploying a SAP CAP Application with SAP HANA on SAP BTP (Cloud Foundry)Opens with the observation the whole series rests on — CAP is usually demonstrated locally, and the interesting part starts when it is deployed. Part one of the run that continues into PostgreSQL and Work Zone.yashbhosle789, published 2026-02-25
Part 1: Creating and Deploying a SAP CAP Application with SAP HANA on SAP BTP (Cloud Foundry)
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
Part 2: Creating and Deploying a CAP Application with PostgreSQL, Hyperscaler OptionPart 2: Creating and Deploying a CAP Application with PostgreSQL, Hyperscaler OptionThe middle of a series that runs from database to Work Zone: the CAP application from part one pointed at PostgreSQL on the hyperscaler option, and deployed. The service binding and the build are where it spends its time.yashbhosle789, published 2026-03-04
Part 2: Creating and Deploying a CAP Application with PostgreSQL, Hyperscaler Option
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
SAP CAP on HANA XSA: Scaling Industrial Data Applications Beyond the CloudSAP CAP on HANA XSA: Scaling Industrial Data Applications Beyond the CloudCAP on HANA 2.0 XSA rather than on BTP — on-premise, and chosen for throughput. Mass ingestion through native stored procedures, which is the point at which CDS stops being the right tool and the post says so.rgadirov, published 2026-03-09
SAP CAP on HANA XSA: Scaling Industrial Data Applications Beyond the Cloud
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects Runnable code.
SFSFとHANA Cloudを使用するCAPのアプリケーション開発SFSFとHANA Cloudを使用するCAPのアプリケーション開発In Japanese. A hands-on taking data between SuccessFactors and HANA Cloud through a CAP application — the connection setup, the data and service models, then read and write logic, and a Cloud Foundry deploy. Long enough to carry its own table of contents.rasai, published 2022-12-14
SFSFとHANA Cloudを使用するCAPのアプリケーション開発
Database connectors has changed twice since this was published, most recently in @sap/cds 10.1.0, 2026-09-07. Affects A recipe, Runnable code.
Testing your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbviewTesting your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbviewcds.test covers the service; this covers what is underneath it, where the artifact is an hdbprocedure or an hdbview that CDS never sees. That means a real HDI container, so most of the post is about where to get one and how to give CAP access to it — the tests are the easy part once that is true.Tristan, published 2022-08-30
Testing your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbview
Testing has changed 3 times since this was published, most recently in @cap-js/cds-test 1.0.0, 2026-04-23. Affects A recipe, Runnable code.
Native SAP HANA artifactsUnmapped
Connecting Two SAP CAP Projects Without Duplicating Your DataConnecting Two SAP CAP Projects Without Duplicating Your DataCross-container HDI synonyms, argued from the alternatives rather than presented as a recipe: copying the table, standing up an API, or hard-coding the values are the three things the author reports seeing teams do, and each is named as working but unclean. With synonyms in place the consuming project queries the owner's HANA tables through ordinary SQL and ordinary CAP service code, with no replication and nothing to drift between environments. Covers the same ground as Mio Yasutake's 2021 post from a different angle — that one enumerates four topologies, this one argues for one of them.Inderpreet, published 2026-07-08
Schema evolutionCommunity only
How I migrated my on-prem xsa cds3+hana solution to cds6+sqliteHow I migrated my on-prem xsa cds3+hana solution to cds6+sqliteThree major CDS versions and a database swap in one move, done to get an old on-premise XSA application running somewhere cheap. The repository is linked, and the interest is in what broke between cds3 and cds6 rather than in the destination.alex_myakinkii, published 2022-08-07
How I migrated my on-prem xsa cds3+hana solution to cds6+sqlite
Database connectors has changed twice since this was published, most recently in @sap/cds 10.1.0, 2026-09-07. Affects Runnable code.
Async processingSAP only
Real-Time Architecture in SAP CAP: Mastering Asynchronous Jobs, Gateways with WebSocketsReal-Time Architecture in SAP CAP: Mastering Asynchronous Jobs, Gateways with WebSocketsThe other half of the author's own industrial-data post: mass ingestion is only useful if the screen keeps up, so background jobs push progress to the UI over WebSockets instead of the user reloading. Written from a mission-critical case rather than a demo.rgadirov, published 2026-03-12
Real-Time Architecture in SAP CAP: Mastering Asynchronous Jobs, Gateways with WebSockets
Async processing changed in @sap/cds 10.0, 2026-07-02. Affects A recipe.
SAP Job Scheduling Service + Cloud Application Programming Model application (CAP) + SAP Authorization and Trust Management Service (XSUAA)SAP Job Scheduling Service + Cloud Application Programming Model application (CAP) + SAP Authorization and Trust Management Service (XSUAA)Calling an unsecured endpoint on a schedule is trivial; this is the same thing once the endpoint is protected. The interesting part is the caller — the Job Scheduling Service is not a person, so CAP's pseudo-roles are where the post spends its time, and $XSSERVICENAME has to match the scheduler's own instance name.former_member412792, published 2022-12-12
DestinationsSAP only
Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]The opening of a three-part series on reaching more than one S/4HANA system from one CAP application with the user's identity carried through. This part sets up the business problem; the propagation itself is in the parts that follow.mohit_bansal3, published 2022-11-25
BTP CAP : How to Connect to Remote Services Locally in CAP ApplicationBTP CAP : How to Connect to Remote Services Locally in CAP ApplicationThe same problem four years earlier: a CAP application that consumes a remote service, running locally against the real thing rather than against a mock.showkath_naseem, published 2022-12-12
Connect SAP CAP (Node.js) to On-Premise/Private PostgreSQL using SAP Cloud ConnectorConnect SAP CAP (Node.js) to On-Premise/Private PostgreSQL using SAP Cloud ConnectorAn end-to-end route from a CAP Node.js application on Cloud Foundry to a PostgreSQL database that is never made publicly reachable, over BTP Connectivity and the Cloud Connector using a TCP destination and SOCKS5. The part worth having is that it covers the deployer as well as the server: the generated PostgreSQL deployer has to reach the same private database to deploy the CDS model, and a guide that only connects the runtime leaves you with a schema you cannot install.Kalaikovan, published 2026-08-07
Connect SAP CAP (Node.js) to On-Premise/Private PostgreSQL using SAP Cloud Connector
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
Execute [OAuth2 client credentials] protected REST request with SAP CAP ApplicationExecute [OAuth2 client credentials] protected REST request with SAP CAP ApplicationA recipe, and the author calls it that — package.json, a .cds and a handler — for calling a remote service protected by OAuth2 client credentials from a CAP application. Short, complete, and addressed to CAP developers rather than to BTP administrators.Lachmish, published 2022-04-27
Execute [OAuth2 client credentials] protected REST request with SAP CAP Application
Authentication changed in CAP Java 3.0.1, 2024-07-26. Affects A recipe.
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-5]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-5]The consequence of decoupling: with the back end live on its own Cloud Foundry route, the front end needs a BTP destination to reach it rather than a relative path. Short, and it is the join the architecture creates.sanjucs, published 2026-05-18
Implementing Dynamic Subaccount-Based Routing in SAP CAP with SAP BTP DestinationsImplementing Dynamic Subaccount-Based Routing in SAP CAP with SAP BTP DestinationsWhy environment variables are the wrong place for backend endpoints in a CAP application, and what replaces them: cockpit destinations resolved at runtime, with the subaccount or instance identified as the request is handled. The argument is about redeployment — an endpoint kept in the environment means a deploy every time it moves — and the shape it produces is one codebase serving several landscapes without a build per landscape.Dnyaneshwar Salve, published 2026-03-18
Invoke OpenAPI-documented APIs remotely with SAP Cloud Application Programming ModelInvoke OpenAPI-documented APIs remotely with SAP Cloud Application Programming ModelThe other direction: consuming an API described by an OpenAPI document from CAP, rather than publishing one. Worth pairing with the plugin entries here, which all serve the outbound half.wittro, published 2022-08-30
Invoke OpenAPI-documented APIs remotely with SAP Cloud Application Programming Model
Destinations changed in @sap-cloud-sdk/connectivity 4.0.0, 2025-03-04. Affects Runnable code.
Part 3: Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]Part 3: Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]The final part, and the one with the most CAP in it — the service consuming the propagated destinations, and what the handler sees. Read the three together; the series is one piece.mohit_bansal3, published 2022-11-25
Part 3: Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]
Destinations changed in @sap-cloud-sdk/connectivity 4.0.0, 2025-03-04. Affects A recipe.
Qualtrics integration with domain based authorization in CAP project on HANA cloudQualtrics integration with domain based authorization in CAP project on HANA cloudSurveys pulled from Qualtrics into a CAP application in real time, with the twist in the title: authorisation decided by the user's domain rather than by a role collection. A pattern that comes up whenever the audience is wider than the tenant.former_member69893, published 2022-09-30
Qualtrics integration with domain based authorization in CAP project on HANA cloud
Authorization has changed twice since this was published, most recently in CAP Java 3.7.1, 2025-01-30. Affects Runnable code.
SFSFとHANA Cloudを使用するCAPのアプリケーション開発SFSFとHANA Cloudを使用するCAPのアプリケーション開発In Japanese. A hands-on taking data between SuccessFactors and HANA Cloud through a CAP application — the connection setup, the data and service models, then read and write logic, and a Cloud Foundry deploy. Long enough to carry its own table of contents.rasai, published 2022-12-14
SFSFとHANA Cloudを使用するCAPのアプリケーション開発
Database connectors has changed twice since this was published, most recently in @sap/cds 10.1.0, 2026-09-07. Affects A recipe, Runnable code.
Event MeshSAP only
[Blog Post] SAP Event Mesh – CAP based implementation of SAP Event Mesh in a Single-Tenant Scenario[Blog Post] SAP Event Mesh – CAP based implementation of SAP Event Mesh in a Single-Tenant ScenarioThe instalment of the Deep Dive series where the framework arrives. The earlier posts consumed Event Mesh over its REST API, so this one is explicitly a comparison: the same thing through CAP's messaging abstraction, with the three flavours — local, file-based and a real broker — named before the broker one is built.AyushKumar and vipul.khullar, published 2022-06-06
[Blog Post] SAP Event Mesh – CAP based implementation of SAP Event Mesh in a Single-Tenant Scenario
Event Mesh changed in @sap/cds 10.0.3, 2026-07-02. Affects A recipe, Runnable code.
Event Driven Architecture with Event Mesh - Part-1Event Driven Architecture with Event Mesh - Part-1Continues the author's own CDS entity-relationship example rather than starting a fresh one, which is the point of it — the same model gains events. Concepts first, then a message client and queue on BTP, then a Postman check that the queue works before any CAP code is written, and finally the emit from a CAP REST service.Avinash_Vaidya, published 2022-12-04
Event Driven Architecture with Event Mesh - Part-1
Event Mesh changed in @sap/cds 10.0.3, 2026-07-02. Affects A recipe, Runnable code.
Publish events from CAP Node.js applications to Event Mesh of Integration SuitePublish events from CAP Node.js applications to Event Mesh of Integration SuiteThe smallest complete example: cds init, a service with one function, cds.connect.to('messaging') and an emit to a topic. Deliberately scoped — the Event Mesh setup is skipped and the subaccount is assumed to be the same one — so what remains is the handful of lines on the CAP side and the binding that makes them reach the broker.KevinWang_ST_Consultancy, published 2026-02-13
Publish events from CAP Node.js applications to Event Mesh of Integration Suite
Event Mesh changed in @sap/cds 10.0.3, 2026-07-02. Affects A recipe.
NotificationsSAP only
Receive Notifications from Amazon Simple Notification Service for SAP S/4HANA BTP Extension AppReceive Notifications from Amazon Simple Notification Service for SAP S/4HANA BTP Extension AppEmail notifications from a CAP application through Amazon SNS instead of anything SAP provides — a hyperscaler service used directly from the extension rather than through a BTP intermediary. The argument for it is stated as reach rather than cost: the extension gets the platform's services and the hyperscaler's at the same time.albertoliu1993, published 2022-10-14
RFC connectivityUnmapped
Introducing open-rfc: Calling SAP RFC from Node.js Without the SDKIntroducing open-rfc: Calling SAP RFC from Node.js Without the SDKopen-rfc is a TypeScript and JavaScript RFC client for Node.js with no runtime dependencies and no SAP NetWeaver RFC SDK, written after SAP archived node-rfc and PyRFC and while the connector below @sap/cds-rfc needs an S-user, an SAP Build Code licence and a private registry. The history of RFC connectivity from Node.js is the first half; the second shows the package on its own, as an npm alias for node-rfc, and through an npm override as the connector below an unchanged @sap/cds-rfc. The 0.2.3 beta stops at direct application-server connections with password authentication and classic Unicode RFC: no message-server load balancing, SNC, tRFC, qRFC, bgRFC or server mode.published 2026-08-10
Agent access to your codeSAP and community
Before You Upgrade S/4HANA: Static UI5 Checks with MCPBefore You Upgrade S/4HANA: Static UI5 Checks with MCPA UI5 version upgrade checked against one app by pairing two MCP servers: the ui5_version_diff tool added to mcp-sap-docs, which reads a bundle from ui5-lib-diff downloaded once at setup and filters it by version range, change type, library or query text, and @ui5/mcp-server, whose get_project_info, get_version_info, run_ui5_linter and run_manifest_validation say what the app uses and what fails. Run with a ui5-versions-upgrade.md skill on the legacy app from From SEGW and Legacy UI5 to RAP with ARC-1, from SAPUI5 1.84.59 to 1.147.2, the diff range held 985 deprecations and 961 What's New entries, and the linting and manifest validation narrowed that to findings in this app, among them jQuery.sap.require, synchronous bootstrap, the sap_belize theme, sap.m.MessagePage and an old manifest _version. The checks read the source in a local checkout and never the deployed app, so the report is a first pass: a changelog entry is not proof that a workaround can be deleted, and the app still has to be run and tested.published 2026-05-20
From SEGW and Legacy UI5 to RAP with ARC-1From SEGW and Legacy UI5 to RAP with ARC-1Three ARC-1 skills, run in Cursor with Composer-2 against a deliberately rough demo on an S/4HANA 2023 trial system, turn the SEGW service ZDEMO_MIG_PROJECTS_SRV into a managed, draft-enabled RAP business object published as OData V4, replace its ApproveProject function import and its direct UPDATE ... COMMIT WORK with the action approve_project written in EML in local mode, and rebuild the freestyle UI5 JavaScript app once in UI5 TypeScript and once as a Fiori elements list report and object page driven by metadata extensions. What the published transcripts add is how the agent got there: it found the generated MPC class names and the custom logic in DPC_EXT only by reading the system, the skills made it print the extracted model and stop for confirmation before writing, and @ui5/mcp-server, mcp-sap-docs and @sap-ux/fiori-mcp-server each had their own job beside it. The demo is small on purpose, and the post says a productive SEGW service that calls BAPIs, carries custom authorisation logic or supports deep inserts is not solved with one prompt.published 2026-05-11
From SEGW and Legacy UI5 to RAP with ARC-1
@sap-ux/fiori-mcp-server has been through 2 major lines since this was published: 0.7 (2026-05), 1 (2026-05). Affects Runnable code.
How I Use AI for Development and Why Context MattersHow I Use AI for Development and Why Context MattersPart one of the AI ABAP development series traces a move from pasting ChatGPT output and error messages back and forth to tools that search, read docs and inspect files themselves, and holds that the context around a model decides more in real projects than benchmark results do. In SAP work the grounding comes from mcp-sap-docs, which brings SAP Help, GitHub repositories, style guides and DSAG guidelines into the session, and context for changing a class also means the tables it uses, the classes it calls and similar implementations. Agentic autonomy is a slider set per project, with the time saved on typing moved into planning and review, and the post stops before ABAP: SAP's MCP servers for UI5, CAP and Fiori (@ui5/mcp-server, @cap-js/mcp-server, @sap-ux/fiori-mcp-server) sit in off-stack work that git and pipelines already gate, and the harder ABAP case is left to the next part.published 2026-04-20
Agent guidanceSAP and community
Teaching AI Agents Best Practices: A Skills Workspace for CAP DevelopmentTeaching AI Agents Best Practices: A Skills Workspace for CAP DevelopmentStates the gap this capability exists for more precisely than most: an agent already knows CAP well enough to generate models, handlers and deployments, but knowing a framework and following its current practice reliably are different things, because a model defaults to whatever it saw most of during training — which may be outdated, subtly wrong, or simply not how a given team works. Skills are offered as the closing mechanism, and the post describes a workspace pattern rather than a single file, with the architecture claimed to be framework-agnostic.daniel_schlachter, published 2026-06-09
Agent toolingSAP only
AI-native North Star architecture — Platform LayerAI-native North Star architecture — Platform LayerThe platform layer of SAP's North Star architecture, the chapter that says where agents run and what a developer builds them with. It names an AI Golden Path built on the SAP Cloud Application Programming Model, the ABAP Cloud development model with RAP and the SAP Fiori design system, and a managed agent runtime on SAP BTP that is designed to provide software development kits for building agents in any framework, an agent sandbox, container-hosted execution, a skills registry and continuous evaluations, which is the ground agent tooling covers. Agents are extended without changing their code through four patterns, the first of them tool extensibility through the Model Context Protocol, the concern MCP servers is named for; the process-layer chapter adds that a pro-code path with a standardised agent SDK and a prompt-driven path through the Joule Studio solution produce the same code artifact on the same runtime. It describes a design SAP intends rather than products that exist, and the SDK and the registry it names have no entry here yet.published 2026-05-13
AI-native North Star architecture — Platform Layer
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects A reference.
ARC-1 with Joule Studio: Bringing Real ABAP System Context into JouleARC-1 with Joule Studio: Bringing Real ABAP System Context into JouleBrings the same BTP-deployed ARC-1 endpoint into Joule through a Joule Studio, classic edition agent configured with Anthropic Claude Sonnet 4 and two MCP servers, ARC-1 and mcp-sap-docs, for work that starts in SAP where the previous part started in Microsoft 365. Two read-only showcases carry the ABAP Cloud readiness edge: a clean core check of one class that reports it is not released, uses USR02 and BUT000 directly and has no ATC findings, and a modernisation backlog for package ZSD_LEGACY which, as that package did not exist, grouped 28 ZSD* objects into risk buckets instead. The route through SAP Integration Suite API Management or a future MCP gateway is presented as a target architecture and not yet a productive setup, because Joule Studio's documentation requires streamable HTTP destinations and does not support MCP servers that need interactive OAuth user authorisation.published 2026-05-06
ARC-1 with Joule Studio: Bringing Real ABAP System Context into Joule
arc-1 has been through 2 major lines since this was published: 0.9 (2026-05), 1 (2026-07). Affects Runnable code.
Banking Sentinel: A Multi-Agent Credit-Risk Copilot on SAP BTP, Built on a Mixed AI StackBanking Sentinel: A Multi-Agent Credit-Risk Copilot on SAP BTP, Built on a Mixed AI StackThe risk it is chasing is a graph problem stated in banking terms: a borrower who looks safe alone and is the linchpin of a group ten times the size. Multi-agent, mixed AI stack, on BTP and CAP.Shahid, published 2026-06-24
Banking Sentinel: A Multi-Agent Credit-Risk Copilot on SAP BTP, Built on a Mixed AI Stack
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects A recipe, Runnable code.
Building an LLM Agent in CAP Java with Spring AIBuilding an LLM Agent in CAP Java with Spring AIThe Java counterpart to the author's own Node.js post, and written as one: connecting to AI Core with the SAP AI SDK, then calling an agent and a tool through Spring AI. Opens with a section on libraries and workflows — which framework does what, and what is left to you — before any code.published 2026-06-08
Building an LLM Agent in CAP Java with Spring AI
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects Runnable code.
Building an LLM Agent using CAPBuilding an LLM Agent using CAPThe argument is that CAP is already most of what an agent framework wants — services, handlers, a typed model — so the agent is built inside it rather than beside it. AI Core through sap-ai-sdk, then Langchain for the agent and its tools. Long, with a TLDR at the top for people who want the shape without the walk.published 2026-05-27
Building an LLM Agent using CAP
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects Runnable code.
Building Durable AI Agents - Announcing the cds-langgraph-persistence PluginBuilding Durable AI Agents - Announcing the cds-langgraph-persistence PluginThe announcement, and the argument behind it. Treating an agent as a software architecture rather than a model with tools makes a list of production requirements — identity, authn and authz, multitenancy, persistence, event-driven flows, scalability, observability, CI/CD — and the author's point is that CAP already answers most of them for BTP, which is what makes LangGraph inside CAP Node.js worth doing. The post then narrows to one of those requirements, durability, and the checkpointer that supplies it. Written from a year of building agents next to real business systems rather than as a framework tour.merbinjanselm, published 2026-07-15
Building Durable AI Agents - Announcing the cds-langgraph-persistence Plugin
@mi8y/cds-langgraph-persistence has been through 3 major lines since this was published: 0.5 (2026-07), 0.6 (2026-07), 0.7 (2026-09). Affects Runnable code.
Integrating and Extending JouleIntegrating and Extending JouleSAP's reference architecture for SAP Joule across SAP cloud applications: a request is checked against a Scenario Catalog of the applications' skills and a Knowledge Catalog answered by retrieval-augmented generation, combined with the user's roles and history, sent to an LLM available through the generative AI hub, and, where a Joule function is needed, turned into a call to the backend. Its identity page is the authentication path: each user sits in the Identity Directory of Cloud Identity Services with a Global User ID, Identity Provisioning synchronises role assignments into SAP Build Work Zone, whose navigation service decides which functions a user may call, and the Destination service exchanges the user's token to call a function in the user's name. Its extension page covers Joule Studio in SAP Build, where Joule skills automate rule-based tasks over APIs and AI agents plan and reason with models and document grounding from SAP AI Core, the ground agent tooling covers; a later Joule Studio page describes a managed Joule Studio Runtime on the SAP Business AI Platform, which has no entry here.published 2026-03-16
Document extractionSAP only
Integrate CAP application as outbound channel for SAP Document AIIntegrate CAP application as outbound channel for SAP Document AIDocument AI will call you back when extraction finishes, and the callback is where this goes wrong: the CAP application has to accept an unauthenticated POST from outside without dropping CSRF protection for everything else. The answer is a middleware hooked into the CAP bootstrap, and the post spends its length on the token lifecycle rather than on the extraction.sdeissenboeck, published 2026-04-22
SAP Document AISAP Document AISAP's reference architecture for SAP Document AI, first as SAP composes the service on BTP for document extraction: OCR, pretrained models, customer-defined schemas and LLM calls through SAP AI Core and its Prompt Registry in one pipeline, with tenant-isolated persistence in SAP HANA Cloud, PostgreSQL and an object store. Its scenario pages then lay out a solution in three layers: intake through Outlook and SharePoint inbound channels, the workspace UI, the Joule Work mobile app or the upload API; classification and extraction with a confidence score per field, automatic confirmation above a threshold and review of the rest in the workspace; and posting through outbound channels, directly to a REST API, through an SAP Integration Suite flow, or through a CAP service that maps the fields and calls SAP S/4HANA over OData. Enrichment beyond the service's own master data lookup is left to a CAP application or an Integration Suite flow triggered from an outbound channel, and direct API posting leaves error handling, retries and monitoring to the application.published 2026-06-03
LLM integrationSAP only
Banking Sentinel: A Multi-Agent Credit-Risk Copilot on SAP BTP, Built on a Mixed AI StackBanking Sentinel: A Multi-Agent Credit-Risk Copilot on SAP BTP, Built on a Mixed AI StackThe risk it is chasing is a graph problem stated in banking terms: a borrower who looks safe alone and is the linchpin of a group ten times the size. Multi-agent, mixed AI stack, on BTP and CAP.Shahid, published 2026-06-24
Banking Sentinel: A Multi-Agent Credit-Risk Copilot on SAP BTP, Built on a Mixed AI Stack
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects A recipe, Runnable code.
Building an LLM Agent in CAP Java with Spring AIBuilding an LLM Agent in CAP Java with Spring AIThe Java counterpart to the author's own Node.js post, and written as one: connecting to AI Core with the SAP AI SDK, then calling an agent and a tool through Spring AI. Opens with a section on libraries and workflows — which framework does what, and what is left to you — before any code.published 2026-06-08
Building an LLM Agent in CAP Java with Spring AI
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects Runnable code.
Building an LLM Agent using CAPBuilding an LLM Agent using CAPThe argument is that CAP is already most of what an agent framework wants — services, handlers, a typed model — so the agent is built inside it rather than beside it. AI Core through sap-ai-sdk, then Langchain for the agent and its tools. Long, with a TLDR at the top for people who want the shape without the walk.published 2026-05-27
Building an LLM Agent using CAP
Agent tooling changed in @cap-js/agents 0.9.1, 2026-08-14. Affects Runnable code.
cds-toon-ai-protocol-adapter: a pragmatic way to cut AI token costs using SAP CAPcds-toon-ai-protocol-adapter: a pragmatic way to cut AI token costs using SAP CAPNames a cost most CAP-plus-LLM writing ignores: every JSON payload streamed to a model is billed by its verbosity, in latency as well as money. The plugin brings TOON — Token-Oriented Object Notation — to a CAP service so the wire format changes without the service code doing so, in a REST variant and an OData one, with token counts reported on both sides.published 2026-01-25
Enhancing Enterprise Applications: AI-powered User Experience with SAP CAP AI PluginEnhancing Enterprise Applications: AI-powered User Experience with SAP CAP AI PluginStarts from the blank form nobody wants to fill in, and asks what an enterprise application should do about it. The AI is in service of that rather than the subject of it.published 2026-04-29
Integrating a Custom AI Model into SAP CAP Using AI LaunchpadIntegrating a Custom AI Model into SAP CAP Using AI LaunchpadYour own model rather than a hosted one: deployed to AI Core, made callable through AI Launchpad, then reached from CAP. The case a lot of companies ask about and few posts cover.egeAksoyek, published 2026-03-20
Integrating a Custom AI Model into SAP CAP Using AI Launchpad
LLM integration changed in @cap-js/ai 1.0.0, 2026-04-28. Affects Runnable code.
Natural Language Queries for SAP CAP via MCP: The LLM Translates, CDS ExecutesNatural Language Queries for SAP CAP via MCP: The LLM Translates, CDS ExecutesThe division of labour is the argument, and it is in the subtitle: the model turns English into a CDS query and CDS runs it, so nothing generates SQL and nothing hallucinates a join. Schema annotations do the resolving. Long, with the package, the repository and the MCP registry entry all linked.Shahid, published 2026-06-25
UI5 AI Features library is now an npm PackageUI5 AI Features library is now an npm PackageThe release note for a demo turning into a dependency, and it is explicit about why that matters: the earlier version worked, but using it meant cloning the repo and copying both halves, which stops working the moment one of them changes. The post walks through what shipping the CAP plugin and the be.wl.ai control library in one npm version buys — a client and server contract that cannot drift — then lists the eleven controls by group, shows the two-line configuration that activates each half, and notes that this version is actually deployed on BTP behind both a standalone approuter and Work Zone. It closes on the demo repository, written with no library source in it as the test that the package stands alone.published 2026-08-31
UI5 AI Features library is now an npm Package
cds 8, line ended. Affects Runnable code.
Tool governanceUnmapped
A Clearer View of Your SAP Integrations Under the New API PolicyA Clearer View of Your SAP Integrations Under the New API PolicyThe SAP API Policy Evidence Skill assesses one SAP interface or usage pattern at a time against SAP API Policy v.4.2026a, reading evidence from five MCP servers, among them servers for the Business Accelerator Hub and SAP Notes, mcp-sap-docs and a read-only ARC-1, and returns one of four labels with a confidence level, an evidence table, residual risk and questions for SAP. It gives no compliant or not compliant answer on purpose, because SAP's FAQ (Q49) declines to publish a binding decision matrix, and it sends legal, commercial and roadmap questions to SAP and lowers its confidence when a source is not connected. Four sample runs show the method, among them ODP-RFC extraction labelled likely not aligned under SAP Note 3255746 and the same API_SALES_ORDER_SRV assessed differently for an autonomous agent behind a custom gateway and for a Boomi middleware flow; the SAP Notes and Business Accelerator Hub servers read SAP sites through a browser login, which the post says to use at your own risk.published 2026-06-02
AuthenticationSAP only
Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]The opening of a three-part series on reaching more than one S/4HANA system from one CAP application with the user's identity carried through. This part sets up the business problem; the propagation itself is in the parts that follow.mohit_bansal3, published 2022-11-25
Execute [OAuth2 client credentials] protected REST request with SAP CAP ApplicationExecute [OAuth2 client credentials] protected REST request with SAP CAP ApplicationA recipe, and the author calls it that — package.json, a .cds and a handler — for calling a remote service protected by OAuth2 client credentials from a CAP application. Short, complete, and addressed to CAP developers rather than to BTP administrators.Lachmish, published 2022-04-27
Execute [OAuth2 client credentials] protected REST request with SAP CAP Application
Authentication changed in CAP Java 3.0.1, 2024-07-26. Affects A recipe.
Integrating and Extending JouleIntegrating and Extending JouleSAP's reference architecture for SAP Joule across SAP cloud applications: a request is checked against a Scenario Catalog of the applications' skills and a Knowledge Catalog answered by retrieval-augmented generation, combined with the user's roles and history, sent to an LLM available through the generative AI hub, and, where a Joule function is needed, turned into a call to the backend. Its identity page is the authentication path: each user sits in the Identity Directory of Cloud Identity Services with a Global User ID, Identity Provisioning synchronises role assignments into SAP Build Work Zone, whose navigation service decides which functions a user may call, and the Destination service exchanges the user's token to call a function in the user's name. Its extension page covers Joule Studio in SAP Build, where Joule skills automate rule-based tasks over APIs and AI agents plan and reason with models and document grounding from SAP AI Core, the ground agent tooling covers; a later Joule Studio page describes a managed Joule Studio Runtime on the SAP Business AI Platform, which has no entry here.published 2026-03-16
Part 3: Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]Part 3: Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]The final part, and the one with the most CAP in it — the service consuming the propagated destinations, and what the handler sees. Read the three together; the series is one piece.mohit_bansal3, published 2022-11-25
Part 3: Architecting Complex Real Life Business Scenario on SAP BTP with ease [ Targeting Multiple backend S/4HANA Systems utilizing Principal Propagation ]
Destinations changed in @sap-cloud-sdk/connectivity 4.0.0, 2025-03-04. Affects A recipe.
AuthorizationSAP only
An approach to secure multiple integrated SAP CAP java applications with a common XSUAA service instanceAn approach to secure multiple integrated SAP CAP java applications with a common XSUAA service instanceOne XSUAA instance across several CAP Java applications that call each other, rather than one per application. Short, and written from inside SAP Labs as something the author tried — the value is the shape of the arrangement, not a walkthrough.sreanik_dhanyakumar2, published 2022-09-14
Dynamic authorisation with user attributes in SAP CAP and AMSDynamic authorisation with user attributes in SAP CAP and AMSThe same argument as the XSUAA-to-AMS piece, opened from a concrete failure: an acquisition puts 500 users on sales data restricted by division, and role-based access control answers it with Sales_Manager_EMEA, Sales_Manager_APAC and so on until the roles multiply past managing. Attribute-based authorisation replaces the set with one policy carrying a restriction, and the post walks through defining it in AMS against Cloud Identity Services. The clearest statement of role explosion among the three AMS pieces here.pedro_iranzo, published 2026-05-04
From XSUAA to AMS: Architecting S4HANA CAP Extensions with Policy-Based AuthorizationFrom XSUAA to AMS: Architecting S4HANA CAP Extensions with Policy-Based AuthorizationWhy scope-based authorization runs out, argued from enterprise extension work rather than from the documentation: XSUAA handles roles well, but real requirements are business-context restrictions — country, company code, organisational unit — and expressing those as scopes does not scale. The migration to policy-based authorization is presented as an architectural move for S/4HANA extensions rather than a configuration change.Avinash Vaidya, published 2026-05-27
How to get authenticated user information with CAP in three different ways – Using the XSUAA APIHow to get authenticated user information with CAP in three different ways – Using the XSUAA APIThe third of three approaches the author sets out, and the one that returns the most: going to the XSUAA API directly rather than reading what CAP already put on the request. Depends on an earlier post for the project setup, so it starts mid-stream on purpose.ale_biagi, published 2022-07-18
How to Restrict CRUD Operations in SAP CAPM Using @Capabilities, @readonly and Test APIs with .httpHow to Restrict CRUD Operations in SAP CAPM Using @Capabilities, @readonly and Test APIs with .httpEntities are exposed with full CRUD by default, and this is how to take operations away again — @Capabilities for Insert, Update and Delete individually, @readonly for the blunt version. Tested with .http files rather than a UI, which keeps the check on the service.DeepaRagho, published 2026-05-22
Qualtrics integration with domain based authorization in CAP project on HANA cloudQualtrics integration with domain based authorization in CAP project on HANA cloudSurveys pulled from Qualtrics into a CAP application in real time, with the twist in the title: authorisation decided by the user's domain rather than by a role collection. A pattern that comes up whenever the audience is wider than the tenant.former_member69893, published 2022-09-30
Qualtrics integration with domain based authorization in CAP project on HANA cloud
Authorization has changed twice since this was published, most recently in CAP Java 3.7.1, 2025-01-30. Affects Runnable code.
SAP BTP XSUAA Security Configuration Comparison: Attribute-Based vs. Authority-Based ApproachesSAP BTP XSUAA Security Configuration Comparison: Attribute-Based vs. Authority-Based ApproachesTwo shapes of the same xs-security.json set against each other, with the resulting JWT printed for both. The consequence for application code is what makes it worth reading: under the attribute-based configuration a CAP handler reads req.user.attr.department, and under the authority-based one it does not, because the attribute is not there. Carries a migration guide between the two.rajeshkputumbaka, published 2026-02-18
SAP Job Scheduling Service + Cloud Application Programming Model application (CAP) + SAP Authorization and Trust Management Service (XSUAA)SAP Job Scheduling Service + Cloud Application Programming Model application (CAP) + SAP Authorization and Trust Management Service (XSUAA)Calling an unsecured endpoint on a schedule is trivial; this is the same thing once the endpoint is protected. The interesting part is the caller — the Job Scheduling Service is not a person, so CAP's pseudo-roles are where the post spends its time, and $XSSERVICENAME has to match the scheduler's own instance name.former_member412792, published 2022-12-12
Securing a CAP Node.js App with SAP AMS on BTP Cloud FoundrySecuring a CAP Node.js App with SAP AMS on BTP Cloud FoundryThe end-to-end version: a CAP Node.js project from cds init, role-based access through the Authorization Management Service and Identity Authentication Service, and an MTA deployment to Cloud Foundry. The prerequisite list is the useful part to read first — HANA Cloud, an IAS tenant and an AMS entitlement — because it says plainly what this path costs before you are three steps into it.Jacky Liu, published 2026-07-17
Why developers should care about credential-types for xsuaa?Why developers should care about credential-types for xsuaa?Rotating secrets, argued from a habit rather than a feature: the author names the practice implicit in many beginner tutorials — lifting a secret out of a binding to use it elsewhere — and notes CAP has features that make it unnecessary in development. Then the three credential types side by side, configured on a CAP application's uaa resource in mta.yaml and through a deployment extension.former_member2839, published 2022-07-05
Why developers should care about credential-types for xsuaa?
Authorization has changed twice since this was published, most recently in CAP Java 3.7.1, 2025-01-30. Affects A recipe, Runnable code.
Change trackingSAP only
New and improved: Change Tracking pluginNew and improved: Change Tracking pluginThe 2.0 announcement, and unusually candid about why there is a 2.0 at all: the plugin already existed and was, in the author's words, plagued by many issues. What it records is every insert, update and delete with the user and the timestamp, aimed at root-cause analysis and at detecting changes nobody authorised. Generally available as of this post, having been hinted at as beta in the April release notes.published 2026-06-12
New and improved: Change Tracking plugin
cds 2, line ended. Affects A recipe, Runnable code.
Input validationSAP only
Declarative Programming in CAP: Less Code, More ValueDeclarative Programming in CAP: Less Code, More ValueAn argument for annotations over handlers, made from the case where it is most obvious: repetitive validation logic that could be declared instead of written. Describes what you want rather than how to get it, and lets the runtime decide the how.published 2026-02-05
DeploymentCommunity only
Build and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configurationBuild and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configurationGeneration 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.jlong, published 2022-02-10
Build and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configuration
Fiori annotations changed in @sap/cds-dk 9.6.0, 2025-12-17. Affects A recipe, Runnable code.
Build BTP CAP App with Fiori Integration – Part 2: Implementing End to End AppBuild BTP CAP App with Fiori Integration – Part 2: Implementing End to End AppThe implementation half of the series whose first part set up the account and the database: the application itself, end to end.SuryaRamesh, published 2026-04-09
CAP on Kyma - Deploy your CAP apps to SAP BTP, Kyma RuntimeCAP on Kyma - Deploy your CAP apps to SAP BTP, Kyma RuntimeThe post that superseded the author's own earlier one, written for cds and cds-dk 6 when Kyma deployment became something the tooling did rather than something you assembled. The current reference of the several Kyma posts here.Uwe_Klinger, published 2022-07-12
CAP on Kyma - Deploy your CAP apps to SAP BTP, Kyma Runtime
Deployment changed in @sap/cds-dk 8.9.0, 2025-03-31. Affects A recipe, Runnable code.
Extend SAP SuccessFactors on SAP BTP with CAP - Deploy to SAP HANA CloudExtend SAP SuccessFactors on SAP BTP with CAP - Deploy to SAP HANA CloudThe deployment instalment of the author's SuccessFactors extension series — the project already exists and the imported service is already modelled, so this is only the move onto HANA Cloud. Depends on the two posts before it and says so.ale_biagi, published 2022-03-29
From Concept to action: Hands-On with the CAP Operator and the Partner Reference ApplicationFrom Concept to action: Hands-On with the CAP Operator and the Partner Reference ApplicationThe CAP Operator applied to a real application rather than a sample of its own — SAP's Partner Reference Application, taken from plugin integration through containerisation to custom resources. The transition to CRDs is the part that repays attention: it is where the deployment stops being an mta and becomes Kubernetes.ChristianWeiss, published 2026-05-21
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-4]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-4]The switch from SQLite to HANA and the first deploy of the back end to Cloud Foundry — the point in the series where the persistence stops being a file and the build starts producing HDI artifacts.sanjucs, published 2026-05-12
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-4]
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-6]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-6]The last part: the Fiori application built and deployed into the HTML5 Application Repository, separately from the service it talks to. Opens with a checklist of the five parts before it, which is the clearest statement of what the whole series covers.sanjucs, published 2026-05-14
Kyma Evolution: Transforming SAP Kyma into a tailor-made SaaS Platform for sbs extensionsKyma Evolution: Transforming SAP Kyma into a tailor-made SaaS Platform for sbs extensionsWritten by an extensibility expert building against Cloud ERP under clean core, and it treats Kyma as something to shape rather than to adopt — what has to be added to the runtime before it is a SaaS platform for CAP extensions. The Partner Reference Application post is the hands-on sequel.ChristianWeiss, published 2026-02-03
Part 1: Creating and Deploying a SAP CAP Application with SAP HANA on SAP BTP (Cloud Foundry)Part 1: Creating and Deploying a SAP CAP Application with SAP HANA on SAP BTP (Cloud Foundry)Opens with the observation the whole series rests on — CAP is usually demonstrated locally, and the interesting part starts when it is deployed. Part one of the run that continues into PostgreSQL and Work Zone.yashbhosle789, published 2026-02-25
Part 1: Creating and Deploying a SAP CAP Application with SAP HANA on SAP BTP (Cloud Foundry)
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
Part 2: Creating and Deploying a CAP Application with PostgreSQL, Hyperscaler OptionPart 2: Creating and Deploying a CAP Application with PostgreSQL, Hyperscaler OptionThe middle of a series that runs from database to Work Zone: the CAP application from part one pointed at PostgreSQL on the hyperscaler option, and deployed. The service binding and the build are where it spends its time.yashbhosle789, published 2026-03-04
Part 2: Creating and Deploying a CAP Application with PostgreSQL, Hyperscaler Option
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe.
Part 2: Runtime Architecture & Cost efficiency gainsPart 2: Runtime Architecture & Cost efficiency gainsThe technical half of the Kyma Evolution series: why a cluster tuned for CAP multitenancy is not just somewhere to run containers, and where the cost efficiency actually comes from.ChristianWeiss, published 2026-02-04
SAP CAP - Optimize your build MTA projects with several ui appsSAP CAP - Optimize your build MTA projects with several ui appsWhat the Business Application Studio wizard writes into mta.yaml stops scaling somewhere past a couple of dozen UI applications, because every one of them gets its own build step. The post is about the build phase specifically, and reads as a report from a project large enough to have hit the wall rather than as a general optimisation.published 2022-04-28
SAP CAP - Optimize your build MTA projects with several ui apps
Deployment changed in @sap/cds-dk 8.9.0, 2025-03-31. Affects A recipe.
MultitenancySAP only
Building a SaaS Multitenant Application Using SAP CAP Framework — Without a DatabaseBuilding a SaaS Multitenant Application Using SAP CAP Framework — Without a DatabaseMultitenancy with the database taken out, which is a useful way to see what is left: the approuter and its tenant host pattern, the XSUAA instance in shared tenant mode, and the SaaS Registry binding that makes a subscription happen. Everything here is subscription lifecycle and routing, so the parts that are usually entangled with HDI container provisioning are visible on their own.DebashishDas, published 2026-05-06
From Concept to action: Hands-On with the CAP Operator and the Partner Reference ApplicationFrom Concept to action: Hands-On with the CAP Operator and the Partner Reference ApplicationThe CAP Operator applied to a real application rather than a sample of its own — SAP's Partner Reference Application, taken from plugin integration through containerisation to custom resources. The transition to CRDs is the part that repays attention: it is where the deployment stops being an mta and becomes Kubernetes.ChristianWeiss, published 2026-05-21
Kyma Evolution: Transforming SAP Kyma into a tailor-made SaaS Platform for sbs extensionsKyma Evolution: Transforming SAP Kyma into a tailor-made SaaS Platform for sbs extensionsWritten by an extensibility expert building against Cloud ERP under clean core, and it treats Kyma as something to shape rather than to adopt — what has to be added to the runtime before it is a SaaS platform for CAP extensions. The Partner Reference Application post is the hands-on sequel.ChristianWeiss, published 2026-02-03
Multitenant SaaS applications on SAP BTP using CAP? Tried-and-True!Multitenant SaaS applications on SAP BTP using CAP? Tried-and-True!The opening post of the Cloud Foundry series, and the one that states the shape of the whole thing: a sample built out of a partner co-innovation project with BCG, then delivered in three graded versions — Basic, Advanced, Expert Features — against a fictional partner's requirements. Read it for the motivation and the map; the implementation is in the three that follow.martinfrick, published 2022-10-19
Multitenant SaaS apps on SAP BTP using CAP? Tried-and-True! – The Advanced VersionMultitenant SaaS apps on SAP BTP using CAP? Tried-and-True! – The Advanced VersionWhat the basic version leaves out and production needs: central user management, and reaching an on-premise S/4HANA from a subscribed tenant. Framed as a step towards production readiness rather than as production itself, which is the honest reading — the Expert Features post is where the rest of that distance is covered.published 2022-11-21
Multitenant SaaS apps on SAP BTP using CAP? Tried-and-True! – The Basic VersionMultitenant SaaS apps on SAP BTP using CAP? Tried-and-True! – The Basic VersionThe version deliberately bounded by what a trial or pay-as-you-go account can hold — the authors point out a PAYG owner can run it for nothing on free-tier services. Scenario first, then the architecture diagram, then a component-by-component walk through what each service in it is for.published 2022-10-24
Multitenant SaaS apps on SAP BTP using CAP? Tried-and-True! – The Expert FeaturesMultitenant SaaS apps on SAP BTP using CAP? Tried-and-True! – The Expert FeaturesThe last of the four, and the one carrying the features that are optional until they are not. Each is written up as a self-contained tutorial in the sample repository rather than inline, so the post is a guide to which of them applies to your landscape.martinfrick, published 2022-11-29
Part 2: Runtime Architecture & Cost efficiency gainsPart 2: Runtime Architecture & Cost efficiency gainsThe technical half of the Kyma Evolution series: why a cluster tuned for CAP multitenancy is not just somewhere to run containers, and where the cost efficiency actually comes from.ChristianWeiss, published 2026-02-04
Testing your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbviewTesting your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbviewcds.test covers the service; this covers what is underneath it, where the artifact is an hdbprocedure or an hdbview that CDS never sees. That means a real HDI container, so most of the post is about where to get one and how to give CAP access to it — the tests are the easy part once that is true.Tristan, published 2022-08-30
Testing your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbview
Testing has changed 3 times since this was published, most recently in @cap-js/cds-test 1.0.0, 2026-04-23. Affects A recipe, Runnable code.
Editor supportSAP and community
Add useful Extensions to Dev spaces in SAP Business Application StudioAdd useful Extensions to Dev spaces in SAP Business Application StudioStarts from the point capire makes — that CAP is editor-agnostic and BAS is the preconfigured option — and then does the thing that undoes preconfiguration: adds two extensions to a dev space for initialising data in a CAP application, with the uninstall procedure as well as the install. The uninstall half is what makes it worth keeping.showkath_naseem, published 2022-11-13
Part 1: How to create CAPM project in BASPart 1: How to create CAPM project in BASThe claim in the opening is the interesting part — database, service and UI without switching technologies — and then the project that follows from it. Part one, and it stops at a project that runs.Vennilla00, published 2026-03-05
Part 1: How to create CAPM project in BAS
Generators changed in @sap/cds-dk 10.0.3, 2026-07-02. Affects A recipe.
GeneratorsSAP and community
CAP Initializr: Generate SAP CAP Projects in SecondsCAP Initializr: Generate SAP CAP Projects in SecondsA hosted project generator for CAP in the shape of Spring Initializr — pick the structure, dependencies and configuration in a browser and download the result, rather than running cds init and then wiring the facets by hand. The post is an MVP announcement asking for feedback, and the tool lives at a Cloud Foundry trial URL rather than on npm, so it is a direction being tested in public rather than something to depend on.Saptarshi017, published 2026-03-23
Part 1: How to create CAPM project in BASPart 1: How to create CAPM project in BASThe claim in the opening is the interesting part — database, service and UI without switching technologies — and then the project that follows from it. Part one, and it stops at a project that runs.Vennilla00, published 2026-03-05
Part 1: How to create CAPM project in BAS
Generators changed in @sap/cds-dk 10.0.3, 2026-07-02. Affects A recipe.
加速开发和部署的CAP CDS和Fiori一些实用命令加速开发和部署的CAP CDS和Fiori一些实用命令In Chinese. A command reference rather than a walkthrough — cds import, cds compile, cds deploy --to sqlite, cds add hana, cds add xsuaa — grouped by what they are for. The kind of page that is more useful than a tutorial once you already know what you are doing.TiaXu, published 2022-10-21
加速开发和部署的CAP CDS和Fiori一些实用命令
Generators has changed twice since this was published, most recently in @sap/cds-dk 10.0.3, 2026-07-02. Affects A recipe, Runnable code.
Local developmentSAP only
A Fiori Launchpad Sandbox for all your CAP-based projects - OverviewA Fiori Launchpad Sandbox for all your CAP-based projects - OverviewWhere cds-launchpad-plugin came from, told as a learning exercise: the author wanted a real problem to teach himself TypeScript on, and picked the thing he kept redoing in every CAP project — a launchpad to see all the UI applications in one place. The origin post for an entry whose 2023 update is also indexed here.published 2022-03-14
A Fiori Launchpad Sandbox for all your CAP-based projects – Sample project setupA Fiori Launchpad Sandbox for all your CAP-based projects – Sample project setupThe hands-on half published the same day as the overview: the launchpad module wired into the CAP sample repository, step by step from a global cds-dk install. Same-day pairs like this are worth keeping together — the overview argues, this one is the thing you follow.published 2022-03-14
BTP CAP : How to Connect to Remote Services Locally in CAP ApplicationBTP CAP : How to Connect to Remote Services Locally in CAP ApplicationThe same problem four years earlier: a CAP application that consumes a remote service, running locally against the real thing rather than against a mock.showkath_naseem, published 2022-12-12
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-1]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-1]The first of six, and it does the thing the later parts depend on: build the Incident Management application against SQLite on a laptop, with no cloud database in sight. The series is called decoupled because the front end and the back end are deployed separately, and this part is entirely the back end.sanjucs, published 2026-05-06
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-1]
Database connectors changed in @sap/cds 10.1.0, 2026-09-07. Affects A recipe, Runnable code.
加速开发和部署的CAP CDS和Fiori一些实用命令加速开发和部署的CAP CDS和Fiori一些实用命令In Chinese. A command reference rather than a walkthrough — cds import, cds compile, cds deploy --to sqlite, cds add hana, cds add xsuaa — grouped by what they are for. The kind of page that is more useful than a tutorial once you already know what you are doing.TiaXu, published 2022-10-21
加速开发和部署的CAP CDS和Fiori一些实用命令
Generators has changed twice since this was published, most recently in @sap/cds-dk 10.0.3, 2026-07-02. Affects A recipe, Runnable code.
Seed dataCommunity only
Add useful Extensions to Dev spaces in SAP Business Application StudioAdd useful Extensions to Dev spaces in SAP Business Application StudioStarts from the point capire makes — that CAP is editor-agnostic and BAS is the preconfigured option — and then does the thing that undoes preconfiguration: adds two extensions to a dev space for initialising data in a CAP application, with the uninstall procedure as well as the install. The uninstall half is what makes it worth keeping.showkath_naseem, published 2022-11-13
TestingSAP and community
How to Restrict CRUD Operations in SAP CAPM Using @Capabilities, @readonly and Test APIs with .httpHow to Restrict CRUD Operations in SAP CAPM Using @Capabilities, @readonly and Test APIs with .httpEntities are exposed with full CRUD by default, and this is how to take operations away again — @Capabilities for Insert, Update and Delete individually, @readonly for the blunt version. Tested with .http files rather than a UI, which keeps the check on the service.DeepaRagho, published 2026-05-22
Testing your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbviewTesting your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbviewcds.test covers the service; this covers what is underneath it, where the artifact is an hdbprocedure or an hdbview that CDS never sees. That means a real HDI container, so most of the post is about where to get one and how to give CAP access to it — the tests are the easy part once that is true.Tristan, published 2022-08-30
Testing your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbview
Testing has changed 3 times since this was published, most recently in @cap-js/cds-test 1.0.0, 2026-04-23. Affects A recipe, Runnable code.
Draft handlingSAP only
Custom Handlers for Entities in SAP CAPCustom Handlers for Entities in SAP CAPWritten 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.xavisanse, published 2026-02-20
How to ensure that users can efficiently enter data in SAP Fiori elements applicationsHow to ensure that users can efficiently enter data in SAP Fiori elements applicationsGuidance 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.published 2022-12-05
Messaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client ApplicationsMessaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client ApplicationsGetting a message out of a CAP service and onto a Fiori elements object page in a draft scenario — errors, warnings and information, each of which the UI treats differently. Co-written with one of the people on the OData side, and it spends its length on the message container rather than on the handler that fills it.arley-triana-morin, published 2022-08-11
Messaging System for Transferring Error, Warning, and Information Messages from OData V4 Services to HTTP Client Applications
OData changed in @cap-js-community/odata-v2-adapter 1.10.0, 2023-04-05. Affects A recipe, Runnable code.
Fiori annotationsSAP only
Build and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configurationBuild and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configurationGeneration 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.jlong, published 2022-02-10
Build and deploy a CAP Project Node.js API with a SAP Fiori Elements UI and a managed approuter configuration
Fiori annotations changed in @sap/cds-dk 9.6.0, 2025-12-17. Affects A recipe, Runnable code.
Build BTP CAP App with Fiori Integration – Part 2: Implementing End to End AppBuild BTP CAP App with Fiori Integration – Part 2: Implementing End to End AppThe implementation half of the series whose first part set up the account and the database: the application itself, end to end.SuryaRamesh, published 2026-04-09
CAP with Fiori Elements: Side Effects, Custom Actions, Dynamic ExpressionsCAP with Fiori Elements: Side Effects, Custom Actions, Dynamic ExpressionsThe 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.Ajit_K_Panda, published 2022-12-23
CAP with Fiori Elements: Side Effects, Custom Actions, Dynamic Expressions
Fiori annotations changed in @sap/cds-dk 9.6.0, 2025-12-17. Affects Runnable code.
Deep Insert in SAP CAPM Using Composition and Fiori ElementsDeep Insert in SAP CAPM Using Composition and Fiori ElementsParent 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.published 2026-05-22
Display of hierarchical data in SAP Fiori elements using SAP Cloud Application Programming ModelDisplay of hierarchical data in SAP Fiori elements using SAP Cloud Application Programming ModelHierarchies 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.OliverKlemenz, published 2022-07-01
Display of hierarchical data in SAP Fiori elements using SAP Cloud Application Programming Model
sap:hierarchy. Affects Runnable code.
Dynamic Criticality in SAP CAP Using Fiori Elements and Node.jsDynamic Criticality in SAP CAP Using Fiori Elements and Node.jsColouring 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.Pranesh_SD, published 2026-06-05
Extend SAP SuccessFactors on SAP BTP with CAP - Develop the SAP Fiori Elements ApplicationExtend SAP SuccessFactors on SAP BTP with CAP - Develop the SAP Fiori Elements ApplicationThe 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.ale_biagi, published 2022-03-30
From SEGW and Legacy UI5 to RAP with ARC-1From SEGW and Legacy UI5 to RAP with ARC-1Three ARC-1 skills, run in Cursor with Composer-2 against a deliberately rough demo on an S/4HANA 2023 trial system, turn the SEGW service ZDEMO_MIG_PROJECTS_SRV into a managed, draft-enabled RAP business object published as OData V4, replace its ApproveProject function import and its direct UPDATE ... COMMIT WORK with the action approve_project written in EML in local mode, and rebuild the freestyle UI5 JavaScript app once in UI5 TypeScript and once as a Fiori elements list report and object page driven by metadata extensions. What the published transcripts add is how the agent got there: it found the generated MPC class names and the custom logic in DPC_EXT only by reading the system, the skills made it print the extracted model and stop for confirmation before writing, and @ui5/mcp-server, mcp-sap-docs and @sap-ux/fiori-mcp-server each had their own job beside it. The demo is small on purpose, and the post says a productive SEGW service that calls BAPIs, carries custom authorisation logic or supports deep inserts is not solved with one prompt.published 2026-05-11
From SEGW and Legacy UI5 to RAP with ARC-1
@sap-ux/fiori-mcp-server has been through 2 major lines since this was published: 0.7 (2026-05), 1 (2026-05). Affects Runnable code.
Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-2]Fullstack CAP Application with HANA Cloud (Decoupled Architecture) [Part-2]Part 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.sanjucs, published 2026-05-07
Workflow integrationSAP only
Trigger an SAP Build Process Automation Workflow from CAP Using the @cap-js/process PluginTrigger an SAP Build Process Automation Workflow from CAP Using the @cap-js/process PluginA step-by-step setup for starting a Build Process Automation workflow from CAP through the plugin rather than through direct REST calls, which is how it had to be done before. Covers both ends: deploying the process in the SBPA designer and finding the workflow instance id it produces, then wiring the CAP side to it. Written against the first beta, released 26 April 2026, so the shape is settled but the surface may not be.Jacky Liu, published 2026-07-02
DocumentationSAP and community
How I Use AI for Development and Why Context MattersHow I Use AI for Development and Why Context MattersPart one of the AI ABAP development series traces a move from pasting ChatGPT output and error messages back and forth to tools that search, read docs and inspect files themselves, and holds that the context around a model decides more in real projects than benchmark results do. In SAP work the grounding comes from mcp-sap-docs, which brings SAP Help, GitHub repositories, style guides and DSAG guidelines into the session, and context for changing a class also means the tables it uses, the classes it calls and similar implementations. Agentic autonomy is a slider set per project, with the time saved on typing moved into planning and review, and the post stops before ABAP: SAP's MCP servers for UI5, CAP and Fiori (@ui5/mcp-server, @cap-js/mcp-server, @sap-ux/fiori-mcp-server) sit in off-stack work that git and pipelines already gate, and the harder ABAP case is left to the next part.published 2026-04-20
Reference appsCommunity only
From Concept to action: Hands-On with the CAP Operator and the Partner Reference ApplicationFrom Concept to action: Hands-On with the CAP Operator and the Partner Reference ApplicationThe CAP Operator applied to a real application rather than a sample of its own — SAP's Partner Reference Application, taken from plugin integration through containerisation to custom resources. The transition to CRDs is the part that repays attention: it is where the deployment stops being an mta and becomes Kubernetes.ChristianWeiss, published 2026-05-21
Under no capability
Building an Enterprise-Ready SAP AI Agent with Open SourceBuilding an Enterprise-Ready SAP AI Agent with Open SourceA self-hosted chat agent for SAP systems: LibreChat as UI and orchestrator with Entra ID sign-in and SharePoint connected, a local LLM through Ollama, and two MCP servers, mcp-sap-docs for public documentation and the ADT MCP server vibing-steampunk for the system itself. The ADT server runs in its read-only mode under a technical user with display authorisations only, so the agent can find a function module and pull its source, or locate a RAP business object with its behaviour definition and projection view, but cannot change anything. Two workflows show it, explaining what BAPI_DISPUTE_CREATE does in one system and planning a RAP action from a PDF specification, where the generated ABAP is copied into Eclipse by hand; the full setup is in the marianfoo/llm-client-sap-system-integration-sharepoint repository.published 2026-03-03
CAP Heaven? Not Yet — But You Can See It from HereCAP Heaven? Not Yet — But You Can See It from HereAn assessment from someone with Java, Azure and AWS behind them as well as ABAP and Fiori, which is a rarer vantage point than it sounds. The title is the verdict.published 2026-02-07
CAP, RAP, or Both: Stop Hiding Behind 'It Depends'CAP, RAP, or Both: Stop Hiding Behind 'It Depends'Opens by refusing the answer every other post on this gives — "both are complementary, choose based on context" — and then commits to a framework, including the parts usually left out: the staffing bias behind the decision, and what to do about a landscape with thousands of Z-objects. Argument, not tutorial.published 2026-04-09
Federating, Replicating, and Caching Remote Data in CAP — Part 2Federating, Replicating, and Caching Remote Data in CAP — Part 2The practical half of the pair. Where Part 1 sets out the terminology, what CAP does out of the box and where the gaps are, this one builds a small application that federates, replicates and caches remote data, one step at a time, with the finished project published as sales-cockpit so a reader can either follow along or start from the end. It began as a twenty-minute reCAP talk, which the author says was only room for the intro.published 2026-07-17
Finally: An MCP Server for ABAPFinally: An MCP Server for ABAPAnnounces the ABAP variant of mcp-sap-docs, published at mcp-abap.marianzeis.de for GitHub Copilot's Agent Mode in ADT for Eclipse, which the post names as the trigger, with ABAP knowledge still a recurring problem in the models. Documentation irrelevant to ABAP was removed from the SAP docs server and the ABAP Keyword Documentation, the DSAG ABAP Development Guidelines and the ABAP Style Guide were added, with search reaching past the local index to SAP Community posts and SAP Help. Copilot in Eclipse is where the post puts the weight, because SAP Joule for Developers, ABAP AI capabilities in Eclipse is not available for S/4HANA on-premise systems; an update of 2026-02-05 adds Software Heroes as an online source and an abap_feature_matrix tool that checks feature availability across releases and ABAP Cloud, and the server runs hosted or locally with Node or Docker.published 2026-02-04
What's new in SAP Cloud Application Programming Model – January 2026What's new in SAP Cloud Application Programming Model – January 2026December and January together: the new @assert feature, revised documentation, CDS editor work, and Kyma deployment additions.published 2026-02-09