Neues ABAP (ab Release 7.40)

Aus SAP-Wiki
Wechseln zu: Navigation, Suche

Mit dem Netweaver Relase 7.40 sind viele neue ABAP-Funktionen hinzugekommen und wurde vor allem für HANA optimiert. Version 7.40 wurde 2012 veröffentlicht.

HANA breitet sich aktuell schnell in der SAP-Welt aus.

Vorteile neue ABAP-Funktionen

  • Viele ABAP-Funkionen sind deutlich kompakter geworden und verdichten Befehle, die vorher mit relativ vielen Codingzeilen programmiert werden mussten.
  • Mit HANA ist die Datenbank deutlich schneller geworden. Was vorher aus Performancegründen auf dem Applikationsserver mit internen Tabellen programmiert wurde, wird mit wenigen Befehlen der Datenbank zur Selektion übergeben und das kann gegenüber der alten Programmiertechnik sehr große Performancevorteile bringen.

Kritik an neuen ABAP-Funktionen

  • Viele ABAP-Funkionen sind deutlich kompakter geworden und verdichten Befehle, die vorher mit relativ vielen Codingzeilen programmiert werden mussten. Das kann jedoch auch ein Nachteil sein, wenn das Coding nicht wie erwartet funktioniert. Das Coding ist dann nur eingeschränkt zu debuggen. Vorher konnten die einzelnen Zeilen debuggt werden. Jetzt ist es oft nur eine Codingzeile und diese kann auch nur als 1 Schritt debuggt werden.
  • Es gibt große Unterschiede wie ABAP-Entwickler diese neuen Funktionen einsetzen. Manche verfolgen die neuen Funktionen von neuen ABAP-Release und versuchen diese in ihr eigenes Coding zu übernehmen. Andere ABAP-Entwickler sind der Meinung “Warum soll ich die neuen ABAP-Funktionen lernen, wenn ich mit den alten ABAP-Funktionen auch alles programmieren kann ..?!” Eine durchaus nachvollziehbare Meinung. Aber man stösst dann auf Schwierigkeiten, wenn ein ABAP-Entwickler die neuesten ABAP-Funktionen nutzt und dann das Projekt verlässt. Dann müssen andere SAP-Entwickler dessen Programme betreuen und können den Entwickler meist auch nicht mehr fragen, wenn der nicht mehr im Projekt ist. Wenn die Entwickler im Projekt nicht erfahren sind mit den neuen ABAP-Funktionen, kann das sehr schwierig werden.

Abwägung und Handlungsempfehlung

  • Manche Befehle sind sehr elegant und vereinfachen die Programmierung.
  • Jeder Entwickler sollte sich mit den neuen ABAP-Funktionen beschäftigen. Mindestens schon deshalb, weil Kollegen diese neuen ABAP-Funktionen nutzen und man dann mit ihrem neuen Coding zurechtkommen muss. Ich habe im Projekt die Probleme gespürt, wenn Kollegen eine Vielzahl dieser neuen Funktionen nutzen, dann nicht mehr im Projekt sind und andere Kollegen, die mit dieser neuen Syntax nicht vertraut sind, dieses Coding warten müssen.
  • Es ist unrealistisch und nicht sinnvoll den aufgeschlossenen SAP-Entwicklern die Nutzung der neuen ABAP-Funktionen zu verbieten. Aber sie sollten darauf achten, dass das neue Coding noch lesbar bleibt und im Zweifel komplexe ABAP-Befehle auch ausführlich kommentieren im Coding. Es ist hier auch Aufgabe des Kunden gelegentlich das Coding der Entwickler zu überprüfen und dann auch entsprechend Druck auf die Entwickler zu machen ihr Coding leserlich zu schreiben und gut zu dokumentieren.
  • Jeder Entwickler sollte sich bemühen das neue Coding zu verstehen und es dann auch da einsetzen, wo es die Entwicklung beschleunigt und das Coding noch lesbar ist. Siehe hierzu https://www.abapforum.com/forum/viewtopic.php?f=2&t=20837.
  • Es ist nicht möglich diese neuen ABAP-Funktionen in seinem Gesamtumfang schnell zu lernen. Dafür sind es zu viele. Aber man kann die Funktionen nach und nach lernen. Dokumentationen lesen, über neue ABAP-Befehle von Kollegen nachdenken, die neuen ABAP-Befehle debuggen, was sie bewirken und die wissenden Kollegen vor Ort fragen und einem in einer ruhigen Viertelstunde meist gern die neue Funktionalität erklären. Fast alle Externen sind nur eine begrenzte Zeit in einem Projekt und das sollte den internen Entwicklern bewußt sein, dass diese meist irgendwann die Programme der externen Entwickler auch warten müssen.

Der Schlüsselbefehl Select im neuen ABAP

Prädikatfunktion LINE_EXISTS

Der Schlüsselbefehl Read table im neuen ABAP

Web-Links