@rizing/cds-extension
A CAP extension, CDSX, that puts a draft-capable facade in front of an OData service imported into CAP, so Fiori elements can edit records that live in another system as drafts.
An OData service imported into a CAP project with cds import answers CRUD and nothing else, so a Fiori elements application projected onto it has no draft handlingDraft handlingLetting a user edit a record over several requests before it becomes real — saving unfinished changes, locking, and activating a completed draft.SAP and community, narrow by design to bind to. CDSX supplies one: a shadow persistence entity declared in db/schema.cds mirrors the remote properties, @cdsx.api names the imported service on it, and the projection over it is marked @odata.draft.enabled, with the mirrored properties never written to the CAP table and only a property carrying @cdsx.extension persisted — an annotation the README marks experimental. Its own annotations cover what a remote service makes awkward from a draft: @cdsx.object.key generates a temporary value for a semantic key on draft creation, @cdsx.item.key numbers items from one, and @cdsx.datetime.persistency splits a timestamp into the separate date and time fields an ABAP stack persists. It is loaded by hand from cds.on('bootstrap') in server.js rather than through CAP's plugin mechanism, and its documentation states it is not intended to be used in conjunction with @sap/cds-odata-v2-adapter-proxy.
Facts
Where it sits
Who is behind it
Before choosing this
Conditions
LicenceSAP Developer License Agreement 3.2 CAP§ 1, 2, 3A cds-plugin is used with SAP CAP materials, or an artifact is explicitly identified as a CAP plugin or application.
- § 1 License. Productive customer applications are limited to SAP BTP or another SAP-licensed platform, and mass extraction to a non-SAP product is restricted except where solely required for SAP interoperability.
- § 2 Intellectual Property. The agreement retains SAP's rights in the covered materials and limits making APIs, tools or software available to third parties, while preserving ownership of customer applications subject to SAP's underlying rights.
- § 3 Artificial Intelligence Training. The agreement prohibits use of the covered materials and customer applications for training artificial-intelligence models or systems.
What it declares
Every artifact
- Type
- CDS plugin
- Origin
- By a partner
- Runtime
- Node.js
As a CDS plugin
- Distributed through
- npm
Connections
Editing a record over several requests before it becomes real
SAP's ERP suite, run on-premise or as a private cloud edition, with its business data and processes reached over OData, RFC and the ABAP platform. For the things here it is the system a tool reads from or writes to. The public cloud edition is its own entry.
CAP Node.js runtime
Download
Install
npm add @rizing/cds-extensionDerived from the package name. No recipe recorded; the README has the configuration.
Learn more
- Keep the Core Clean with Rizing CDSXKeep the Core Clean with Rizing CDSXJhodel Cailan recounts hitting a wall where neither RAP nor CAP supported more than a non-draft OData V2 service for the side-by-side extensibility scenario he wanted, and built Rizing CDSX (@rizing/cds-extension) to add draft handling over a shadow persistence entity that mirrors a remote, cds import-ed service. He walks through the @cdsx.api annotation that proxies the entity, bootstrapping the module from cds.on('bootstrap') in server.js, and testing the result through a generated Fiori elements app backed by an OData V4 draft service.published 2023-05-07Jhodel Cailan, SAP Community
Where it sits in your app
Download
README
quoted from @rizing/cds-extension@0.7.63, readRizing CDSX
History
v0.7.63
v0.7.62
v0.7.61
v0.7.60
v0.7.59
v0.7.58
v0.7.57
v0.7.56
v0.7.55
v0.7.54
v0.7.53
v0.7.52
v0.7.51
v0.7.50
v0.7.49
v0.7.48
v0.7.47
v0.7.46
v0.7.45
v0.7.44
v0.7.43
v0.7.42
v0.7.41
v0.7.40
v0.7.39
v0.7.38
v0.7.37
v0.7.36
v0.7.35
v0.7.34
v0.7.33
v0.7.32
v0.7.31
v0.7.30
v0.7.29
v0.7.28
v0.7.27
v0.7.26
v0.7.25
v0.7.24
v0.7.23
v0.7.22
v0.7.21
v0.7.20
v0.7.19
v0.7.18
v0.7.17
v0.7.16
v0.7.15
v0.7.14
v0.7.13
v0.7.12
v0.7.11
v0.7.10
v0.7.9
v0.7.8
v0.7.7
v0.7.6
v0.7.5
v0.7.4
v0.7.3
v0.7.2
v0.7.1
v0.7.0
v0.6.5
v0.6.4
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
v0.4.0
v0.3.0
v0.2.0
v0.1.27
v0.1.26
v0.1.25
v0.1.24
v0.1.23
v0.1.22
v0.1.21
v0.1.20
v0.1.19
v0.1.18
v0.1.17
v0.1.16
v0.1.15
v0.1.14
v0.1.13
v0.1.9
v0.1.8
v0.1.7
v0.1.6
v0.1.5
v0.1.4
v0.1.3
v0.1.2
v0.1.1
v0.1.0
Others providing
Compare all 6 on the Draft handling page →- com.sap.cds:cds-services-bomcom.sap.cds:cds-services-bomThe Maven bill of materials for CAP Java, pinning every com.sap.cds module in a release, from the API and core runtime to the Spring Boot starters and the CQN engine, to the same version.sap official, capMaven bill of materials pinning CAP Java module versions
- cap-handler-frameworkcap-handler-frameworkConvention-based handler layer for CAP: methods named beforeCreate, onRead or afterUpdate are mapped automatically, with the draft lifecycle given its own explicit hooks rather than folded into the active-entity ones.independent, capConvention-based handler layer for CAP with draft lifecycle hooks
- @sap/cds-fiori@sap/cds-fioriFiori draft handling and UI-facing behaviour for CAP services.sap official, capFiori draft handling and UI-facing behaviour for CAP services
- @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, capCAP Node.js runtime
- cap-collaborative-draftcap-collaborative-draftA cds-plugin that gives a CAP Node.js service the OData contract, tables and handlers Fiori elements needs for collaborative draft, so a second user joins an open draft instead of meeting HTTP 423.independent, capCollaborative draft support for CAP Node.js services
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
History in the atlas
- First seen.
For your agent
- Ref
artifact:rizing-cds-extension- JSON
- /artifacts/rizing-cds-extension.json
- MCP
- Connecting an agent