Change tracking

Keeping a readable history of what changed on a record, who changed it and when — as business history rather than database journalling.

Overview

InCAPassessed
SAP SHIPS
Node.js →

@cap-js/change-tracking Out-of-the-box change history for annotated entities.

Java →

com.sap.cds:cds-feature-change-tracking Records who changed which annotated field on a CDS entity and when, as a queryable change log for CAP Java, covering every modifying CQN statement but not native SQL or JDBC.

Not covered: It stops at personal data: both packages skip elements annotated with @PersonalData, which are subject to audit logging, and the Node.js README gives the reason, that a readable log would let users get around the audit log. On Java, changes made through native SQL, JDBC or a remote service are not tracked, and the retention of the log and the access rules on it are the application's to settle.

SourceCAP Plugins & Enhancementschecked
THE COMMUNITY ADDS

Independent CDS plugins that enable change tracking for OData services, such as cdsmbt01, for projects that load a plugin of their own.

InABAPassessed

On ABAP a record's business history is the change document, recorded through a change document object; abap-platform-reuse-services logs the total amount and overall status of a sales order on a RAP business object and shows the changes in a Fiori elements app.

SAP SHIPS

Change documents: a change document object covers the tables of a business object, fields are logged where their data element has change document logging switched on, and function modules such as CHANGEDOCUMENT_READ_HEADERS and CHANGEDOCUMENT_READ_POSITIONS read the history back with old and new values.

Not covered: At changes: in the sample checked only changes are recorded and not initial values, so a record's history starts at its first edit. An OData V4 Fiori elements app does not use the reuse display library, and the sample reads the change documents through a custom entity instead.

abap-platform-reuse-services is an SAP-samples repository that demonstrates change documents on a RAP business object; a sample is no presence, and core-only rests on SAP's documentation.

THE COMMUNITY ADDS

No community artifact is documented here.

Artifacts3

3 of 3 artifacts
ArtifactSignals
CDS plugins2
@cap-js/change-trackingChange history for annotated CAP entities
Signals
none
cdsmbt01CDS plugin for OData change tracking in CAP applications
Signals
none
Packages1
com.sap.cds:cds-feature-change-trackingChange log of annotated entity fields for CAP Java
Signals
none

Content5

Group by
Piece, what it offers
CAP: The Road Ahead - Simplicity in an AI Era
YouTube — SAP Developers playlists, SAP Developers, Talk
How to Implement SAP Change Document
SAP Community, Subhasree1, Blog
New and improved: Change Tracking plugin
SAP Community, rupamaity, BlogThe reasoningA recipeRunnable code
Version drift
Show 2 more
Open Sourcing CAP – how to learn more or get involved
SAP Community, Fempel, Blog
BTP CAP : Custom plugin to separate generic change log capture logic
SAP Community, sreehari_vpillai, Blog
New and improved: Change Tracking plugin
SAP Community, rupamaity, BlogThe reasoningA recipeRunnable code
Version drift

Seen working1

ArtifactSignals
Samples1
abap-platform-reuse-servicesRAP sales order using number ranges, change documents and Adobe forms
none

Details

Coverage
statecore and community, CAP
assessed
state in ABAPcore only, assessed
relationshipunassessed
also inABAP
SourceCAP Plugins & Enhancementschecked Sourcecap-js/change-tracking — READMEchecked Sourcecap-js/change-tracking — READMEchecked SourceChange Trackingchecked SourceChange Trackingchecked SourceChange Trackingchecked
For your agent
Ref
capability:change-tracking
JSON
/capabilities/change-tracking.json
MCP
Connecting an agent