ABAP RESTful Application Programming Model (RAP) at openSAP
This page provides further reading - such as links to documentation, tutorials, and more - for the openSAP course "Building Apps with the ABAP RESTful Application Programming Model" (RAP). Live course period: October 19, 2020 – December 1, 2020 | The course is now available in self-paced mode. 📢⚠️This course is based on the RAP feature set of SAP S/4HANA 2020 and SAP BTP ABAP Environment 2008. Please visit the new RAP subtopic page in SAP Community for updates on the topic: https://community.sap.com/topics/abap/rap.
📢Announcements
UPDATES: WHAT'S NEW IN RAP?
This openSAP course was live from 19 October 2020 to 1 December 2020 and then went into self-paced mode. The course is based on the ABAP RESTful Application Programming Model (RAP) feature set of SAP S/4HANA 2020 and release 2008 of SAP BTP ABAP Environment.
Although the core concepts of RAP – i.e. queries, business objects, and business services – remain the same, RAP has evolved over the past years. Several new features and improvements have been released; early and late numbering, different types of actions and determinations, projection contracts, augmentation, side effects, and business events to name a few. ADT now provides a wizard to generate all the required artefacts of based on a database table.
For this reason, the demonstrations shown in the course and the corresponding hands-on exercises provided today may differ from it.
Please visit the new RAP subtopic page in the SAP Community for updates on the topic - see Videos, Learn & Develop, etc.
General Information
INTRODUCTION
Modern applications need to provide instant business value to their customers. Therefore, application programming models need to provide new qualities: efficient and high-quality development, mobile and desktop availability, flexible adaptation, integration into existing landscapes as well as flexible deployment options in the cloud and on-premise. This is exactly where the ABAP RESTful Application Programming Model (RAP) comes into play.
In the course "Building Apps with the ABAP RESTful Application Programming Model (RAP)", you will see how RAP helps developers to efficiently build enterprise SAP Fiori apps and services on SAP Business Technology Platform (BTP) ABAP Environment (formerly known as SAP Cloud Platform ABAP Environment) and SAP S/4HANA.
Based on detailed hands-on exercises, you’ll learn how RAP combines and orchestrates proven SAP technologies like Core Data Services (CDS) and OData with new concepts, guidelines, and tools to offer a new programming model for ABAP development, regardless of whether you want to start from scratch or reuse existing business logic.
Note:
- This course is now available in self-pace mode.
- This course was first offered in 2020; consequently, all its assets were created before the branding changes related to SAP technology were announced in January 2021.
SAP COMMUNITY
SAP HELP PORTAL DOCUMENTATION
For SAP BTP ABAP Environment
- RAP Documentation | What's New
- Release Notes
- Analytical Data Modeling & Live Data Connection to SAP Analytics Cloud (SAC)
- Accessing ABAP-managed Data from External ODBC-based Clients
For SAP S/4HANA 1909 and later
Week 1
WEEK 1: INTRODUCTION - ABAP RESTful APPLICATION PROGRAMMING MODEL
Course Videos
- Access to all Week 1 videos and the dedicated discussion forum (read-only mode) on openSAP.com
Further Reading
- Getting Started with RAP (incl. SAP TechEd replays)
- RAP Concepts
- RAP Glossary
- Getting Started with ABAP for SAP HANA
- Getting Started with ABAP Core Data Services (CDS)
- ABAP Keyword Documentation: Cloud | On-Premise
- How to use the ABAP Keyword Documentation (blog/videos)
- ABAP Development Tools (ADT) - ABAP Development User Guide: Cloud | On-Premise
- ADT for Eclipse: ADT Update Site | Useful ADT Shortcuts
- Smooth transition from SE80 to ADT: Tips and Tricks | Basic Tutorials | FAQ for SE80 Experts using ADT
- ADT: Documenting ABAP Development Objects with KTD
- SAP BTP ABAP Environment: SAP Discovery Center | Product Expert Page
- SAP Business Technology Platform (BTP) Trial
- Open source abapGit: Working with abapGit | Documentation | Tutorial
- SAP Fiori Design Guidelines
- Introduction to SAP Fiori element: Video | Documentation
- SAP Business Application Studio: Video | Documentation | Product Expert Page
- openSAP course "SAP Fiori Overview: Design, Develop and Deploy"
- openSAP course "Developing and Extending SAP Fiori Elements Apps"
Additional Exercises
- Week 1 Unit 5-6: For the hands-on exercises, open this GitHub repository (/week1) and follow the instructions in the README file.
Week 2
WEEK 2: DEVELOPING A READ-ONLY LIST REPORT APP
Course Videos
- Access to all Week 2 videos and the dedicated discussion forum (read-only mode) on openSAP.com
Further Reading
- Refer to the Further Reading section of the previous week
- ABAP Flight Reference Scenario: Cloud flavor | On-Premise flavor
- Developing Read-Only List Reporting Apps
- RAP Concepts - Data Modeling and Behavior
- RAP Concepts - Business Service
- Building composition tree with ABAP CDS views
- Defining CDS Annotations for Metadata-driven UIs: Cloud | On-Premise
- Overview of Annotations supported in ABAP CDS: Cloud | On-Premise
- Tips und Tricks for ABAP CDS Tools: Cloud | On-Premise
- Naming Conventions: SAP S/4HANA Virtual Data Model (VDM) (latest)
- Developing Apps with SAP Fiori elements
Additional Exercises
- Week 2 Unit 2-7: For the optional hands-on exercises, open this GitHub repository (/week2) and follow the instructions in the README file.
- In addition, you might have a look at the tutorial Develop and Run an SAP Fiori Application With SAP Business Application Studio to learn how to build a productive app of top of a RAP service.
- You might also have a look at the tutorial Create Authorization Model and App on SAP BTP ABAP Environment to learn how to create Identity and Access Management (IAM) apps, services and catalogs for authorization model.
Week 3
WEEK 3: ENABLING THE TRANSACTIONAL BEHAVIOR OF AN APP
Course Videos
- Access to all Week 3 videos and the dedicated discussion forum (read-only mode) on openSAP.com
Further Reading
- Refer to the Further Reading of the previous weeks
- Developing Transactional Apps with Draft Capabilities
- RAP Concepts - Business Object
- Entity Manipulation Language (EML) | @ABAP Keyword Documentation
- Developing Validations
- Developing Determinations
- Developing Actions
- Adding Static and Dynamic Feature Control
- Runtime diagrams: Create | Update | Delete | Create by Association | Actions | Save Sequence
Additional Exercises
- Week 3 Unit 2-7: For the optional hands-on exercises, open this GitHub repository (/week3) and follow the instructions in the README file.
Week 4
WEEK 4: DEALING WITH EXISTING CODE
Course Videos
- Access to all Week 4 videos and the dedicated discussion forum (read-only mode) on openSAP.com
Further Reading
- Refer to the Further Reading of the previous weeks
- Developing Unmanaged Transactional Apps
- Runtime diagrams: Create | Update | Delete | Create by Association | Actions | Save Sequence
- Unit Testing with ABAP Unit
Additional Exercises
- Week 4 Unit 2-5: For the optional hands-on exercises, open this GitHub repository (/week4) and follow the instructions in the README file.
- In addition, you might have a look at the tutorial Develop and Run an SAP Fiori Application With SAP Business Application Studio to learn how to build a productive app of top of a RAP service.
Week 5
WEEK 5: SERVICE CONSUMPTION AND WEB APIs
Course Videos
- Access to all Week 5 videos and the dedicated discussion forum (read-only mode) on openSAP.com
Further Reading
- Refer to the Further Reading of the previous weeks
- Developing a UI Service with Access to a Remote Service
- Developing a Web API
- SAP Analytics Cloud (SAC): Homepage | Product Overview | Learning | Free Trial
- Developing for Analytics with the SAP BTP ABAP Environment [Blog]
- Analytical Data Modeling & Live Data Connection to SAP Analytics Cloud
Additional Exercises
- Week 5 Unit 2-7: For the optional hands-on exercises, open this GitHub repository (/week5) and follow the instructions in the README file.
- In addition, you might have a look at the tutorial Develop and Consume Queries on SAP Analytics Cloud (SAC) to learn how to develop analytical queries on ABAP systems and consume them in the SAC client to create analytical models, stories and multi-dimensional reports.
Week 6
WEEK 6: FINAL EXAM
The final exam at the end of the live course period was due on Tuesday, December 1st, 09:00 UTC. (Find 09:00 UTC in your time zone.)
For those who study the course in self-paced mode and are interested in earning a certificate of achievement, they can access all graded assignments – i.e. the five weekly assignments and the final exam – with the openSAP, course reactivation option. The course reactivation takes place via the reactivate now! button on the course page.
We wish you good luck and success with the graded assignments.
FAQ
FREQUENTLY ASKED QUESTIONS
Find the answers to the most frequently asked questions around the topics below.