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

ABAP Cloud - Relevant Objects

551

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



In this article, we will examine the theory of existing objects and see what will still be relevant in ABAP Cloud and what will no longer be. We will examine the different objects and their use and make a forecast based on our own opinion.

 

Introduction

With ABAP Cloud, some objects and language constructs are "finally" not only made obsolete, but completely banned. This makes the learning scope and options easier and gives newcomers to the ABAP world the advantage of focusing directly on the new topics. Some people in the community would certainly have preferred this, as it is standard in the world of programming languages and backwards compatibility right down to the oldest code is something of a rarity.

In principle, however, we can say that this only applies to the customer's own code and partners, as this does not currently apply to SAP code. Most of this will still run under classic ABAP and therefore everything will be possible. We will therefore restrict ourselves here to our source code and objects.

 

Objects

In this section we will look at the various objects and technologies.

 

ABAP OO

We have already discussed the topic of using objects in the software architecture in an older article. The written source code will be found primarily in classes and interfaces, which makes it easy to write unit tests. All other objects act as shells that instantiate and call the classes. Nowadays, with the test double frameworks, there are also options for mocking many of the other objects during testing (classes, function modules, tables, CDS views, RAP objects, authorization objects, events, etc.). Relevant objects in this area would be:

  • Classes (CLAS)
  • Interfaces (INTF)

 

SAP GUI

With ABAP Cloud, the SAP GUI and the frameworks and objects associated with it are history. The most popular framework here is certainly the report and the ALV, followed by various other GUI technologies such as trees or HTML controls. These objects have been the cornerstone of SAP GUI development to date. Obsolete objects in this area would therefore be:

  • Report (REPO)
  • Transaction (TRAN)
  • Dynpros
  • GUI status
  • Search helps (SHLP)
  • Set/Get Parameter (PARA)

 

Dictionary

We have already discussed the use of tables and Core Data Services in another article. In the DDIC environment, some objects that you no longer need in ABAP Cloud become obsolete because there are alternatives in the CDS area.

  • View (VIEW)

 

If we look at the future of the table and the current capacities, these will be replaced by table entities and types in the future (2025). During the transition period we will still be able to use the current artifacts, but we should switch to the new types if possible.

  • Table (TABL)
  • Data element (DTEL)
  • Domain (DOMA)
  • Structures (STRU)

 

Services

Services are no longer built in the SEGW if the release state allows it. With Core Data Services, Service Definition and Service Binding you have very good tools at your disposal. This allows you to cover all types of services and protocols.

  • Core Data Services (DDLS)
  • Service Definition
  • Service Binding

 

Function modules 

The use of function modules has been standard for a long time, regardless of whether it is an RFC interface, a BAPI or for use as an object. In development, they can lead to side effects that a young developer may not be able to properly assess when it comes to buffering information. In current development, we used them more as a shell for calling objects and encapsulating the logic in testable classes. If we take a look at frameworks that normally required a function module, such as parallelization or background processing, SAP now offers alternatives. RFC function modules will be around for a while, as they are still a popular means of communication, but they may be less needed in the future, at least when used directly.

  • Function group (FUGR)
  • Function module (FUNC)

 

Extensions

How do we extend a system in ABAP Cloud? BADIs will also be available. This will enable you to implement extensions in the system at intended locations in the future. However, older technologies such as user exits, includes or implicit enhancement points will disappear from the system.

 

Language elements

Let's take a look at the language elements and from which area something will disappear and what we will continue to use.

 

File processing

Direct file processing is no longer possible in ABAP Cloud; as developers we no longer have access to the file system there. Accordingly, all statements from this area will also be eliminated:

  • OPEN DATASET
  • TRANSFER
  • READ DATASET
  • CLOSE DATASET
  • DELETE DATASET

 

SAP GUI

When it comes to working with dynpros in the SAP GUI, there are some specific commands for calling dynpros.  The classic selection screens will also disappear, as will numerous commands with them. You can slowly forget about this as you build more and more applications with RAP and Fiori.

  • CALL TRANSACTION
  • SELECTION-SCREEN
  • PARARMETER
  • SELECT-OPTION
  • SKIP
  • etc.

 

Authorization check

Checking user authorizations remains an important part of processing. Do you want certain functions in applications to be offered only to certain users? This can generally be done via customizing, but it would be cleaner to use an authorization object. Corresponding statements are still required:

  • AUTHORITY-CHECK

 

Most authorization checks are probably carried out directly in the access control of the Core Data Service.

 

Dynamic calls

It is quite difficult to imagine, but the creation and calling of objects still requires some older statements, at least when it comes to dynamic processing. In our opinion, we set the topic to "Still Relevant", perhaps SAP will present a more modern solution here.

  • CREATE OBJECT
  • CALL METHOD

 

Summary

Here is the summary of the objects again. We differentiate between "Relevant", "Still Relevant", which may disappear in the near future, and "Not Relevant", which you can no longer use in ABAP Cloud.

Relevant Still Relevant Not Relevant
Objects
Class (CLAS) Table (TABL) Report (REPO)
Interface (INTF) Data element (DTEL) Transaction (TRAN)
Core Data Services (DDLS) Domain (DOMA) Search help (SHLP)
Behavior definition (BDEF) Function group (FUGR) Set/Get Parameter (PARA)
Application Log (APLO) Function module (FUNC)  
Package (DEVC) Structure (STRU)  
Message Class (MSAG)    
BADIs    
Service Definition    
Service Binding    
Language elements
AUTHORITY-CHECK CREATE OBJECT ... DATASET
  CALL METHOD TRANSFER
    C ALL TRANSACTION
    SELECTION-SCREEN
    PARARMETER
    SELECT-OPTION
    SKIP

 

Hint: The list includes all objects mentioned in the blog and does not refer to the complete objects of the system, as there are certainly more objects here.

 

Conclusion

In our opinion, it was finally time to clean up ABAP. On the one hand, we can now tackle the new topics, and on the other hand, beginners have it easier because they don't have to learn this juggernaut of existing topics before they can even really start with ABAP.


Included topics:
ABAP CloudABAPRelevantObjects
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 - 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

ABAP Cloud - JSON Conversion

Category - ABAP

Is there a new API for converting JSON and do you need it for ABAP Cloud? Here we will take a look at the structure and conversion of JSON.

09/27/2024

ABAP Cloud - Number ranges

Category - ABAP

How can you use number ranges in ABAP Cloud and does this actually still make sense? In this article we will look at some of the background informations.

09/13/2024