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**:The OData service you are going to implement is based on the simplified Flight data model below.
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.
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
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.
Exercises 1-7 provided in the block are the main focus of this hands-on workshop.
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 | -- |
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) | -- |
-/-
Please read the CONTRIBUTING.md to understand the contribution guidelines.
Please read the SAP Open Source Code of Conduct.
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.
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
Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.

