Formulare einbetten (Sub-Formulare)

Einige Element Container bieten die Möglichkeit andere, zum Kontext passende, Formulare wie Erfassungsmasken, Dashboards oder Portale (Lizenzabhängig) einzubinden.
Hinweis: Eingebettete Formulare werden nicht automatisch aktualisiert, wenn das Original geändert wurde! Dies kann über die Aktualisieren-Funktion (siehe Unten) manuell geschehen.

Nachfolgendes Bild zeigt die Konfigurationsmöglichkeiten des Editors.

images/download/attachments/55935919/image2020-6-23_8-29-57-version-1-modificationdate-1592893798790-api-v2.png

1

Öffnet einen Dialog zum Auswählen des Formulars, welches eingebettet werden soll. Die Formulare, welche hier zur Verfügung stehen hängen von der Art des Hauptformulars und den lizenzierten Modulen ab.
Nachfolgende Abbildung zeigt den Dialog zur Formularauswahl

images/download/attachments/55935919/image2020-1-10_15-30-10-version-1-modificationdate-1592893568943-api-v2.png

(A) Die Art des einzubettenden Formulars (z.B. Portal, Sendungsmaske, ...)
(B) Auswahl des gewünschten Formulars
(C) Fügt das ausgewählte Formular in den Element Container ein.
Achtung: Diese Aktion überschreibt den Inhalt des Containers komplett, ohne Rücksicht auf vorher getätigte Modifikationen!

(D) Bietet die Möglichkeit die Abschnittelemente des Formulars mit einzufügen

2

Weist darauf hin, dass der ausgewählte Container bereits eine Form einbettet.
Ein Klick auf diesen Hinweis zeigt um welches Formular es sich handelt oder warnt, wenn diese nicht mehr zugreifbar ist

3/4

Ist bereits ein Formular eingebettet, kann dieses über den Aktualisieren Knopf (3) neu geladen oder gar komplett entfernt (4) werden.

Hinweis: Beim Aktualisieren wird die aktuelle Version der referenzierten Form in den Container geladen und dabei sämtlicher bisheriger Inhalt samt getätigter Modifikationen überschrieben!

5

Bettet der Container ein Formular ein, steht die Option "Automatisch aktualisieren" zur Verfügung.
Beim Aktivieren dieser Option wird beim Laden der Form automatisch die aktuellste Version des eingebundenen Formulars dargestellt. Der einbettende Container stellt dann ein entsprechendes Symbol als Hinweis dar images/download/attachments/55935919/image2020-6-23_8-43-41-version-1-modificationdate-1592894623178-api-v2.png .
Da etwaige Konfigurationen innerhalb des eingebundenen Formulars beim Laden ohnehin verworfen würden, kann ein automatisch aktualisiertes Formular auch nicht mehr konfiguriert werden. Es können lediglich Elemente darin verknüpft werden.
Achtung: Um die volle Formularfunktionalität beim Verknüpfen von Elementen gewährleistet zu können, sollte immer sichergestellt werden, dass das eingebettete Formular nicht dahingehend manipuliert wird. Hierfür finden keine automatisierten Prüfungen statt.

Zyklische Formabhängigkeit
Beim automatischen Aktualisieren, muss darauf geachtet werden, dass keine zyklischen Abhängigkeiten zwischen eingebundenen Formularen verursacht werden.
z.B. Form A → Form B → Form A oder auch Form A → Form B → Form C → Form A oder Form A → Form B → Form C → Form B
Da das Formular in so einem Fall beim Laden in eine Endlosschleife laufen würde, wird stattdessen eine Warnung vom entsprechenden Container angezeigt: images/download/attachments/55935919/image2020-6-23_8-41-17-version-1-modificationdate-1592894478906-api-v2.png

Element Container, welche bereits ein Formular einbetten werden im Elementbaum entsprechend hervorgehoben (siehe Bilder unten).

images/download/attachments/55935919/image2019-4-4_16-11-57-version-1-modificationdate-1592893568939-api-v2.png

images/download/attachments/55935919/image2019-4-4_16-12-51-version-1-modificationdate-1592893568941-api-v2.png

Weitere Infos

Beim Einfügen einer Form werden sämtliche Element-IDs der eingefügten Elemente mit einem Präfix versehen (z.B. "_RT1_"). Sämtliche Referenzen innerhalb des Sub-Formulars werden entsprechend ebenfalls angepasst.
So werden Kollisionen von doppelten IDs verhindert, während die Formularfunktionalitäten des eingebetteten Formulars gewährleistet bleiben.
Definiert das Formularelement selbst ein Datenfeld, wird dieses auch auf den einfügenden Container gesetzt.