SAP-samples/abap-platform-rap200
A guided-scenario workshop that builds a Travel Processing application in ABAP Cloud, centred on the ABAP RESTful Application Programming Model (RAP).
Builds a Travel Processing application in three exercise blocks: generating a transactional OData UI service with RAP, then adding collaborative draft handling, event-driven side effects and the background processing framework to it, then a separate read-only RAP analytical table for reporting. It runs against an SAP BTP ABAP Environment system or an SAP S/4HANA Cloud Public Edition system, and assumes the RAP100 workshop as a prerequisite.
Facts
Where it sits
Who is behind it
In the atlas: maintains 222@SAP-samplesmaintainerAjay SorengContributes to this
In the atlas: contributes to 36@ajaysorengAndre FischerContributes to this
In the atlas: contributes to 19, wrote 5@anfiscCarine Tchoutouo DjomoContributes to this
In the atlas: contributes to 17, wrote 1@CarineTD3 contributors
What it declares
Every artifact
- Type
- Sample
- Origin
- By SAP
- Use as
- A reference
As a sample
- Form
- Workshop or CodeJam material
Connections
Defining business object behaviour and who owns the transaction
Download
README
quoted from SAP-samples/abap-platform-rap200 under Apache-2.0, readHome - Workshops about the ABAP RESTful Application Programming Model (RAP)
RAP200 – Explore ABAP Cloud Features in a Guided Scenario (Focus: RAP)
Description
This repository contains the material for the hands-on session RAP200 – Explore ABAP Cloud Features in a Guided Scenario (Focus: RAP).
This hands-on workshop allows developers to explore various ABAP Cloud features, especially within the ABAP RESTful Application Programming Model (RAP), through a guided scenario:
- ADT wizard "From Scratch OData UI Service" to build RAP service, with and without AI support from scratch - *Focus on Plain wizard
- Collaborative draft, enabling multiple users to work on the same RAP business object instance simultaneously
- Event-driven RAP side effects, allowing specific fields to be updated without reloading the entire data whenever a defined business event is raised
- Use of the Background processing framework (bgPF) to asynchronously trigger an external process within a RAP BO
- Read-only RAP Analytical table to provide a data visualization in SAP Fiori, supporting set of structured data and multiple aggregation options
Level
🧑🎓 Intermediate.
Table of Content
- Requirements for attending this workshop
- Overview
- Exercises
- Solution Package
- Known Issues
- How to obtain support
- Further Information
Requirements for attending this workshop
To complete the practical exercises in this workshop, you need:
- An SAP BTP ABAP Environment system (e.g. SAP BTP Trial), or access to an SAP S/4HANA Cloud Public Edition system
- Latest ABAP Development Tools (ADT) Plugin for Eclipse
- Basic knowledge of ABAP and the ABAP RESTful Application Programming Model (RAP) - see (RAP100 – Build Fiori Apps with the ABAP RESTful Application Programming Model)
🔵 Click to expand!
The technical requirements to follow the exercises in this repository are:
-
Only for self-paced mode:
Create an SAP BTP ABAP Environment Trial User or use an on-premise system⚠ Regarding SAP-led events or workshops ⚠️
→ A dedicated system will be provided for SAP-led events.
→ Access details will be shared by the instructors at the beginning of the session.
Overview
In this hands-on workshop, you will build and enhance a Travel Processing application using the ABAP RESTful Application Programming Model (RAP). You will generate a transactional UI service, enhance it with business logic, add collaborative draft handling, implement event-driven side effects, and create a read-only analytical table.
🔵 Click to expand!
In this workshop, you will:
- Generate a transactional OData-based UI service using the RAP Generator
- Enhance the RAP Business Object with determinations, actions, and dynamic feature control
- Add collaborative draft handling to the Travel application
- Implement event-driven side effects
- Create a read-only RAP Analytical Table for reporting
The RAP Business Object consists of two entities:
- Travel (root entity)
- Booking (child entity)
🏁 Resulting apps:
| Transactional Travel Processing App (Exercise Blocks A + B) |
|
| Read-only Travel Reporting App (Exercise Blocks A + C) | |
|---|
🗃️ Underlying simplified Flight data model
| Underlying simplified Flight data model |
|
Exercises
Follow the step-by-step instructions provided in the different exercises to build and enhance an application to process Travel record using the ABAP RESTful Application Programming Model (RAP).
Exercise Block A:
This exercise block provides the transactional UI service for the Travel BO for the Manage Travel app, which is further enhanced in the exercise blocks B and C.
| Exercises | -- |
|---|---|
| Getting Started | -- |
| Exercise 1: Generate the Transactional UI Service | -- |
Exercise Block B:
This exercise block enhances the transactional capabilities of the Manage Travel app built in the exercise block A.
💡Prerequisites: Completion of Exercise Block A
Exercise Block C:
In this exercise block, you build a new consumption app with basic analytical capabilities for a read-only Travel app, based on the Travel app from exercise block A.
💡Prerequisites: Completion of Exercise Block A
| Exercises | -- |
|---|---|
| Exercise 6: Developing Read-Only RAP Analytical Tables | -- |
Solution Package
You can import the solution package
ZRAP200_SOLinto the following systems:
- SAP BTP ABAP Environment
- SAP S/4HANA Cloud Public Edition
Known Issues
No known issues.
How to obtain support
Create an issue in this repository if you find a bug or have questions about the content.
For additional support, ask a question in SAP Community.
Further Information
You can find more information about RAP and related topics here:
- ABAP RESTful Application Programming Model – Documentation
- Develop and Run a Fiori Application with SAP Business Application Studio
- SAP BTP ABAP Environment Community
Contributing
If you wish to contribute code, offer fixes or improvements, please send a pull request. Due to legal reasons, contributors will be asked to accept a DCO when they create the first pull request to this project. This happens in an automated fashion during the submission process. SAP uses the standard DCO text of the Linux Foundation.
License
Copyright (c) 2026 SAP SE or an SAP affiliate company and abap-platform-rap200 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
Contributors
History in the atlas
- First seen.
For your agent
- Ref
artifact:sap-samples-abap-platform-rap200- JSON
- /artifacts/sap-samples-abap-platform-rap200.json
- MCP
- Connecting an agent