Formulare sind in SAP die Basis für den Druck von individuellen Rechnungen, Bestellbestätigungen, Lagerlisten und vielen anderen Dokumenten. Sie können auf Basis von drei unterschiedlichen Formulartechniken erstellt werden, jede mit ihren Vor- und Nachteilen:

SAPscript

SAPscript ist die älteste Technologie für Formulare in SAP, seit R/2-Tagen im Einsatz und in vielen Unternehmen immer noch weit verbreitet. Sie sind Grundlage für unzählige Geschäftsdokumente. Solange nichts geändert werden muss, funktionieren die Formulare stabil. Bei Massendrucken ist SAPscript häufig performanter als Smart Forms und Adobe Interactive Forms. Vorhandene Formulare in SAPscript werden deshalb in der Regel nicht auf Smart Forms oder Adobe Forms migriert.

Wenn die Formulare vollständig mit SAPscript erstellt worden sind, ist es oft nicht empfehlenswert, sie auf eine andere Technologieplattform zu migrieren. Formulare und Rahmenprogramm müssten in der Regel neu erstellt werden – ein aufwändiger und fehleranfälliger Prozess.

2 Gründe, bestehende Formulare mit anderen Plattformen neu zu erstellen sind:

• Es gab häufig Ergänzungen durch im Laufe der Jahre wechselnde Entwickler. Damit wurden die Formulare nach und nach immer unübersichtlicher und aufwendiger zu pflegen.

• Das Formular muss interaktiv werden. Dies ist nur in Adobe Interactive Forms möglich. Hier kann es sinnvoll sein, ein bestehendes SAPscript-Formular als Adobe Forms-Formular neu zu erstellen.

Einschränkungen bei SAPscript:

• fehlende Archivierung und Versionierbarkeit
Wenn eine Änderung an einem Formular vorgenommen wird, kann diese nicht mehr rückgängig gemacht werden. SAPscript-Formulare existieren immer nur in einer Version im System. Es ist unmöglich, eine weitere Version des Formulars zu generieren, um sie später wieder zu nutzen. Durch Download des Formulars aus dem System und späteren Upload dieser Version in das SAP-System kann das Problem aber umgangen werden.

• Unübersichtlichkeit bei komplexen Formularen
Die Gliederungsmöglichkeiten in SAPscript sind nur sehr eingeschränkt. Bei sehr komplexen Formularen ist oft stundenlange Einarbeitung notwendig, bevor ein Entwickler Änderungen an diesem Formular durchführen kann.

Smart Forms

Smart Forms wurde im Rahmen des Release 4.6c als zweite Formulartechnologie von SAP eingeführt. SAPscript wird zwar bis heute wegen der hohen Verbreitung weiter unterstützt, aber nicht mehr weiterentwickelt.

Smart Forms wurde als großer Fortschritt in der SAP Formulartechnologie gesehen. Die grafische Benutzeroberfläche ermöglicht die Formularerstellung auch ohne tiefgehende Programmierkenntnisse. Datenbeschaffung und Layout wurden besser getrennt, auch wenn kein vollständiges WYSIWYG erreicht wurde. Die Ausgabe von Barcodes ist beispielsweise immer noch nicht einfach möglich.

In der Praxis kann ein neues Formular mit Daten aus dem SAP-System einfach direkt für den Geschäftsprozess erstellt werden. Wenn das neue Formular aktiviert ist, entspricht das Smartform-Formular einem Funktionsbaustein, der in der gewünschten SAP-Anwendung aufgerufen werden kann. Die zu druckenden Anwendungsdaten werden abgerufen und über die Funktionsbausteinschnittstelle an das Smart Form übergeben. Datenbeschaffung und Logik eines Formulars sind dabei voneinander getrennt.

Ein Vorteil ist, dass bei Änderungen an der Logik separat Änderungen am Smart Form erfolgen können. Nur bei komplexeren Abfragen sind weiterhin Programmierkenntnisse erforderlich, um die gewünschten Daten via Abfrage aus der Datenbank zu erzeugen.

Die Migration von Formularen von SAPscript ist aufwendig und nur begrenzt möglich. Deshalb sollte darauf verzichtet werden, wenn es keine sachlich zwingenden Gründe gibt.

Adobe Interactive Forms

Nach SAPscript und Smart Forms wurde 2005 mit Adobe Interactive Forms als dritte Formulartechnologie von SAP vorgestellt. Sie entstand in Zusammenarbeit mit Adobe und ist gegenwärtig die aktuellste Formulartechnologie von SAP.

Adobe Interactive Forms ist die Standardtechnologie für SAP, um Formulare zu erstellen. Mit jedem Enhancement Package werden von SAP mehr konvertierte Druckformulare von SAPscript oder SAP Smart Forms ausgeliefert. (als tooltip: Mit dem Erscheinen des Enhancement Package 4 für SAP ERP 6.0 sind von SAP mehr als 2200 Adobe Interactive Druckformulare verfügbar )

Voraussetzungen für den Einsatz von Adobe Interactive Forms

Um Interactive Forms nutzen zu können, ist der Einsatz von Drittsoftware notwendig:
Adobe Reader ab Version 8.0 muss installiert sein, ebenso Adobe LiveCycle Designer. Zusätzlich muss ein eigenes JAVA-System bereitgestellt werden um den Betrieb des Adobe Document Services (ADS) gewährleisten zu können. Dieses System wird dann mit dem ABAP-Anwendungs-Server verbunden. Schließlich muss ABAP-seitig die notwendige Konfiguration vorgenommen worden sein.

Bei der Erstellung und Bearbeitung kann man nun auf einen intuitiven WYSIWYG-Editor zurückzugreifen, ein großer Fortschritt zur bestehenden Layoutentwicklung in SAPscript und SAP SmartForms. Durch die vereinfachte Bearbeitung lassen sich bei Layoutgestaltung und vor allem -anpassung die Wartungskosten von Formularen enorm senken.

Adobe Forms sind echte, von Adobe zertifizierte PDF-Dokumente. Deshalb kann man auch Funktionalitäten wie Digitale Signaturen und Verschlüsselung nutzen. Layout und Businesslogik sind sauber getrennt. Die Technologie entspricht dank Verwendung des PDF/A-Formats und von XML dem aktuellen Standard der Technik. JavaScript oder die ebenfalls verfügbare SkriptspracheFormCal machen es möglich, mit Adobe Interactive Forms interaktive Formulare zu entwickeln. Im Vergleich zu Smartforms bieten Interactive Forms eine Reihe von Vorteilen:

 

Vorteile von Adobe Interactive Forms gegenüber Smart Forms:

Das Formular und die Schnittstelle können dokumentiert werden.
Die Formularausgabe erfolgt standardmäßig im plattformübergreifenden Dateiformat PDF oder in den Druckersprachen PS, PCL oder ZPL
PDF-Felder oder das ganze Formular können eingabefähig geschaltet werden. Die Eingaben in interaktiven Feldern können gespeichert und in das SAP-System zurückgespeichert werden. Ein PDF kann dynamisch sein. In Abhängigkeit von Feldeingaben ändert sich die Sichtbarkeit/Eingabefähigkeit von Feldern.
Die erzeugten PDF-Dokumente lassen sich mit dem installierten Mailclient des PCs verschicken.
Grafiken können in das Formular eingebettet werden, damit sie nicht ständig vom Applikationsserver oder aus dem Internet geladen werden müssen. Im LiveCycle-Designer gibt es wesentlich mehr grafische Möglichkeiten als bei Smart Forms, beispielsweise Kästen mit abgerundeten Ecken oder die einfache Möglichkeit, Text um 90, 180 oder 270 Grad zu drehen.
Im Kontext lassen sich auch Adressen, Texte und Grafiken explizit aufführen und sind so übersichtlich sichtbar. Knoten lassen sich im Kontext inaktiv setzen und sind optisch auch sofort als solche erkennbar. Die Daten dieser Knoten werden auch nicht zum Formular übertragen. Das spart Performance bei der Formularerzeugung. In der Layoutansicht des Formulars sind nur die Felder sichtbar, die im Kontext aufgeführt und aktiv sind.
Im Adobe LiveCycle Designer gibt es viele vordefinierte Muster, um z. B. das Datum in verschiedenen Formaten auszugeben. Es lassen sich eigene Muster definieren.
Der Seitenhintergrund (Masterseite) lässt sich vom Vordergrund trennen. Das erleichtert die Übersicht und vereinfacht es, den Seitenhintergrund von Formular zu Formular zu kopieren.
Formulare können digital signiert werden.
Felder lassen sich im LiveCycle Designer sperren, damit sie nicht versehentlich angeklickt werden können.
Es gibt eine Suchfunktion nach Knoten in der Schnittstelle und im Kontext. Allerdings, wie bei Smart Forms, kann man auch im LiveCycle Designer nicht nach Knoten/Feldern suchen. Eine Rechtschreibprüfung ist im LiveCycle Designer möglich.
Übersetzungsfunktion ist aus dem Formular heraus möglich.
Das Adobe-Formular ist an die Versionshistorie in SAP angeschlossen und somit auch besser gegen den Datenverlust geschützt als SmartForm-Formulare, wo es keine Versionshistorie gibt.
Im LiveCycle-Designer (Layout-Ansicht Formular) sind durch ein Symbol die Felder gekennzeichnet, die im Formular verwendet werden. Die Datenbindung und Variablen in Bedingungen können per Drag&Drop erfolgen.
Die Entwurfsansicht stellt die einzelnen Felder im Formular dar und es lassen sich Testdaten generieren, die den PDF-Vorschlag im Formular mit Variablenausgabe ermöglicht.
Es gibt Assistenten, die eine Schnittstelle zu einem Web Dynpro generieren und in Web Dynpro gibt es ein eigenes User-Interface-Element für Adobe Forms.

Nachteile von Adobe Interactive Forms gegenüber Smart Forms:

  • Konfiguration Framework
    • Für Adobe Forms muss in der SAP-Basis ein Java-Stack installiert sein und der Adobe Document Service (ADS) konfiguriert werden
    • der Adobe LiveCycle Designer muss separat installiert werden, da es unter Windows läuft und in SAP eingebettet ist
    • Die Smart Forms-Enwicklungsumgebung ist vollständig in SAP integriert und es ist keine Konfiguration der Entwicklungsumgebung nötig
  • SAP-Integration Framework
    • da der Adobe LiveCycle Designer nicht nahtlos in SAP integriert ist, können Data-Dictionary-Objekte nicht per Doppelklick in SE11 angezeigt werden
    • der Adobe LiveCycle Designer benötigt viele Systemressourcen im PC und braucht relativ viele Sekunden zum Starten
    • der Adobe LiveCycle Designer neigt gelegentlich zu Abstürzen und kann dabei alle gearteten Modi des SAP-GUI mit zum Absturz bringen
  • Programmiersprache
    • Codierte Formularlogiken sind im Adobe Forms-Formular auf Ebene der Schnittstelle in ABAP zu programmieren und auf Ebene der Layoutgestaltung im Adobe LiveCycle Designer in JavaScript oder FormCalc zu programmieren
    • In Smart Forms erfolgt sowohl die Programmierung im Rahmenprogramm und im Formular komplett in ABAP und kann vollständig debuggt werden
    • Es gibt wenige SAP-Entwickler, die sich nicht nur mit ABAP, sondern auch mit Form Calc bzw. JavaScript und dem Adobe LiveCycle Designer auskennen
    • JavaScript und FormCalc lassen sich nur schwer, bzw. gar nicht debuggen

Sind SAPscript-Formulare im Einsatz und erfüllen ihren Zweck, lohnt es sich nicht, sie durch neue Formulare zu ersetzen. Neue Formulare in SAPscript zu erstellen empfielt sich nicht.

Will man eine reine SAP-basierte Lösung, ist Smart Forms die passende Plattform, solange nicht Interaktivität oder Mehrsprachigkeit gefordert sind.

Adobe Interactive Forms ist die flexibelste und zukunftssicherste Formulartechnik in SAP. Hier sind interaktive Formulare, anspruchsvolle Designs und die einfache Erstellung über eine komfortable Entwicklungsumgebung möglich. Allerdings müssen neben SAP noch weitere Softwarepakete installiert und lizensiert werden, um Adobe Interactive Forms nutzen zu können.