SAPscript ist die älteste Formulartechnologie in SAP ERP bzw. SAP S/4HANA. Mithilfe von Formularen kann man Dokumente als Informationsträger im SAP-System erstellen. Dabei ist es möglich, ein interaktives Formular oder vom System generiertes Formular zu nutzen. Nicht nur deshalb sind Formulare im SAP-System sehr wertvoll und werden häufig genutzt.
In SAP ERP bzw. SAP S/4HANA werden folgende Formulartechnologien unterstützt:
- SAPScript
- SAP Smart Forms
- SAP Interactive Forms by Adobe
In diesem Artikel wird die Formulartechnologie SAPScript näher erläutert. Außerdem wird anhand eines Beispiels ein Formular basierend auf SAPScript erstellt.
Was ist SAPScript?
SAPScript ist die älteste SAP-Formulartechnologie. Sie ist standardmäßig in SAP ERP bzw. SAP S/4HANA vorhanden, da sie bei jeder Installation enthalten ist und ausgeliefert wird.
Häufig werden Rechnungen, Bestellungen oder Lieferscheine mithilfe von SAPscript generiert und an den Geschäftspartner versendet.
SAPscript arbeitet mit einer zeilenbasierten Verarbeitung. Das bedeutet, dass die entsprechenden Daten zeilenweise ausgegeben werden. Aufgrund dieser Architektur muss man häufig mit der Programmiersprache ABAP das Layout programmieren, damit es optisch passt.
Das Unternehmen SAP selbst hat angekündigt, den Support für diese Formulartechnologie 2025 einzustellen und empfiehlt, anstatt SAPscript SAP Interactive Forms by Adobe zu verwenden. Vor allem im Rahmen eine Umstellung auf SAP S/4HANA.
Formular mit SAPScript erstellen – Beispiel
Für ein SAPscript-Formular benötigt man:
- Formular – Transaktion SE71
- ABAP Programm – Transaktion SE38
- SAPscript Fonts – Transaktion SE73
In diesem Beispiel wird ein einfaches Formular erstellt. Dabei wird die Adresse des Lieferanten und ein Standardtext abgebildet.
Für die Ausgabe eines SAPscript-Formulars benötigt man ein Druckprogramm. Ein Druckprogramm enthält mindestens folgende Funktionsbausteine:
- START_FORM
- END_FORM
- OPEN_FORM
- WRITE_FORM
- CLOSE_FORM
- CONTROL_FORM
SAPscript-Formular erstellen – Transaktion SE71
Ein SAPscript-Formular besteht aus verschiedenen Teilobjekten. Diese Teilobjekte werden im Form Painter (Transaktion SE71) angelegt. Hier gibt man die ID des Formulars an und klickt auf den Anlegen-Button.
Die daraufhin angezeigte Meldung „Das Formular Z_ERP_UP Sprache DE ist im Mandant 100 nicht vorhanden“ kann bestätigt werden. Wenn diese Meldung nicht angezeigt wird, deutet das darauf hin, dass es dieses Formular bereits im System gibt.
Formular-Kopf
Im Anschluss gibt man im Formular-Kopf die Bedeutung an und speichert durch den Sichern-Button oder die Tastenkombination „Strg + S“. Nach dem Speichern ändert sich der Status von „neu – nicht gesichert“ auf „neu – gesichert“.
Formular-Seiten
Als Nächstes legt man die Formular-Seiten an. Hierzu nutzt man den Button „Seiten“, verwendet die Menüfunktion „Springen > Seiten“ oder die F6-Taste.
Anschließend werden die Formular-Seiten angezeigt. Zum jetzigen Zeitpunkt existieren noch keine Seiten und deshalb werden auch noch keine angezeigt.
Um die erste Seite anzulegen, gibt man im Feld „Seite“ die ID der Seite an. In diesem Beispiel wählen wir „ERSTE“.
Nachdem man die Enter-Taste gedrückt hat, wird die Seite angelegt und erscheint in der Übersicht. In diesem einfachen Beispiel würde es ausreichen, keine Folgeseite zu definieren. Da eine Folgeseite sinnvoll ist, wird die Folgeseite angegeben.
Eine Folgeseite ermöglicht die Erstellung eines Dokuments über mehrere Seiten hinweg. Möchte man beispielsweise eine Bestellung mit mehreren Positionen angeben, so würde ein Formular ohne Folgeseite einfach nach der einen Seite enden. Mit der Angabe von einer Folgeseite kann sich das Formular über mehrere Seiten erstrecken.
Formular-Fenster
Als Nächstes legt man das Formular-Fenster an. Hierfür wählt man den Button „Fenster“, die Menüfunktion „Springen > Fenster“ oder die F7-Taste.
Dadurch wird automatisch das Hauptfenster MAIN mit dem gleichnamigen Fenstertyp generiert. Bei Bedarf kann man die Bedeutung anpassen.
In diesem Beispiel benötigen wir ein weiteres Fenster für die Adresse des Lieferanten. Das weitere Fenster kann man einfach über den Menüpfad „Bearbeiten > Anlegen Element…“ oder der Tastenkombination „Umschalt + F6“ anlegen.
Daraufhin kann man die ID des Fensters und dessen Beschreibung angeben.
Nachdem man das zusätzliche Fenster angelegt hat, erscheint es in der Übersicht mit dem Fenstertyp VAR (Rücksetzendes Fenster).
Formular-Seitenfenster
Durch die Formular-Seitenfenster fügen wir die Seite und das Fenster zusammen. Hierzu klicken wir auf den Button „Seitenfenster“, wählen die Menüfunktion „Springen > Seitenfenster“ oder nutzen die F8-Taste.
Zu Beginn wird die Seite ERSTE ohne Fenster dargestellt. Nun soll das Fenster ADRESSE auf der ersten Seite dargestellt werden. Das Fenster ADRESSE kann man auf die Seite ERSTE hinzufügen, in dem man in der Menüfunktion „Bearbeiten > Anlegen Element…“ wählt oder die Tastenkombination „Umschalt + F6“ nutzt.
Durch Doppelklick auf die Zeile mit der ADRESSE kann man dieses Fenster hinzufügen.
Nun muss man die Fensterbreite und -höhe angeben. Die Angaben „Linker Rand“ und „Oberer Rand“ sind optionale Angaben. Wenn man diese leer lässt, erscheint das Fenster in der linken oberen Ecke.
Neben der Adresse des Lieferanten möchten wir den Standardtext auf der Seite noch hinzufügen. Deshalb fügen wir das Fenster MAIN ebenfalls hinzu. Dabei fällt auf, dass das Fenster ADRESSE nicht mehr hinzugefügt wird. Da es den Fenstertyp VAR hat, kann es nur einmal hinzugefügt werden.
Über das Formular-Seitenlayout kann man das eingestellte Layout einfach überprüfen. Das Seitenlayout kann über die Menüfunktion „Hilfsmittel > Seitenlayout“ aufgerufen werden. Für die Druckansicht ist die Auswahl eines Ausgabegerätes notwendig. Hier kann man das häufig im System eingerichtete Ausgabegerät LOCL benutzen.
Formular-Textelemente
Nun wurde der grobe Rahmen des SAPscript-Formulars erstellt. Dieses Formular gilt es mit den notwendigen Daten zu füllen. Hierfür eignen sich vor allem die Textelemente.
Zuerst wird das Textelement für das Fenster ADRESSE erstellt. Hierfür gilt man im Formular-Seitenfenster doppelt auf die Zeile ADRESSE. Nach dem Doppelklick wird diese Zeile blau markiert und die entsprechenden Attribute im unteren Bereich angezeigt.
Die Textelemente können über den entsprechenden Button, der Menüfunktion „Bearbeiten > Textelemente“ oder der F9-Taste aufgerufen werden.
Abhängig von den Einstellungen und dem SAP-Release öffnet sich Microsoft Word oder der interne Texteditor als integrierter Editor. Bei einem externen Editor (z.B. Microsoft Word) muss man die SAP-GUI-Sicherheitsabfrage bestätigen bzw. zulassen.
Den Zeileneditor kann man ebenfalls hierfür nutzen. Den Zeileneditor kann man einfach über „Springen > Editor wechseln“ nutzen.
Die Textelemente werden mit dem Formular gespeichert. Ein explizites Speichern ist an dieser Stelle deshalb nicht notwendig. Anschließend kann man die Anzeige der Textelemente mit dem Zurück-Button oder der F3-Taste verlassen.
Daraufhin kann man die Textelemente für das Fenster MAIN noch definieren.
Formular-Absatzformate
Um das Layout noch zu verschönern, pflegt man die Absatzformate. Die Absatzformate kann man über den entsprechenden Button, der Menüfunktion „Springen > Absatzformate“ oder der Tastenkombination „Umschalt + F4“ aufrufen.
Daraufhin gibt man im Feld „Absatz“ die ID des Absatzes ein. Nach Drücken der Enter-Taste wird diese angelegt und erscheint in der Übersicht. Nachdem die Beschreibung angepasst wurde, kann das Absatzformat gespeichert werden. Die anderen Einstellungen können unberührt bleiben.
Formular-Grundeinstellungen
Nachdem nun wichtige Teilobjekte des Formulars angelegt und gepflegt wurden, muss man die Grundeinstellungen pflegen.
Die Grundeinstellungen ruft man im Formular-Kopf auf. Zuerst muss man hierfür den Button, die Menüfunktion „Springen > Kopf“ oder die F5-Taste verwenden.
Anschließend kann man die Grundeinstellungen über den Button „Grundeinstellungen“ aufrufen. Jetzt pflegt man den Default-Absatz und die Startseite entsprechend.
Anschließend können alle Änderungen und Anpassungen gespeichert werden. Ein Speichern ist auch während der Erstellung der Teilobjekte jederzeit möglich.
Das Formular kann produktiv verwendet werden, indem aktiviert wird. Das Formular aktiviert man über die Menüfunktion „Formular > Aktivieren“. Nach dem Aktivieren ändert sich der Status von „neu – gesichert“ auf „aktiv – gesichert“.
Testdruck
Nun wurde das Formular mit SAPscript erfolgreich erstellt. Alle notwendigen Teilobjekte wurden definiert und gepflegt. Über einen Testdruck kann man sich das Ergebnis anzeigen lassen.
Den Testdruck ruft man über die Menüfunktion „Hilfsmittel > Testdruck“ auf. Daraufhin gibt man sein gewünschtes Ausgabegerät an (z.B. LOCL) und drückt auf „Druckansicht“.
MS Word als Editor in SAPscript setzen
Microsoft Word kann einfach als Editor für SAPscript gesetzt werden. Hierfür gibt es aus meiner Sicht zwei einfache Möglichkeiten:
- Transaktion I18N
- Report RSCPSETEDITOR
Zum einen kann man in der Transaktion I18N (Internationalisierung) in den I18N-Systemparameter den Parameter sapscript_editor auf den Wert MSWord setzen. Die I18N-Systemparameter können in der Baumstruktur im Knoten „I18N Menü > I18N-Customizing > I18N-Systemparameter“ aufgerufen werden.
Im ABAP-Editor (Transaktion SE38) oder in der Programmausführung (Transaktion SA38) kann man den Report RSCPSETEDITOR aufrufen und die Checkbox SAPscript aktivieren.
Näheres ist im SAP-Hinweis 742661 beschrieben.
SAPscript vs SAP Smart Forms
Im Folgenden werden die Vor- und Nachteile von SAPscript im Vergleich zu SAP Smart Forms dargestellt.
Vorteil SAPscript | Nachteil SAPscript |
---|---|
Weite Verbreitung | Keine grafische Darstellung von Tabellen |
Viele Formular-Vorlagen | Schlechte Integration an das Transportwesen |
Detaillierte Fehlersuche möglich | Keine nativen Übersetzungen |
Schnellere Generierung | Für Barcode-Ausgabe Zusatzmodul notwendig |
Kommandoknoten in Standardtexten | Nachträgliches Hinzufügen von Zeilen |
Layout Editor veraltet | |
Keine Weiterentwicklung | |
Keine Versionsverwaltung | |
Versteckte Aktivierungsmöglichkeit |
SAPscript vs SAP Interactive Forms by Adobe
Im Folgenden werden die Vor- und Nachteile von SAPscript im Vergleich zu SAP Interactive Forms by Adobe dargestellt.
Vorteil SAPscript | Nachteil SAPscript |
---|---|
Weite Verbreitung | Schlechtere Performance |
Detaillierte Fehlersuche mit ABAP möglich | Keine Weiterentwicklung |
Standardmäßig in der SAP GUI vorhanden | Keine Versionsverwaltung |
Layout Editor veraltet | |
Aufwendige Fehleranalysen | |
Keine interaktiven Eingaben möglich | |
Hoher Entwicklungsaufwand |
SAPScript – Wichtige Transaktionen
Transaktionscode | Beschreibung |
---|---|
SE71 | SAPscript Formular |
SE72 | SAPscript Stile |
SE78 | Verwaltung von Formulargrafiken |
SO10 | SAPscript Standardtexte |
Über den Autor
Mein Name ist Andreas Geiger und ich bin ein erfahrener Senior SAP Berater. Mit mehr als 10 Jahren Berufserfahrung habe ich mehrere SAP-Projekte erfolgreich abgeschlossen und umfangreiche Kenntnisse in verschiedenen Bereichen wie SAP FI, SAP MM und ABAP erworben. Nun möchte ich mein Wissen mit Dir teilen, um Dir einen Mehrwert zu bieten und Dich bei Deiner täglichen Arbeit mit dem SAP-System zu unterstützen.
ERP UP unterstützen
Wenn Du mit ERP UP zufrieden bist, kannst Du mich gerne unterstützen. Dabei gibt es unzählige Möglichkeiten, wie Du mich einfach und schnell unterstützen kannst. Wie Du genau ERP UP unterstützen kannst, erfährst Du hier. Vielen Dank.
Nachteil von Adobe Interactive Forms ist auch, dass zusätzliche Lizenzkosten notwendig werden. Und braucht man da nicht auch noch den ADS (Adobe Document Server)?