SampleSampletypeA worked example you read or clone. Evidence: it demonstrates, it never provides.See every one →What this type is →by SAPby SAPoriginPublished by SAP itself. A visible facet, never an input to a reading — a dormant official plugin reads exactly like a dormant independent one.See every one →Starting point

SAP-samples/teched2025-DT261

A TechEd 2025 workshop that extends an SAP-delivered RAP business object with validations, a new field and a custom action, without touching the original.

RAP extensibility lets a consumer add behaviour and data-model elements to a business object its provider has explicitly opened through dedicated extension points, and an extension can only define behaviour for the elements it adds, never override the original. The three exercises extend a pre-generated base business object in that order: determinations, validations and side effects in exercise one, an added CDS field in exercise two, and a custom action on that new field in exercise three, since an action added via extension must follow the field it acts on.

Facts

Last pushLicenceApache-2.0

Where it sits

Lives in
Demonstrates
ExtensibilityABAPExtensibilitycapabilityLetting a customer change delivered behaviour without modifying it — key-user fields and logic, developer extensions, and the released extension points that make either safe across an upgrade.
Flavors

Who is behind it

SAP SamplesSAP SamplesOrganisationMaintains this
In the atlas: maintains 222
@SAP-samples
maintainerAjay SorengPersonContributes to this
In the atlas: contributes to 36
@ajaysoreng
Ajinkya PatilPersonContributes to this
In the atlas: contributes to 112
@ajinkyapatil8190
Andre FischerPersonContributes to this
In the atlas: contributes to 19, wrote 5
@anfisc
Carine Tchoutouo DjomoPersonContributes to this
In the atlas: contributes to 17, wrote 1
@CarineTD
Ingo BräuningerPersonContributes to this
In the atlas: contributes to 5
@ibraeuninger
Volker DreesPersonContributes to this
In the atlas: contributes to 9
@VolkerDrees
6 contributors

What it declares

Every artifact

Type
Sample
Origin
By SAP

As a sample

Form
Workshop or CodeJam material

Connections1

SAP-samples/teched2025-DT261 connectionsSAP-samples/teched2025-DT261PROVIDES→ demonstrates1demonstrates authoredExtensibility

README

quoted from SAP-samples/teched2025-DT261 under Apache-2.0, read
SAP-samples/teched2025-DT261/README.mdOn GitHub

REUSE status

TechEd2025 - DT261 - Build on-stack extensions with ABAP Cloud in SAP Cloud ERP

💬Session Overview

This repository contains the material for the SAP TechEd 2025 session DT261 - Build on-stack extensions with ABAP Cloud in SAP Cloud ERP.

It gives you an overview of the RAP extensibility architecture, extension development artifacts and available extensibility features.

Developer extensibility as defined by SAP basically encompasses two main activities:

  1. Develop custom code to implement your own business logic.

    → Here you can make use of existing API's from SAP that have been released for that purpose.

  2. Extend an existing RAP Business Object so that additional business functionality is added.

    → Such an extensible RAP business object will usually reside in another software components or it is an existing extensible RAP BO that has been delivered by SAP or a SAP partner. By extending the functionality of an existing RAP Business object its functionality can be adapted to your specific business requirements.

🗺️ SAP S/4HANA Cloud extensibility patterns

S4 HANA Cloud Extensibility Options

🗺️ Today‘s focus: On-stack developer extensibility options

Today's Focus

🗺️ ABAP RESTful Application Programming Model - Extensibility Overview

Extensibility in RAP (ABAP RESTful Application Programming Model) empowers application consumers to tailor existing applications to meet specific business requirements and processes through RAP extensions. These extensibility features are built with lifecycle stability in mind and ensure a clear separation of concerns between the original business object (BO) and its extensions. Each extension is self-contained and consistently managed by RAP, regardless of whether the BO is managed or unmanaged. By default, a RAP BO is not extensible. To enable extensibility, the original BO provider must explicitly allow it by defining dedicated extension points. These points can be finely controlled, giving precise authority over which parts of the BO can be extended and what types of extensions are permitted.

Once extensibility is enabled, extension providers can enhance the original BO by adding various types of extensions to its data model and behavior. However, they are restricted to only those extension types that the original BO has been configured to support. Attempting to define unsupported fields or behaviors will result in syntax errors in the extension BDEF and related data model extension objects.

From the consumer’s perspective, extensions are seamlessly integrated into both the design-time and runtime environments of the BO. Although extensions are self-contained, they function as part of the overall BO. Importantly, extensions can only define behavior for their own elements and operations—they cannot override or modify the behavior of the original BO elements.

For an architecture overview, see Extensibility Architecture Overview

🛠️ Exercises

The main aspect of developer extensibility is the option to extend an extensible RAP business object that has been delivered by SAP or an SAP partner.

Overview--
Exercise: Getting Started: Connect and LogonLogon to your S/4HANA Public Cloud system.
Exercise 1: Extend the behavior of a RAP business object (determinations, validations, side-effects)You will extend the behavior of the base RAP business object that has been already pre-generated by your instructor. You will learn how to extend the behavior of the base RAP BO by validations, determinations and side effects.
Exercise 2: Extend the CDS data model of the extensible RAP base business objectYou will then continue to extend the data model with additional fields
Exercise 3: Extend the business object with an actionYou will continue to extend the behavior of the base RAP business object by adding an action. Since actions can only be added via an extension to fields that have been added itself via an extension, adding an action via an extension must be performed after Exercise 2

ℹ️ Further Information

SAP Help Portal
ABAP RESTful Application Programming ModelThe ABAP RESTful Application Programming Model (in short RAP) defines the architecture for efficient end-to-end development of intrinsically SAP HANA-optimized OData services (such as Fiori apps) in ABAP Cloud.
RAP Extensibility-EnablementExplains the concepts of how to enable a custom RAP BO for extension development.
Develop RAP ExtensionsThis site offers how-to information and implementation examples for extending a ABAP RESTful Application Programming Model (RAP) Business Object.

Let's go to Exercise - Getting Started - Connect and Logon

License

Copyright (c) 2025-2026 SAP SE or an SAP affiliate company and teched2025-DT261 contributors. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file; you may not use any file of this project except in compliance with the License.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the LICENSE for the specific language governing permissions and limitations under the License.

Apache-2.0, read

Details

Sources3
Added by handdiscovered herechecked
github.com/SAP-samples/teched2025-DT261tree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

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
discovered viaAdded by hand
first seen in the atlas
ecosystem and domainabap, operations-and-runtime
Flavors1
ABAP Cloud
“Build on-stack extensions with ABAP Cloud in SAP Cloud ERP” — SAP-samples/teched2025-DT261 — READMEchecked
Contributors6
History in the atlas1
  1. First seen.
For your agent
Ref
artifact:sap-samples-teched2025-dt261
JSON
/artifacts/sap-samples-teched2025-dt261.json
MCP
Connecting an agent