What’s new in SAP Cloud Application Programming Model | SAP TechEd 2023 Edition

Introduction

A lot has happened since our TechEd ’22 blog post one year ago. The SAP Cloud Application Programming Model (CAP) continues to grow feature-wise and in its strategic relevance and adoption. It is prominently positioned as the go-to programming approach for JavaScript / TypeScript and Java development projects on SAP Business Technology Platform (BTP).

The announcements at TechEd 2023 underline this: CAP has become even more important to the SAP Business Technology Platform (BTP): It is a central part of the SAP BTP Development Guideline and an implicit part of the new SAP Build Code offering.

This blog post summarizes the main updates of CAP around TechEd 2023 and links to more detailed information.

CAP-level Service Integration for SAP BTP

In recent months, the CAP team invested in a seamless integration with additional SAP BTP services on CAP level, controlled by annotations (aka project “Calesi”). This has been done in close collaboration with the SAP BTP services teams. The new plugins are contributed as Open Source whenever possible. All integrations are showcased in the new sample application Incident Management. The CAP-level service interfaces drastically reduce the required lines of code, enabling fast integration and local mocking capabilities. CAP’s abstraction of the SAP BTP services into a declarative model eliminates boilerplate code, reduces technical debt, and future-proofs your solutions.

The following services integrations are being released around the TechEd timeframe:

Audit Logging (Docs on Capire)

”Provides integration to the SAP Audit Log service and out-of-the-box personal data-related audit logging based on annotations.”

Change Tracking (re>≡CAP recording)

Provides out-of-the box support for automatic capturing, storing, and viewing of the change records of modelled entities

Notifications

”Provides integration to the SAP Alert Notification Service to publish Business Notifications”

Single-tenant is released for TechEd, multi-tenancy support will follow later

 

 

Attachments

“Provides out-of-the box asset handling via simple type imports for images, documents, and attachments. It also provides a CAP-level, easy to use integration of the Document Service / Object Store (incl. malware scanning).”

The attachment service integration will be released shortly after TechEd.

 

 

These new CAP service integration plugins extend the list of already existing plugins and enhancements for CAP: see this list for a complete picture. It includes prominent examples like the OData V2 proxy adapter, the GraphQL adapter, and many more. More SAP BTP services will be integrated soon, so stay tuned…

CAP in SAP BTP Developer’s Guide

CAP is a centerpiece of the SAP BTP Developer Guideline for JavaScript/TypeScript and Java development. The goal of the SAP BTP Developer’s Guide is to help you implement business applications on SAP BTP. The guide explains the building blocks for developing, delivering, and integrating business applications and outlines best practices.

Find more details incl. links to several CAP tutorials here.

SAP Build Code

At TechEd 2023 a new offering for app development on SAP BTP was launched (for early adopters): SAP Build Code. It includes all the services required to follow the best practices of SAP BTP and delivers a  development environment optimized for JavaScript/TypeScript, Java, CAP, and SAP UI5 developers.

Development tools designed for CAP leverage the programming model’s capabilities, SAP BTP service integrations, and cloud qualities for easy back-end creation. CAP simplifies the definition of data models and services in SAP Build Code, using CDS (Core Data Services) for entity-relationship model creation and making it possible to expose data models as OData services.

Find more information here.

CAP supporting App Development with Generative AI

Generative AI is a driving force behind SAP Build Code. You can generate CAP application code with Joule – SAP’s generative AI copilot. Based on a natural language description, you can generate data models (including service projections and UI annotations for SAP Fiori Elements List Report and Object Page) as well as realistic sample data for testing. The AI copilot is exclusively available in the development environment of SAP Business Application Studio delivered with the new SAP Build Code offering.

The possibility to generate CAP/CDS models further enhances one of the benefits when developing projects with CAP: a very fast jumpstart and short time to get a first running version of your application.

New Database Service for CAP Node.js (CAP Node.js 7)

We released new database services for SQLite and PostgreSQL which are based on an entirely new database service architecture and offer a rich set of features. The new database layer comes along with a revamped database guide.

See the re>≡CAP recording for more details and a demo.

Lean Draft

The draft handling for SAP Fiori Elements was improved drastically and based on a new design: All draft sibling entities are now fully compliant CSN entities which allows a clear separation of drafts and active elements. In addition, it also provides a better performance. More information in Capire.

Since September the Lean Draft concept was also taken over in CAP Java (see docu).

CAP Java 2.0

For the first time the CAP Java runtime introduced a new major version with significant improvements: It runs with SpringBoot 3 which brings a number of great benefits, e.g. the support for native Java executables (with GraalVM) that can be deployed as Docker images to the Cloud. With CAP Java 2 significant performance improvements have been achieved, accelerating standard OData requests by up to a factor of 10. CAP Java also provides out-of-the-box integration of PostgreSQL.

Find a step-by-step instruction to upgrade in the migration guide.

Improved TypeScript Support

In addition to CDS Typer, which provides typed access to CDS models, we made further improvements to better support TypeScript in CAP projects: Our got further fixes and improvements. We are happy to share that they will be made open source after TechEd. `cds-ts` is there for on-the-fly TS transpilation, allowing fast development turnarounds. In collaboration with the UI5 team we were able to seamlessly integrate the UI5 tooling and the CDS server using the new `cds-ui5-plugin`.

Open Sourcing CAP

Together with the release of the GraphQL adapter we rolled-out CAP’s Open Source strategy at TechEd 22: We gradually open source CAP starting with Node.js and focus on peripheral components like database services, protocol adapters, tools, and the like. In 2023 this strategy has been continued and partly accelerated. Whenever the CAP team releases a new Node.js component (or invests in bigger optimizations), Open Source is the way to go.

This led to the release of numerous new components in the recent year, both from the CAP team as well as from the internal and external CAP community. Prominent examples include Capire (the CAP docu) and the already mentioned new Node.js database layer. Also, the various BTP service integration plugins for Node.js have been open sourced from the beginning.

We are particularly pleased that the number of Open Source modules from outside the CAP team have increased strongly.


Open Source Timeline (*components to be released)

 

Check-out the Open Sourcing CAP webinar recording (recorded in October 2023) which gives an overview about the recent Open Source additions and two deep-dives (PostgreSQL support for CAP Node.js, Feature Toggles).

re>≡CAP 2023

Aside from TechEd, our biggest event this year has been re>≡CAP: “THE CAP developer (un-) conference”. It took place on July 7th and was held as as the first onsite version of re>≡CAP reaching a new scale with over 50 sessions and 70 speakers across six tracks.

Find the agenda, event impressions and most importantly – all session recordings here.

CAP related Sessions @TechEd 2023

Further Information

Scroll to Top