Objekt „Alternative“ im LiveCycle Designer
Ein Alternativknoten wird genutzt, um im Formular abhängig von Bedingungen verschiedene Variablen auszugeben. Alternativknoten werden im Kontext angelegt und dort eine Eintrittsbedingung formuliert, die zum Eintreten des Ereignisses TRUE (bzw. FALSE) führt. Im Layout wird ein Teilformular auf diesen Alternativknoten referenziert und in Abhängigkeit der Ereignisse TRUE und FALSE werden zugehörige Teilformulare (mit deren Feldern) ausgeführt.
Hier im Beispiel wird eine Variable ZZTKNONN (Kontraktnummer) im Formular ausgegeben oder ausgeblendet.
Vor- und Nachteile „Alternativen“ gegenüber Scripting
- Das Objekt „Alternativen“ sind in Adobe Forms wesentlich unständlicher einzusetzen als in Smart Forms.
- Das Objekt Alternative in Adobe Forms entsteht immer aus der Kombination der Anlage der Alternative und dessen Bedingung(en) im Kontext und der Verwendung der Alternative im LiveCycle Designer. Aus meiner Sicht wenig übersichtlich und umständlich.
- Bei Alternativen hat man den Nachteil, dass man lediglich 2 Zustände hat: TRUE und FALSE. Werden z. B. 3 verschiedene Zustände abgefragt, so müsste man bei Verwendung von Alternativen im TRUE-Ereignis oder im FALSE-Ereignis eine weitere TRUE-FALSE-Alternative anlegen.
- Im Scripting im LiveCycle Designer kann man die Abfrage von Zuständen oft deutlich transparenter abbilden, indem man im Scripting Felder, bzw. Teilformulare ausblendet, die eine Bedingung nicht erfüllen. In diesem Fall sollten die entsprechenden Feldnamen im LiveCycle Designer ein Präfix „Scr_“ bekommen, damit der Formularentwickler schnell auf das Vorhandensein von Scripting stösst, was in diesem Fall die Anzeige von Feldern beeinflusst. Es ist ein häufiges Problem bei Formularentwicklern, dass sie sich nicht erklären können, warum ein Feld nicht angezeigt wird - bis sie auf Scripting stossen, was unter gewissen Bedingungen Felder/Teilformulare ausblendet. Diese Gefahr wird deutlich minimiert durch das Präfix.
- Ein Vorteil von Alternativen ist, dass man die beiden Zustände und deren Bedingungen direkt im Kontext sieht. Meist werden diese Alternativen dann auch im LiveCycle Designer genutzt und können über das Verwendungsfenster im LiveCycle Designer identifiziert werden.
Anlage Alternative im Kontext
Anlage Knotentyp "Alternative" über Rechtsklick
Attribute pflegen
Auf Alternativbedingungen klicken
Alternativbedingung(en) pflegen
Definieren mehrere Einzelbedingungen im Zusammenhang das Ereignis TRUE oder FALSE, dann werden die Einzelbedingungen beim Feld „Operator“ mit „und“ oder „oder“ verknüpft.
Anlage Alternative im LiveCycle Designer
Teilformular hinzufügen
Datenbindung Teilformular auf Alternativknoten im Kontext
Der untergeordnete Teilformularsatz und dessen Teilformulare referenzieren dann relativ in der Datenbindung zu diesem übergeordneten Teilformular.
Teilformularsatz hinzufügen
Der Teilformularsatz dient der Aufnahme der alternativen Teilformulare TRUE und FALSE.
Alternativen bearbeiten
Bindung Teilformulare TRUE und FALSE auf Ereignisse $.TRUE und $.FALSE
Teilformulare TRUE und FALSE
Teilformular TRUE bindet auf $.TRUE und wird beim Eintreten des Ereignisses TRUE ausgeführt.
Teilformular FALSE bindet auf $.FALSE und wird beim Eintreten des Ereignisses FALSE ausgeführt.
Textknoten in Teilformular
Der Textknoten wird ganz normal an ein Kontextfeld gebunden. Wenn das Kontextfeld nicht unter dem Knoten TRUE hängt, dann wird in der Bindung der komplette Kontextpfad gebunden, wie hier im Beispiel (es ist nur ein Ausschnitt des kompletten Pfades zu sehen). Andernfalls würde hier auch die relative Bindung "$.Feld" erfolgen.
Literatur
- SAP Interactive Forms by Adobe, von Jürgen Hauser, Andreas Deutesfeld, Stephan Rehmann, Thomas Szücs und Philipp Thun, S. 163ff.