SAP-samples/teched2025-AD164
A TechEd 2025 workshop that rebuilds a classic ALV-based Manage Travels app as a RAP-based SAP Fiori app for developers new to ABAP Cloud, focused on backend development rather than Fiori UI.
Seven core exercises take a classic-ABAP developer through the RAP-based Fiori equivalent of an existing ALV app: the base and projection data models, the OData UI service and its Fiori elements layout, read authorisation checks, quick actions and business events. Three optional exercises then add modify authorisation checks, full transactional enablement (create, update, delete) and the Entity Manipulation Language. The stated focus is backend development, including the OData service's UI semantics, rather than SAP Fiori UI development itself.
Facts
Where it sits
Who is behind it
In the atlas: maintains 222@SAP-samplesmaintainerAjay SorengContributes to this
In the atlas: contributes to 36@ajaysorengCarine Tchoutouo DjomoContributes to this
In the atlas: contributes to 17, wrote 1@CarineTDVolker DreesContributes to this
In the atlas: contributes to 9@VolkerDrees3 contributors
What it declares
Every artifact
- Type
- Sample
- Origin
- By SAP
As a sample
- Form
- Workshop or CodeJam material
Connections
Defining business object behaviour and who owns the transaction
Download
README
quoted from SAP-samples/teched2025-AD164 under Apache-2.0, readAD164 - Get started with ABAP Cloud for classic ABAP developers
Description
This repository contains the material for the SAP TechEd 2025 session AD164 – Get started with ABAP Cloud for classic ABAP developers.
The ABAP Cloud development model (ABAP Cloud) is the development model to build business apps, services, and extensions that follow the clean core principles by default on SAP BTP, SAP S/4HANA Cloud, and SAP S/4HANA as of release 2022. It is an integral part of SAP Build.
In this workshop, you’ll get hands-on experience with ABAP Cloud and grasp how the new concepts work. Building on your knowledge of classic ABAP, you’ll learn how to develop cloud-ready business apps and services. You'll use the ABAP RESTful application programming model (RAP) which is used for building transactional scenarios. Based on a practical scenario, you will rebuild an existing ALV-based app as an a modern SAP Fiori app with RAP, and extend it further with new capabilities.
The business context for the scenario is as follows:
The department responsible for managing worldwide Travels for multiple Agencies is requesting you to build a new SAP Fiori app, Manage Travels, with different capabilities to process travel bookings. More information on the scenario and the app will be given throughout the exercises.
Resulting app:
Click to expand!
Below is an illutrastion of the RAP-based _Manage Travels_ app built with **ABAP Cloud**:🖼️Click to expand!
The OData service you are going to implement is based on the simplified Flight data model below.
🖼️Click to expand!
Note
Please note that the focus of this hands-on workshop is on backend development – specifically, developing OData UI services, including the UI semantics for the SAP Fiori elements UI – rather than on SAP Fiori UI development.
Requirements for attending this workshop
To complete the practical exercises in this repository, you need the latest ABAP Development Tools for Eclipse (ADT) on your laptop or PC, and the access to a suitable ABAP system, namely at least release 2023 of SAP S/4HANA or SAP S/4HANA Cloud Private Edition, SAP BTP ABAP Environment, or SAP S/4HANA Cloud Public Cloud. In addition, the appropriate version of the ABAP Flight Reference Scenario (package /DMO/FLIGHT) must be imported into the system.
If you do not have access to SAP-owned systems and laptops, please follow the steps below.
🔵Click to expand!
Before completing the exercises in this repository, you need to:
Frontend:
- Install the latest Eclipse platform and the latest ABAP Development Tools (ADT) plugin
- Adapt the Web Browser settings in your ADT installation:
i) Choose Window > Preferences in the menu bar.
ii) Navigate to General > Web Browser.
iii) Activate the radio button Use external web browser.
iv) Select one of the listed external web browsers that are available, e.g. Default system web browser.
❗Make sure that Internet Explorer is not selected.
Backend:
- In case you don't have access to one of the supported systems you can either use the SAP BTP ABAP Environment Trial or the ABAP Cloud development Trial
- Create an user on the SAP BTP ABAP Environment Trial (recommended)
- Install the ABAP Cloud Developer Trial 2023 if you do not have access to an appropriate ABAP system.
- Create an ABAP Project or an ABAP Cloud Project * to connect ADT to the ABAP system.
(*) An ABAP Cloud Project is needed to connect ADT to an SAP BTP ABAP Environment or SAP S/4HANA Cloud Public Edition system.
- If not yet done, import the appropriate version of the ABAP Flight Reference Scenario (package
/DMO/FLIGHT) into the system. PS: It is already part of the SAP BTP trial
Exercises
Follow the steps below to build the Travel app based on an OData service on top of a draft-enabled RAP Business Object (BO) to develop a transactional Fiori elements List Report app from scratch using RAP.
Note
Instead of using existing ABAP Cloud generators to generate all basic ABAP development artifacts required for building the Manage Travels app, you'll build them step by step to better understand the ABAP Cloud development model, especially the ABAP RESTful Application Programming Model (RAP) in this workshop. The Block B below contains demo videos on the existing classic and AI-based ABAP Cloud generators.
Exercise Block A
Exercises 1-7 provided in the block are the main focus of this hands-on workshop.
Block B
The ABAP development tools for Eclipse provide various standard and AI-based ABAP Cloud generators to create all required development artifacts – from the database table and the CDS objects to the RAP BO and OData service – that you've created manually for learning purposes in this hands-on workshop. See how to use them in the demo provided.
| Demos | -- |
|---|---|
| Demo – Using the ABAP Cloud generators to create RAP-based UI services | -- |
Exercise Block C (Optional)
The exercises below are optional and can be completed by participants if time permits. They extend the application scope covered in the main exercises (1–7) by adding modify authorization checks and full transactional enablement of the Travel BO — that is, create, update, and delete operations. This also includes the opportunity to explore the Entity Manipulation Language (EML).
| Optional exercises | -- |
|---|---|
| Exercise 8 – Add modify authorization checks | -- |
| Exercise 9 – Full transactional enablement of the Travel BO | -- |
| Exercise 10 – Exploring the Entity Manipulation Language (EML) | -- |
Presentation
Solution Package
-/-
Contributing
Please read the CONTRIBUTING.md to understand the contribution guidelines.
Code of Conduct
Please read the SAP Open Source Code of Conduct.
How to obtain support
Support for the content in this repository is available during the actual time of the online session for which this content has been designed. Otherwise, you may request support via the Issues tab.
Further Information
You can find further information on the ABAP Cloud and the ABAP RESTful Application Programming Model (RAP) here:
- ABAP Development at SAP Community | SAP Community page
- ABAP Extensibility Guide – Clean Core for SAP S/4HANA Cloud - August 2025 Update | SAP Blogs
- ABAP Cloud development guide | SAP Help
- State-of-the-Art ABAP Development with RAP | SAP Community page
- RAP100 Tutorials Mission on SAP Developers Center | SAP Learning
- SAP Fiori: Develop and Run a Fiori Application with SAP Business Application Studio (optional) | SAP Learning
License
Copyright (c) 2025-2026 SAP SE or an SAP affiliate company and teched2025-AD164 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.
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
Flavors
“The ABAP Cloud development model (ABAP Cloud) is the development model to build business apps, services, and extensions that follow the clean core principles by default on SAP BTP, SAP S/4HANA Cloud, and SAP S/4HANA as of release 2022.” — SAP-samples/teched2025-AD164 — README
Contributors
History in the atlas
- First seen.
For your agent
- Ref
artifact:sap-samples-teched2025-ad164- JSON
- /artifacts/sap-samples-teched2025-ad164.json
- MCP
- Connecting an agent