Welche Grundlagen sollten Sie in der Formularentwicklung berücksichtigen?
Die wenigsten Formulare werden über ihren gesamten Lebenszyklus nur von einem einzigen Entwickler betreut. Wenn Sie Formulare programmieren, sollten Sie daher ein paar Konventionen beherzigen, um Struktur und Lesbarkeit des Codes zu verbessern und anderen Entwicklern später die Einarbeitung zu erleichtern.
Ich möchte Ihnen drei Konventionen vorstellen, die sich in der Praxis als grundlegend bewährt haben:
- MVC-Pattern
- Umgang mit Formulartexten
- Skripte in Adobe Forms
Das MVC-Pattern
Eine der wichtigen Grundlagen der Formularentwicklung ist die Programmierung nach dem MVC-Pattern. Darunter ist eine strikte Trennung von Datenmodell, Controller und View zu verstehen. Die Daten eines Formulars werden in ABAP hinterlegt und programmiert. Hier ist es nicht notwendig, Kenntnisse über Formulare und Formulartechnologien zu besitzen. Die Datenbeschaffung kann also ein beliebiger ABAP-Entwickler übernehmen.
Anschließend müssen die Daten für das Formular aufbereitet werden. In Smart Forms und Adobe Forms gibt es hierfür eine Schnittstelle. Die Daten aus der Datenbeschaffung müssen so aufbereitet werden, dass die Schnittstelle korrekt befüllt wird. Das Mapping der Datenbeschaffung mit der Schnittstelle erfolgt ebenfalls im ABAP.
Das Formular wird letztendlich mit den Daten befüllt, die aus der befüllten Schnittstelle kommen. Die Anzeige der Daten wird über eine Datenbindung realisiert. Wenn ein Textfeld eine Datenbindung mit der passenden Komponente aus der Schnittstelle besitzt, dann weiß das Textfeld, welche Daten es anzeigen soll.
Es ist theoretisch auch möglich, die Datenbeschaffung direkt in der Formularschnittstelle oder im Formular durchzuführen. Allerdings widerspricht das dem MVC-Pattern und dieser unsauberere Programmierstil ist nicht zu empfehlen.
Verwendung von Texten
Ein Formular besteht im Idealfall aus verschiedenen Texten, die aus dem SAP-System stammen. Falls Änderungen an Texten notwendig sind, können diese direkt in SAP durchgeführt werden. Es ist nicht ratsam, die Texte direkt in das Formularlayout zu bringen.
Ansonsten muss das Formularlayout für jede Textänderung geändert werden. Bei Adobe Forms setzt das außerdem einen installierten Adobe LiveCycle Designer voraus.
Skripte in Adobe Forms
In Adobe Forms gibt es die Möglichkeit, durch das sogenannte Skripting die Darstellung des Formulars zu verändern. Es ist beispielsweise möglich, mathematische Operationen durchzuführen. Anhand des Ergebnisses kann ein Textfeld verschiedene Farben annehmen.
Allerdings kostet das Skripting im Formular Zeit und Performance. Aus diesem Grund empfehle ich Ihnen, alles in SAP auszulagern, was sich auch dort lösen lässt. Dort können Änderungen leichter durchgeführt werden. So können Sie im Formularkontext festlegen, unter welcher Bedingung eine Komponente dort befüllt wird, anstatt dies per Skript abzufragen. Folgendes Motto sollten Sie daher beachten:
So viel SAP wie möglich, so viel Formular wie nötig.
Skripting ist beispielsweise bei der Ermittlung von Seitenzahlen sinnvoll, da sich dies nicht im ABAP lösen lässt. Ansonsten dient das Formular ausschließlich zur Anzeige der Daten, die in der Schnittstelle mitgegeben werden.
Ihre Erfahrungen
Konnte ich Ihnen mit meinen Erfahrungen zu den Grundlagen der Formularentwicklung helfen? Welche Erfahrungen haben Sie mit Ihren Formularen gemacht? Haben Sie weitere Fragen zum Thema? Kontaktieren Sie mich gerne – ich helfe Ihnen dann bei Ihrem individuellen Anliegen oder tausche mich auch einfach gerne mit Ihnen zum Thema aus.
Websession: Grundlagen der Formularentwicklung
Sie benötigen Hilfe bei den Grundlagen Ihrer Formularentwicklung? Lassen Sie uns in einer kostenlosen Websession über Ihre Herausforderungen und Wünsche sprechen.