Smartforms oder SAPscript Formulare vergleichen
Auch wenn SAP es mit Boardmitteln nicht unterstützt, können wir SAPscript Formulare vergleichen. So lassen sich zum Beispiel Unterschiede zwischen einem SAPscript Formular Stand auf dem Entwicklungs- und Produktivsystem feststellen. Gerade bei SAPscript, der fehleranfälligsten Technologie von allen, können so schnell potentielle Fehlerquellen identifiziert werden.
Im folgenden Szenario gehe ich davon aus, dass Sie ein Formular vom Stand des Entwicklungssystems mit dem des Produktivsystems vergleichen wollen.
SAPscript Formulare vergleichen
Zuerst müssen wir das SAPscript Formular aus SAP rausholen, um externe Software nutzen zu können. Dazu führen wir Report RSTXSCRP per Transaktion SE38/SA38 aus. Folgende Maske wird uns angezeigt:
Hier wählen wir die Option “Formular” aus, geben den Formularnamen und die Sprache an, und führen den Report aus. Es folgt ein Datei-Speicher-Dialog, in dem eine .TXT Datei erstellt wird.
Gleichermaßen laden wir das zweite Formular, bzw. den anderen Formular Stand von dem zweiten System herunter, mit dem wir es vergleichen wollen.
Ein ausführlicheres Tutorial finden Sie in dem Artikel “SAPscript Formulardownload mit RSTXSCRP“.
Notepad++ einrichten
Haben wir die beiden zu vergleichenden Stände als TXT Dateien, müssen wir ein Tool einrichten, um diese zu vergleichen. Dazu eignet sich das Tool Notepad++ durch seine Erweiterbarkeit bestens. Wir installieren also Notepad++ in beliebiger Version (am besten die aktuellste Version; Portable ist ebenfalls möglich).
Um jetzt die beiden SAPscript Formulare vergleichen zu können, laden wir das Compare Plugin von Notepad++ (korrekte Version beachten, x64/x86):
https://github.com/pnedev/compare-plugin/releases
(Sollte der Link nicht mehr aktuell sein, einfach nach “Notepad++ Compare Plugin” googlen.
Ist die Zip-Datei entpackt, ist im doc Ordner eine Readme mit einer Installationsanleitung zu finden. Konkret muss nur die “ComparePlugin.dll” in das Plugin Verzeichnis von Notepad++ kopiert werden (z. B. “C:\Program Files (x86)\Notepad++\Plugins”).
Ist die Plugin DLL kopiert, muss einmal Notepad++ neugestartet werden.
Compare Plugin nutzen
Jetzt ziehen wir die beiden zu vergleichenden Formular-Stände in Notepad++ rein. Per “Erweiterungen -> Compare -> Compare” können wir den Vergleich starten, wie hier gezeigt:
Daraufhin sehen wir einen Zeilen-Vergleich der beiden Stände. Hier zu sehen sind zum Beispiel in Zeile 15, dass ein neues Absatzformat hinzugefügt wurde. In Zeile 21 wurde “HELLO WORLD” zu “Guddach World” geändert. Außerdem wurde eine neue Zeile “Test” in Zeile 24 hinzugefügt.
Schon können wir zwei SAPscript Formulare vergleichen!
SAPscript & Smart Forms
Ist SAPscript und/oder Smart Forms überhaupt noch der richtige Weg? Erfahren Sie hier alles zum Thema und profitieren Sie von unseren Erfahrungen.
Nutzbarkeit mit Smartforms
Auch für die beiden anderen Technologien lässt sich Notepad++ nutzen. Smartforms Formulare lassen sich per Transaktion Smartforms über die Hilfsmittel als XML-Datei herunterladen. Dabei kommt die gesamte Datei als eine Zeile raus, wodurch das Compare Plugin mit seinem Zeilen-Vergleich unübersichtlich wird. Hier hilft das Notepad++ Plugin “XML Tools“.
Das Plugin stellt eine Funktion “Pretty Print (XML only – with line breaks)” zur Verfügung. Mit dieser Funktion wird die XML zu einer sauberen Baum-Struktur umformatiert wird. Danach kann das Compare Plugin wieder greifen und Zeile für Zeile vergleichen.
Eine weitere Besonderheit bei Smartforms ist, dass die XML-Knoten nicht 1:1 wie die im Smartform aussehen. Beim exportieren werden generische XML Knoten angelegt. Häufig gibt es einen Knoten wie “<item>….<FORMNAME>Z_MY_SMARTFORMS</FORMNAME> …. <INAME>%CODE36</INAME> …. </item>”. Hier enthält der Knoten INAME den tatsächlichen Knoten-Namen aus der Smartforms Transaktion.
Nutzbarkeit mit Adobe Forms
Mit einem Adobe Formular können Sie die XML per LiveCycle Designer direkt runterladen. Dazu muss der Reiter “XML-Quelle” per Rechtsklick neben den Reiter “Masterseite”, “Preview” usw. eingeblendet werden. Da dort die XML bereits formatiert angezeigt wird, können Sie diese 1:1 in eine lokale Datei kopieren, und per Compare Plugin vergleichen.
So lassen sich Adobe Forms, Smartforms und SAPscript Formulare vergleichen, ganz ohne Abhängigkeit zu SAP.
Wollen Sie direkt eine ganze Versionsverwaltung für SAPscript haben? Dann könnte unsere Lösung für Sie spannend sein.