Features Overview
Following is an index of the features currently covered by CAP, with status and availability information. In addition, we also list features, which are planned or already in development, but not yet generally available, to give you an idea about our roadmap.
[Legend]
Tag |
Explanation |
✔ |
generally and publicly available today |
n/a |
not applicable for this combination |
in prog. |
in progress; likely to become available near-term |
planned |
we might pick that up for development soon |
contrib? |
not scheduled for development by us so far |
Run cds help <command>
to find details about an individual command. Use cds version
to check the version that you’ve installed. To know what is the latest version, see the Release Notes for CAP.
Editors/IDE Support |
Application Studio |
VSCode |
Eclipse |
CDS Syntax Highlighting |
✔ |
✔ |
✔ |
CDS Code Completion |
✔ |
✔ |
✔ |
CDS Prettyfier |
✔ |
✔ |
✔ |
Advanced Debug/Run Tools |
✔ |
|
|
Project Explorer |
✔ |
|
|
… |
|
|
|
CDS Language & Compiler
Providing Services
Inbound Protocol Support |
CDS 1 |
Node.js |
Java |
REST / OpenAPI |
in prog. |
✔ |
✔ |
OData V2 |
✔ |
✔2 |
✔ |
OData V4 |
✔ |
✔ |
✔ |
OData V4 for APIs |
in prog. |
in prog. |
in prog. |
GraphQL3 |
contrib? |
contrib? |
contrib? 4 |
1 Export CDS models to …
2 Through V2 proxy; only to support customers with existing V2 UIs
3 Could be a good case for 3rd-party contribution
4 For Java try out the provided sample code.
Consuming Services
Service Consumption APIs |
Node.js |
Java |
Uniform Consumption APIs → Hexagonal Architecture |
✔ |
✔ |
Dynamic Querying |
✔ |
✔ |
Programmatic Delegation |
✔ |
✔ |
Generic Delegation |
planned |
planned |
Resilience (retry, circuit breaking, …) |
in prog. |
✔ |
Using SAP Cloud SDK behind the scenes
Outbound Protocol Support |
CDS 1 |
Node.js |
Java |
REST / OpenAPI |
planned |
✔ |
✔ |
OData V2 |
✔ |
✔ |
in prog. |
OData V4 |
✔ |
✔ |
in prog. |
GraphQL2 |
contrib? |
contrib? |
contrib? 3 |
1 Import API to CSN
2 Could be a good case for 3rd-party contribution
3 For Java try out the provided sample code.
Events / Messaging
|
CDS |
Node.js |
Java |
|
Declared Events in CDS |
✔ |
in prog. |
in prog. |
|
Mock Broker to speed up local dev |
n/a |
in prog. |
in prog. |
|
SAP Enterprise Messaging] (Singletenancy) |
n/a |
in prog. |
✔ |
|
SAP Enterprise Messaging (Multitenancy) |
n/a |
in prog. |
in prog. |
|
Event Logs (Kafka) |
n/a |
planned |
planned |
|
Import AsyncAPI |
planned |
|
|
|
Export AsyncAPI |
planned |
|
|
|
Database Support
|
CDS/deploy |
Node.js |
Java |
SAP HANA out of the box |
✔ |
✔ |
✔ |
SAP HANA Cloud |
✔ |
✔ |
✔ |
SQLite out of the box 1 |
✔ |
✔ |
✔ |
MongoDB out of the box |
n/a |
planned |
in prog. |
Pluggable drivers architecture |
in prog. |
in prog. |
in prog. |
Out-of-the-box support for other DBs? |
contrib? |
contrib? 2 |
contrib? |
1 To speed up development. Not for productive use!
2 For Node.js, see the community project cds-pg - PostgreSQL adapter for SAP CDS.
You can already integrate your database of choice in a project or a contribution level. The last two are meant to further facilitate this by out-of-the-box features in CAP.
UIs/Frontend Support
1 through standard REST/AJAX
1 Available on plain Kubernetes level → see blog post by Thomas Jung
2 Available on Kyma level → see blog post by Uwe Klinger