This is a test message to test the length of the message box.
Login
ABAP Obsolet Zuweisung, Berechnung
Erstellt von Software-Heroes

ABAP Obsolet - Zuweisung und Berechnung

527

Wie funktioniert das eigentlich mit den Zuweisungen und der Berechnung in ABAP? Hier erfährst du die aktuellen Sprachkonstrukte und was du vermeiden solltest.

Werbung


In unserer Serie der obsoleten Statements beschäftigen wir uns heute mit dem Thema Zuweisung und Berechnung und zeigen dir dabei ein paar neue Konstrukte die mit den aktuellen Releases ausgeliefert werden. Wichtig ist das Thema obsolete Statements vor allem in der Cloud, da unter Steampunk einige Dinge anders funktionieren.

 

Zuweisungen

Eine Zuweisung, bei der Quell- und Zieltyp unterschiedlich sind, wurden füher mit einem MOVE durchgeführt. Damit wusste das System, dass es auf den Zieltyp konvertieren sollte, solange dies möglich war. Doch dieser Beefehl wurde schon lange nicht mehr benötigt, eine einfache Zuweisung reicht dafür aus. Deshalb ist das Statement mittlerweile auch komplett obsolet und wird nicht mehr benötigt.

DATA:
  ld_number  TYPE n LENGTH 10 VALUE 6513,
  ld_integer TYPE i.

" Old style
MOVE ld_number TO ld_integer.

" New style
ld_integer = ld_number.

 

Der Befehl COMPUTE führt zu einem ähnlichen Ergebnis und kann genau so weggelassen werden. Dieser Befehl wird noch seltener verwendet als MOVE.

" Old style
COMPUTE ld_number = ld_integer.

" New style
ld_integer = ld_number.

 

Für Zuweisungen kann man sich deshalb merken, so wie in anderen Programmiersprachen, einfach die Zuweisung machen. Es wird automatisch versucht vom Quell- auf den Zieltypen zu konvertieren, wenn dies möglich ist.

 

Berechnungen

Auch wenn die Befehle zur Berechnung schon etwas stark angestaubt sind und eigentlich noch von Cobol stammen, sind sie in aktuellem ABAP Coding noch verfügbar. Weiterhin kann man sie in älterem Code manchmal finden. Diese Form der Berechnung solltest du aber nicht mehr verwenden. Hier verwendest du eher den allgemein gültigen Stil, mit zwei Variablen zu rechnen.

" Old style
ADD 1 TO ld_number.
SUBTRACT 1 FROM ld_number.
MULTIPLY ld_number BY 2.
DIVIDE ld_number BY 4.

" New style
ld_number = ld_number + 1.
ld_number = ld_number - 1.
ld_number = ld_number * 2.
ld_number = ld_number / 4.

 

Mit dem letzten großen HANA Release 1909 (letztes Jahr), funktionieren nun auch die typischen Konstrukte aus anderen Programmiersprachen. Dies verkürzt die Tipparbeit vor allem bei längeren Variablennamen und sorgt für mehr Übersichtlichkeit. Doch vorsicht, wenn ihr an abwärtskompatiblem Code arbeitet! Nicht das ihr dort in Probleme mit älteren Versionen lauft.


" New style Release > 7.54 or HANA 1909
ld_number += 1.
ld_number -= 1.
ld_number *= 2.
ld_number /= 4.

 

Fazit

ABAP rückt damit immer weiter weg von seiner eigentlichen Basis Cobol und öffnet sich mehr den allgemeinen Programmiersprachen wie Java. Für viele jüngere Entwickler geht es genau in die richtige Richtung und poliert damit das angestaubte Image etwas auf.

 

Quelle:
SAP Blog


Enthaltene Themen:
ObsoletMOVECOMPUTEBerechnung
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


ABAP - Namenskonventionen

Kategorie - ABAP

Wie wichtig sind heutzutage noch die Einhaltung von Namenskonventionen oder überhaupt die Verwendung von Namenskonventionen im modernen ABAP Umfeld? Das wollen wir uns in diesem Artikel anschauen.

09.04.2021

ABAP - INSERT verwenden

Kategorie - ABAP

APPEND hat in ABAP bereits eine lange Geschichte, doch dieser wird in Zukunft immer weniger eine Rolle spielen. Wir zeigen dir wieso.

11.12.2020

ABAP Obsolet - Range und Kopfzeilen

Kategorie - ABAP

Eine ordentliche Range zur Übergabe erzeugen? Tabellen mit oder ohne Kopfzeilen? Wir zeigen dir was noch geht und was du lieber sein lassen solltest.

12.06.2020

ABAP Obsolet - DESCRIBE

Kategorie - ABAP

Wieder haben wir für dich einen meist genutzten ABAP Begriff, für den es bereits eine neue Alternative gibt, dieses mal aber nicht nur Eine.

15.11.2019

ABAP Obsolet - TYPE-POOL

Kategorie - ABAP

Type Pools sind obsolet, doch die Verwendung geht weiter. Wie du in Zukunft am Besten damit umgehst, erfährst du heute hier.

23.08.2019