Capability Manifest: SAP Enterprise RAP
This blueprint provides the procedural truth for building production-grade on-stack extensions using the RESTful ABAP Programming Model.
When to Use
This skill should be used when completing tasks related to sap enterprise rap.
Process
Follow these procedures to build production-grade on-stack extensions:
Procedure 1: Data Modeling for Truth (CDS)
- Strict Layering: Use
I_(Interface) views for data modeling andC_(Consumption) views for UI projection. - Released Successor Check: Never use
MARA,VBAK, etc. Search the API Business Hub for released success (e.g.,I_SalesOrder). - Semantic Annotations: Label every field with
@EndUserText.labeland provide unit/currency bindings.
Procedure 2: Managed Behavior Implementation (BDEF)
- Draft Mandatory: Always use
with draftfor multi-step transactional logic to ensure data integrity. - Strict Mode: Use
strict ( 2 );to enforce modern ABAP Cloud syntax and locking rules. - Determinations & Validations:
- Use
determinationfor side effects (e.g., calculating total price). - Use
validationfor business rules with proper message reporting via%msg.
- Use
Procedure 3: Service Exposure & Binding
- Granular Exposure: Only expose view entities required for the specific business task in the
Service Definition. - OData v4 Preference: Always use OData v4 for new Fiori Elements applications unless backward compatibility is required.
Process (Fail-State & Recovery)
| Symptom | Probable Cause | Recovery Operation |
|---|---|---|
| Short Dump (Locked) | Missing ETag or Total ETag mismatch. | Implement lock master total etag last_changed_at in the BDEF. |
| Draft Activation Fail | Validation error in the draft layer. | Inspect the reported and failed parameters in the behavior pool; provide clear %element mapping for UI highlighting. |
| Syntax Error (Cloud) | Use of non-released APIs or legacy syntax. | Replace with successor components identified via the ADT "Release State" tab. |
Prerequisites
| Action | Tool / Command |
|---|---|
| Create CDS | ADT -> New Data Definition |
| Define Behavior | ADT -> New Behavior Definition |
| Test OData | Fiori Elements Preview / Gateway Client |
| Deploy | MTA / Transport Management |
Best Practices
Before finalizing any RAP object, verify:
- No direct standard table modifications.
- Only released SAP APIs used.
- Mandatory Audit fields (
created_at,last_changed_at) implemented. - Draft handling enabled for transactional entities.