NewSAP Cloud Application Programming Model
In the last 30 days
12 changes
Today
enforce-export-coverageadded to the atlasStatic check that each exported TypeScript function has a testTesting
hana-linteradded to the atlasRegex naming rules for SAP HANA artifacts in a CAP projectLinting
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
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
Thu 8
cap-cds-typeradded to the atlasCAP service in TypeScript using types from @cap-js/cds-typer
cap-github-actionadded to the atlasCAP project built and deployed to Cloud Foundry by GitHub Actions
cap-java-childadded to the atlasConsumer side of a CAP Java parent pom promotion model with Renovate
cap-java-parent-pom-sampleadded to the atlasMaven parent pom pinning cds-services-bom and Spring Boot for CAP Java
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