This is a test message to test the length of the message box.
Login

Modern ABAP - Statements

Introduction

With the introduction of the new commands since 7.40 and the first cloud systems, a lot has happened in the ABAP language. Many new commands were added, old ones were set to obsolete and new technologies made available (CDS, BOPF, Gateway).

This changes the complete picture of the language a little more in the direction of Java, there are also more functions available and the scope of the language syntax continues to grow. Here it is time to say goodbye to old thought patterns and commands and to focus on the new things. For you as a developer, it will make your work easier and reduce your ABAP vocabulary a little.

We provide you with the list of statements to make your daily work more manageable at a glance and to show you the new alternatives.

 

New vs Old

This is followed by a list of the ABAP commands that are out of date or have been replaced by new alternatives. Some of the old commands are now also marked as obsolete and you should only use the new ones. When switching to SAP cloud platform, you should continue to switch to the new commands in order to benefit from the better performance and availability.

 

Old New e.g.
ADD + or += Link
SUBSTRACT - or -= Link
MULTIPLY * or *= Link
DIVIDE / or /= Link
DESCRIBE TABLE LINES LINES Link
MOVE = Link
MOVE-CORRESPONDING CORRESPONDING #( ) Link
?= CAST #( ) Link
FREE CLEAR Link
REFRESH CLEAR Link
APPEND INSERT Link
WRITE ... TO |<TEXT>| Link
CONCATENATE && Link
CREATE OBJECT NEW #( ) Link
CALL METHOD <METHOD>( ) Link
READ TABLE [ ] Link
CONDENSE CONDENSE( ) Link
CONDENSE ... NO-GAPS REPLACE( ) Link
REPLACE REPLACE( ) Link
TRANSLATE ... TO UPPER TO_LOWER( ) Link
TRANSLATE ... TO LOWER TO_UPPER( ) Link
GUID_CREATE CL_SYSTEM_UUID Link
'X' or ' ' ABAP_TRUE or ABAP_FALSE Link
GET REFERENCE OF REF #( ) Link
IF ... IS NOT INITIAL Predicative Method Call Link
EQ, NE, GT, GE, LT, LE =, <>, >, >=, <, <= Link
SYST or SY CL_ABAP_CONTEXT_INFO Link
FORM METHOD Link
SELECT ... ENDSELECT SELECT ... INTO TABLE Link
STRING+2(4) SUBSTRING( ) Link

 

Additional statements

Here is the list of new commands that do not necessarily replace old commands, but represent a simple alternative for many scenarios.

 

New e.g.
DATA() Link
VALUE #( ) Link
CONV #( ) Link
SWITCH #( ) Link
COND #( ) Link
XSDBOOL #( ) Link
FOR #( ) Link
REDUCE #( ) Link
IS INSTANCE OF Link
LINE_EXISTS Link
LINE_INDEX Link
FILTER #( ) Link
INSERT FROM SELECT Link
ENUM Link
CASE TYPE OF Link
Common Table Expression Link

 

Obsolete statements

Last but not least, the overview of the completely omitted statements, which you can slowly forget and can implement differently with the examples.

 

Old e.g.
ADD ... UNITL Link

 

 

Hint: The lists are updated again and again and enriched with blog articles to give you a better picture of the effect and use. If you would like to help us to complete the list or if you have any comments on the individual statements, simply contact us.