SAP RAP: Managed vs Unmanaged Scenarios Explained
Understand the difference between managed and unmanaged RAP business objects, when to use each, and how persistence, buffering, and draft handling differ between them.
Published June 20, 2026
Advertisement
SAP RAP: Managed vs Unmanaged Scenarios Explained
The first decision every RAP (RESTful ABAP Programming) project has to make is: managed or unmanaged? Get it wrong and you'll be fighting the framework for the rest of the project.
Managed Scenario
In a managed RAP business object, the framework handles persistence for you. You define a behavior definition and the standard operations (create, update, delete) are implemented automatically against the underlying CDS view's table.
managed implementation in class zbp_i_travel unique;
strict(2);
define behavior for zi_travel alias travel
persistent table ztravel
lock master
authorization master(instance)
{
create;
update;
delete;
field ( readonly ) travel_id;
mapping for ztravel corresponding;
}
You only implement the parts that need custom logic β validations, determinations, actions. The framework writes the actual database INSERT/UPDATE/DELETE.
Unmanaged Scenario
In an unmanaged business object, you implement every operation, including the actual database save. This is the right fit when:
- The persistence isn't a single table (custom logic combining multiple sources).
- You're wrapping an existing BAPI or function module instead of a database table directly.
- You need full control over the save sequence for legacy integration reasons.
unmanaged implementation in class zbp_i_travel_um unique;
strict(2);
define behavior for zi_travel_um alias travel
lock master
authorization master(instance)
{
create;
update;
delete;
}
Here, your behavior pool implements create, update, delete, and crucially save_modified, where you write the actual persistence logic yourself.
Which One Should You Pick?
| Criteria | Managed | Unmanaged |
|---|---|---|
| Simple CRUD on a Z-table | β Best fit | Overkill |
| Wrapping an existing BAPI | β Awkward | β Best fit |
| Draft handling (Fiori Elements) | β Built-in support | Manual, error-prone |
| Learning curve | Lower | Higher |
For new development on S/4HANA Cloud (ABAP Cloud), managed is the default recommendation β SAP's own guidelines steer you there unless you have a concrete reason not to. Unmanaged mostly shows up when RAP-wrapping legacy on-premise logic during a migration.
Use our RAP Quick Reference to check the exact syntax for behavior definitions, determinations, and validations as you build either scenario, and the CDS View Generator to scaffold the underlying data model first.
Topics: