+++ So können Sie Datras EPTL mit Datras Dynamic ABAP auf Ihrem SAP-System kostenlos testen (Anleitung, Download) +++ Datras hat die Preise gesenkt +++ |
s.a. "Wichtige Änderungen ab EPTL 4.0"
Datras-Dynamic-ABAP erzeugt dynamisch ABAPs und löscht diese auch wieder nach deren Ablauf. Für Prüf- und Kontrollzwecke können diese dynamischen ABAPs jedoch auch permanent im SAP-System hinterlegt werden.
Problem:
Ist auch nur ein Funktionsbaustein in einer Funktionsgruppe defekt (z.B. durch eine falsche Syntax in der SQL-Abfrage), so werden auch alle anderen Funktionsbausteine dieser Funktionsgruppe lahmgelegt (Da ABAP ja eine Hybrid-Sprache ist und somit neben dem objektorientierten auch das modulare (Spaghetti-) Programmiermodell unterstützt).
Lösung:
Für die dynamischen ABAPs werden im SAP zwei zusätzliche Funktionsgruppen "Y_DATRAS_DYNAMIC_ABAP" und "Y_DATRAS_DYNAMIC_STORE" angelegt:
• | Die erste Funktionsgruppe "Y_DATRAS_DYNAMIC_ABAP" dient für den Ablauf der dynamischen ABAPs, wobei jeder defekte ABAP sofort nach der (automatisch erfolgenden) Syntax-Prüfung in SAP und jeder ablauffähige ABAP nach dem Ablauf wieder aus dieser Funktionsgruppe gelöscht wird, so dass andere EPTL-Benutzer diese Funktionsgruppe wieder benutzen können. |
• | Die zweite Funktionsgruppe "Y_DATRAS_DYNAMIC_STORE" dient nur zur (permanenten) Speicherung von dynamischen ABAPs im SAP-System (Im EPTL auf der Registerkarte "Dynamic-ABAP" kann der aktuelle ABAP anhand eines Schalters in diese Funktionsgruppe gespeichert werden). Die Speicherung in dieser Funktionsgruppe dient nur zu Prüf- und Dokumentationszwecken, es wird jedoch nie ein ABAP in dieser Funktionsgruppe ausgeführt. Daher können hier auch defekte ABAPs abgespeichert werden. |
Wichtig:
• | Auch die ablauffähigen ABAPs in der Funktionsgruppe "Y_DATRAS_DYNAMIC_ABAP" können durch eine Option (im EPTL unter Datenbank-Optionen) in dieser Funktionsgruppe für Prüfzwecke (permanent) abgespeichert werden. Man muss jedoch beachten, dass dadurch der SAP-Server bei der Syntax-Überprüfung des aktuellen ABAPs zusätzlich belastet wird, da der SAP-Interpreter alle in der Funktionsgruppe vorhandene ABAPs überprüfen muss. Wenn diese Option benutzt wird, sollten daher, sobald wie möglich, alle ABAPs, die zu Prüfzwecken dort abgespeichert wurden, nach deren Prüfung aus der Funktionsgruppe "Y_DATRAS_DYNAMIC_ABAP" wieder (manuell) gelöscht werden. |
• | Während des Betriebs von "Datras-Dynamisch-ABAP" sollte die Funktionsgruppe "Y_DATRAS_DYNAMIC_ABAP" in keinem ABAP-Workbench geöffnet sein. Irgendwie merkt sich der SAP-Server nämlich auch die gelöschten ABAPs (für seine History-Listen ???) und kommt dann mit seinen Dingern ganz durcheinander, so dass in der ABAP-Workbench nicht existente ABAPs noch existieren und diese dann auch nicht mehr gelöscht werden können (wirr und schwer nachzuvollziehen)! |