Joschka Rick
 - 19. April 2018

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:

Um SAPscript Formulare vergleichen zu können, müssen wir die Formulare in Textdateien extrahieren.

SAPscript Formulare runterladen per RSTXSCRP

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:

Um SAPscript Formulare vergleichen zu können, nutzen wir das Compare Plugin von Notepad++.

Notepad++ Compare Plugin Benutzung

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.

Ergebnis eines Notepad++ Comparison Plugin Vergleichs von zwei SAPscript Formularen.

Notepad++ SAPscript Formular Comparison

Schon können wir zwei SAPscript Formulare vergleichen!

SAPscript-Formular als PDF sichern [Guide]

Sie haben ein Problem dabei Ihre SAPscript-Formulare als PDF zu sichern und wissen nicht wie sie es lösen? Wir verraten es Ihnen.

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.

In Notepad++ lässt sich per Plugins -> XML Tools -> Pretty print der XML-String in Zeilen umbrechen

Pretty-Print per XML Tools Plugin

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.

Smartforms wird in ein XML-Format mit generischen Knoten-Namen exportiert.

Smartforms XML Knoten Darstellung

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.

E-Book: SAP Adobe Forms

SAP Adobe Forms ist der zukünftige Standard für Druckformulare, denn es ermöglicht effizientes und gewinnbringendes Arbeiten.

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.

Joschka Rick

Joschka Rick

"Geht nicht" gibt es bei mir nicht! Mit meiner Wissbegierde und meinem breiten technischen Verständnis habe ich bisher immer eine Lösung gefunden. Mein Name ist Joschka Rick und ich bin Senior Consultant im Kernteam mindforms. Um Ihre Projekte zum Erfolg zu führen, lege ich besonderen Wert auf Zuverlässigkeit, gute Integration und Kommunikation. Mein fachlicher Fokus liegt auf Etiketten-Druck, Software Architektur, ABAP OO und Archivierung.

Sie haben Fragen? Kontaktieren Sie mich!



Das könnte Sie auch interessieren


Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.





Angebot anfordern
Preisliste herunterladen
Expert Session
Support