This is a test message to test the length of the message box.
Login
ABAP Cloud Programming Model
Created by Software-Heroes

ABAP Cloud - Programming Model

862

Which programming model is used with ABAP Cloud and what can we learn from its predecessor? More details in the article.



What do you need a programming model for in ABAP and how is the current model structured? In this article, we will briefly go through the evolutionary history of the model and what it looks like today.

 

Introduction

Even before ABAP Cloud, a lot of the architecture in ABAP had changed. With the new Core Data Services, it was now possible to create a further abstraction between the database and the UI and to better describe the data model and the relationships using the associations in the views. Using additional annotations, it was possible to create an OData service directly from a Core Data Service. The OData services are important if you want to develop a UI based on SAP Fiori.

 

Programs 

Currently, most applications are implemented as SAP GUI transactions in the system, as they are the current standard for ABAP developers and can be implemented very quickly. They rely on controls and the classic PBO and PAI for processing.

 

BOPF

The Business Object Processing Framework, or BOPF for short, was the first attempt to take the modeling and use of business objects to a new level. For the first time, various concepts were used to support the reusability and flexibility of the objects. The logic surrounding the business object was implemented with ABAP OO to underline the more modern architecture.

This meant that an object could consist of various tables that were related to one another. If the root node was deleted, the dependent entries in the nodes below were automatically deleted as well, without the developer having to worry about it.

Logics were implemented to check the data before saving (validations). This meant that no incorrect data could be saved in the BO. There were investigations that automatically derived various data without the user having to enter it. If an action was to be carried out that interacted with the data, it could be triggered at the BO to change, check and save data in the object.

A later extension of the concept was that a BOPF could be created from Core Data Services with specific annotations and modeling via transactions was no longer necessary. In addition, a service for the UI could easily be generated.

However, there were also some downsides to the model, as a lot of boilerplate code and artifacts were generated, which did not really make working with it any easier. Modeling and working with BOPF objects was not always easy or quick to do.

 

RAP

The ABAP RESTful Programming Model, or RAP for short, was the last model developed by SAP. It adopts many concepts from BOPF, such as validations, determinations and actions. It was developed and built over many iterations before it became the model we use today.

© SAP SE

 

Modeling

In addition to the tables, the model is primarily based on the Core Data Services to carry out the data modeling. Therefore, not much ABAP coding is required for the actual development of the app. If you then want to implement additional behavior and make the model interactive and changeable, you have to create the behavior definition and implementation.

The service is no longer managed in the gateway (SEGW), but you create new development artifacts such as the service definition (bundling of entities) and the service binding (protocol).

 

First steps

Getting to grips with the framework can be quite complex because there are so many new objects and options. If you come from a reporting background and have not learned BOPF before, the many different things can seem a bit overwhelming at first. We therefore recommend that you get a rough overview of RAP at the beginning. The introductory training on learning.sap.com can help you to quickly set up your first object. In general, we recommend that you start small, with an object with a table, to learn the new concepts. Then you should increase the complexity step by step:

 

Learning 

Learning the new programming model will take several months of training to understand the technology and methodologies. At the end, however, there is an efficient model waiting for you to be able to implement Fiori Elements applications and establish a new standard. In any case, we recommend that you use RAP in practice with various scenarios in order to learn the basics of the model. You should focus primarily on the following areas:

  • Data modeling with your own and standard Core Data Services
  • Creating behavior
  • Entity Manipulation Language (EML)
  • Designing Fiori UIs with annotations

 

Conclusion

Once you have understood the new programming model, implementing SAP Fiori (Elements) applications will be much easier and you will achieve results more quickly. With a little practice, you will soon be able to create applications as quickly as you can create reports with ALV today.

 

More information:
SAP Help - ABAP RESTful Programming Model
BOPF Developer Guide


Included topics:
ABAP CloudABAPBOPFRAPProgramming Model
Comments (0)



And further ...

Are you satisfied with the content of the article? We post new content in the ABAP area every Friday and irregularly in all other areas. Take a look at our tools and apps, we provide them free of charge.


ABAP Cloud - ADT Trees (Overview)

Category - ABAP

What help and overviews are available in the ABAP Development Tools to simplify your life with ABAP Cloud?

12/17/2024

ABAP Cloud - Relevant Objects

Category - ABAP

Which objects are still relevant in ABAP development and which ones can you slowly put away? Find out more here.

11/19/2024

ABAP Cloud - Locks

Category - ABAP

What do you need to set locks for and how can you easily do that in ABAP Cloud? In this article we will look at the process in detail.

11/08/2024

ABAP Cloud - HTTP Client

Category - ABAP

What does the current HTTP client in ABAP Cloud look like? Let's take a look at the new model.

11/01/2024

ABAP Cloud - Key User Apps

Category - ABAP

Key User Extensibility is a part of ABAP Cloud when it comes to extending the core, but how can you use the tools effectively and how do they complement each other?

10/11/2024