NewSAP Cloud Application Programming Model
In the last 30 days
64 changes
Today
My CAP Projects ToolboxpublishedA working inventory of daily CAP tooling: scaffolding a project with cds init and growing it facet by facet through cds add (TypeScript, seed data, an .http test file, a handler stub), then running it with cds watch and setting a breakpoint in a custom handler from SAP Business Application StudioSAP Business Application StudioSAP's development environment for business applications, delivered as a cloud service and opened in a browser, where work happens in preconfigured dev spaces.sap official, btp's JavaScript Debug Terminal. It also walks through an @open entity that accepts properties the model never declared, and reading temporal dataTemporal dataKeeping every version of a record that was valid for a period, and reading the one that held at a given moment — the assignment somebody had on the first of March, not the one they have now — without the application filtering time slices by hand.SAP only defined with CAP's temporal aspect, where a plain read returns only what is valid now and a custom handler is needed to retrieve every time slice.Generators
Mon 19
DRY CAP – Making Sustainable Solutions Through PluginspublishedA Devtoberfest 2026 building-apps session on packaging the things you would otherwise write twice, from in-house API clients and shared data models to validation logic, as a CAP plugin. The presenter builds one live: a cds-plugin.js next to package.json is what makes CAP notice the plugin at all, an index.cds carries a reusable user context and service that the consuming application projects into its own and protects there, and the plugin registers an Express middleware at a chosen step of the bootstrap to put user properties on the request. A feature-flagging plugin his team already uses closes it, and the whole walkthrough is the edge to Plugin authoringPlugin authoringWriting a package that extends a framework or runtime rather than an application that uses it — a reusable extension loaded by its host, and the question you arrive at once solving a problem twice makes you want to solve it once for everyone.SAP only.Plugin authoring
Sat 17
A Fiori Launchpad Sandbox for all your CAP-based projects - Overviewexplains 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).Testing
A Fiori Launchpad Sandbox for all your CAP-based projects – Sample project setupexplains 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).Testing
A modern workflow for SAP Cloud Integration with CAP and Azure DevOpsexplains 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).Workflow integration
Add useful Extensions to Dev spaces 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).Editor support
Show 54 more
AI-enabled administration: Automating log analysis with generative AI hubexplains 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).Editor support
An introduction to CDS Graphical Modeler for 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).Editor support
Automate your Job Postings Using Generative AI (ChatGPT) & SAP Build Process Automation Appsexplains 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).Workflow integration
Avoid design time CAP server restarts when maintaining local data filesexplains 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).Local development
Avoiding Data Loss When Loading Initial Data with CSV Files in CAPexplains 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).Seed data
CAP full-stack testing with BDD flavourexplains 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).Testing
CAP Initializr: Generate SAP CAP Projects in Secondsexplains 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).Generators
CAP Typescript + Fiori Typescript + live reload Initial app setupexplains 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).TypeScript patterns
CAP with Local App Previews – Tips for Smooth Developmentexplains 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).Local development
CAP: Unit Testing using Mocha and Chaiexplains 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).Testing
cds-launchpad-plugin supercharged & ready for the future - CAP Plugin, UI5 Tooling support & Async Launchpadexplains 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).Testing
cf-create-app: Create End-to-End apps and deploy to Cloud Foundry in minutesexplains 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).Generators
Create a Simple CAP Application and Explore the Defaultsexplains 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).Local development
Create Automated System Tests for SAP Cloud Application Programming Model Projectsexplains 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).Testing
Creating a Hybrid CAP (Node.js) Profile with PostgreSQL on BTP from 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).Local development
Creating new services using the CDS Graphical Modeler for 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).Editor support
Creating structured types, enums and named aspects using the CDS Graphical Modelerexplains 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).Editor support
debug a CAP app with UI5 TypeScript UI component with VS 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).Debugging
Develop CAP Project with Lazyvim in Dockerexplains 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).Editor support
Develop SAP CAP apps inside a VS Code Docker Containerexplains 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).Local development
Developing CAP 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).Editor support
Enhancing Unit Testing in SAP CAP Java Applications with GitHub Copilotexplains 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).Testing
Full Stack TypeScript App for Cloud Foundry - Sample Repositoryexplains 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).TypeScript patterns
Get an introduction to the cds REPLexplains 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).Local development
Get familiar with your first CAPM project using CDS graphic modelerexplains 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).Editor support
Get Started with an SAP Cloud Application Programming Model Project in SAP Continuous Integration and Deliveryexplains 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).CI/CD pipelines
Getting Started with Unit Testing in SAP CAP Java 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).Testing
Handling CSV Data Deployment in CAP HDI Without Data Lossexplains 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).Seed data
How to fix npm error notarget @sap/hdi-deploy when you create a CAP app in BASexplains 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).Local development
Importing @sap/cds common.cds to your CAP project using the CDS Graphical Modelerexplains 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).Editor support
Integration Tests in a Cloud Foundry Java App 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).Testing
Introducing eslint-plugin-better-cap-config an ESLint plugin to improve CAP configurationexplains 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).Linting
ISO content for common CAP typesexplains 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).Seed data
Making CAP Application Development Easier and Faster with the Help of Storyboard 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).Editor support
Migrating Your CAP Applications from SAP Web IDE to 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).Editor support
Part 1: How to create CAPM project in BASexplains 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).Generators
Prompt-Driven Development: Building Full-Stack SAP CAP Apps from User Storiesexplains 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).Generators
Remote Debugging of SAP CAPM App - Nodejsexplains 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).Local development
Running CAP Node 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).Editor support
SAP AI Services - DOX - Gen AI with SAP CAP Plugin - 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).Plugin authoring
SAP BTP Showcase – SAP Continuous Integration and Delivery (SAP CI&D) for SAP HANA 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).CI/CD pipelines
SAP Build Process Automation – Use Principal Propagation in Actions sample: CAP 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).Workflow integration
SAP CAP: Best VSCode extensions for TypeScript development (UI5 & NodeJS)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).Editor support
SAP Cloud Application Programming Model(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).Local development
Set up a self-contained development environment for CAP 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).Local development
Set up VS Code on Chrome OS for local Application Programming Model developmentexplains 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).Local development
Storyboard for cloud business applications using CAP 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).Editor support
Streamlining CAP Development with CDS Graphical Modeler 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).Editor support
Surviving and Thriving with the SAP Cloud Application Programming Model: Local development hurdlesexplains 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).Local development
Testing your CAP HANA Artifacts with jest – including multitenancy, hdbprocedure and hdbviewexplains 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).Testing
Tips and Tricks for Working with Annotations in CAP Projects using Language Server Protocol (LSP) capabilitiesexplains 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).Editor support
Triggering SAP Build Process Automation Processes from SAP Cloud Application Programming (CAP) Appsexplains 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).Workflow integration
Use Tasks in Visual Studio Code to start a cds service, an approuter and launch a browser in one goexplains 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).Local development
加速开发和部署的CAP CDS和Fiori一些实用命令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).Generators
Sun 11
AI needs a foundation: A map of the plug-in ecosystem for CAPpublishedA map of the plug-ins for CAP (@sap/cds@sap/cdsThe CAP Node.js runtime, which compiles the CDS model, serves the services declared in it, answers generic requests before any handler runs, and loads every cds-plugin.sap official, cap), official, community and independent, drawn across regions such as integration, performance and tooling, so that a team can see what exists to reuse and what it would have to build: the question plugin authoringPlugin authoringWriting a package that extends a framework or runtime rather than an application that uses it — a reusable extension loaded by its host, and the question you arrive at once solving a problem twice makes you want to solve it once for everyone.SAP only answers from the other side. SAP's abstract places CAP at the centre of its AI strategy, with model context protocol support, and the map is offered as the foundation under that. A TechEd 2026 session (Tuesday 27 October, Community Theater, Berlin), presented by Mike ZaschkaMike Zaschkamaintains 6 entries, created 12 pieces, contributed to 9 entriesindependent, written here from SAP's abstract; the recording is not yet published.Plugin authoring
AI-enabled administration: Automating log analysis with generative AI hubpublishedA log analysis tool for incident work, built in SAP Business Application StudioSAP Business Application StudioSAP's development environment for business applications, delivered as a cloud service and opened in a browser, where work happens in preconfigured dev spaces.sap official, btp with the generative AI hub feature, which SAP AI CoreSAP AI CoreSAP's AI service on BTP: the runtime for AI assets, and through the Generative AI Hub inside it the access to foundation models, the orchestration service with its templating, masking, filtering and grounding modules, the Prompt Registry and Document Grounding.sap official, btp ships as its LLM integrationLLM integrationCalling a language model from application code with the tenant, destination and credential handling already solved instead using an SDK call with a hand-rolled key.SAP and community, narrow by design by its own documentation: it automates root-cause analysis over system errors and masks sensitive data. SAP's abstract states the tool's jobs and not how the hub is called, what the masking covers or which model answers. A TechEd 2026 session (Wednesday 28 October, Berlin), with no speaker listed in the catalogue at the time of writing, written here from SAP's abstract; the recording is not yet published.Editor support
Mon 28
How to build reusable plugin components for CAP Java applicationspublishedA companion to Daniel SchlachterDaniel Schlachtercreated 9 pieces, contributed to 10 entriessap official's Reusable components for CAP with cds-pluginReusable components for CAP with cds-pluginThe post that taught the mechanism, and it teaches it by picking a requirement small enough to be absurd: every string a service returns should end in a random emoji. Working through that on the bookshop example leaves nothing to argue about except the plumbing, which is the point — what a cds-plugin is, where it hooks in, and why packaging it beats copying it into the next project. Vinícius Barrionuevo credits this post as the thing that gave him the idea for sap-cap-sdm-plugin, and it is hard to read the plugin ecosystem in this graph without it.published 2023-04-30, showing the same mechanism on CAP Java: a plugin ships as its own Maven artifact with an event handler and a
CdsRuntimeConfiguration implementation, registered through the JDK's ServiceLoader rather than any CAP-specific wiring. The walkthrough builds a cds-emoji-plugin-java jar that decorates @emoji-annotated fields on read, installs it to the local Maven repository, and adds it as a runtime dependency to a cds init --add java bookshop application. It argues the plugin mechanism was not new to CAP Java, just previously undocumented.Plugin authoringSAP Cloud Application Programming Model(CAP):概要およびデモ - Part 1publishedIntroduces SAP Cloud Application Programming Model@sap/cdsThe CAP Node.js runtime, which compiles the CDS model, serves the services declared in it, answers generic requests before any handler runs, and loads every cds-plugin.sap official, cap as an open, opinionated framework that shoulders OData plumbing and database-specific code so a domain is modelled once in CDS, then builds a small bookshop project to show it: @sap/cds-dk@sap/cds-dkThe command line client and development toolkit for CAP projects, with the commands cds build, cds deploy, cds watch and cds add among them.sap official, cap's
cds init scaffolds the project, cds watch serves it locally with live reload against an in-memory SQLiteSQLiteAn embedded SQL database engine used as a selectable local cache store by CAP caching plugins. database, and a CatalogService projects a CDS domain model seeded from CSV files. The result is read as an ODataODataExposing data and operations through OData, including the service model, metadata and protocol versions clients require. Version differences affect which clients can consume a service and which query features they can use.SAP and community, narrow by design service in the browser and exercised further through a Postman collection, with the optional @sap/vscode-cds@sap/vscode-cdsSAP CDS language support for Visual Studio Code and Business Application Studio, published as an npm library.sap official, cap extension noted for CDS syntax highlighting and completion in VS Code.Local development