synalis IT-Blog

Unterformulare auf Model-Driven Apps-Projekten?

Bringen Sie Ihre Benutzeroberfläche von Hopp zu Top

Sobald das Datenmodell steht, rückt ein Thema besonders in den Fokus – das Benutzeroberflächen‑Design. Es ist eines der zentralen Elemente, mit denen wir uns tagtäglich beschäftigen, denn ein gutes Design unterstützt Anwender dabei, ihre Aufgaben effizienter, klarer und konsistenter zu erledigen.

Der Baukasten für Model‑Driven Apps bringt bereits viele grundlegende Designprinzipien mit sich, etwa eine klare Struktur, konsistente Komponenten und vordefinierte Layouts. Doch auch innerhalb dieses Rahmens gibt es Funktionen, die oft übersehen werden, mit denen sich eine Benutzeroberfläche von einem rein funktionalen Formular zu einem echten Arbeitstool entwickeln lässt.

In diesem Beitrag stelle ich Ihnen einen solchen Baustein vor: Formulare auf Formularen, im Folgenden Unterformulare genannt und zeigen, wie diese gezielt eingesetzt werden können.

Model-Driven App Formulare

Unabhängig davon, ob Sie bereits Erfahrung mit Model‑Driven Apps haben oder neu in das Thema einsteigen, lohnt sich ein kurzer Blick auf die grundlegenden Elemente.

1) Model-Driven App Formulare

Wenn Sie eine Model‑Driven App als Oberfläche für Ihr Datenmodell verwenden, wird für jede benutzerdefinierte Tabelle automatisch mindestens ein Hauptformular angelegt. Dieses stellt alle definierten Spalten strukturiert dar.


Abbildung 1: Model-Driven App Formular „Anmeldeformular Veranstaltung“

2) Allgemeine Designmöglichkeiten

Der Model‑Driven‑App‑Editor bietet bereits zahlreiche Optionen zur Gestaltung von Formularen, unter anderem:

  • bis zu drei nebeneinanderliegende Abschnitte mit oder ohne Überschrift
  • mehrspaltige Layouts innerhalb von Abschnitten
  • Registerkarten zur inhaltlichen Strukturierung
  • Einbindung einer Zeitleiste
  • Darstellung von Ja / Nein‑Feldern als Toggle oder Kontrollkästchen
  • weitere Formatierungs‑ und Layoutoptionen

Diese Funktionen helfen dabei, die Spalten einer Tabelle übersichtlich darzustellen. Sie beschränken sich jedoch immer auf Daten, die direkt auf der aktuellen Tabelle liegen.

3) Schnellansicht und Schnellerfassung

Für die Zusammenarbeit zwischen verbundenen Tabellen stellt Power Apps zwei weitere wichtige Bausteine zur Verfügung.

Über eine Suchspalte verbundene Tabellen können mithilfe eines Schnellansichtsformulars auf einem anderen Formular angezeigt werden.

Schnellansichtsformular Unterkunft

Die dargestellten Informationen sind dabei nur lesend verfügbar. Das entsprechende Schnellansichtsformular wird direkt an der Zieltabelle definiert.

Die Schnellerfassung ermöglicht es, einen neuen Datensatz direkt über eine Suchspalte anzulegen, ohne das aktuelle Formular zu verlassen.

Schnellerfassungsformular Kontakt

Der neu erstellte Datensatz wird automatisch gespeichert und in der Suchspalte hinterlegt. Voraussetzung hierfür ist ein aktiviertes Schnellerfassungsformular an der jeweiligen Tabelle.

Das Problem komplexerer Beziehungen

Doch was ist, wenn Informationen angezeigt oder bearbeitet werden sollen, die nicht direkt mit der aktuellen Tabelle verbunden sind?

Beispiel:

  • Anmeldeformular VeranstaltungVeranstaltungZimmer
  • Die Veranstaltung findet in einer Unterkunft in einem bestimmten Zimmer statt

Während sich Informationen zur Unterkunft problemlos über eine Schnellansicht darstellen lassen, stellt sich die Frage:

Wie können zusätzliche Zimmerinformationen wie Kosten oder Kapazität angezeigt und bearbeitet werden – ohne diese Daten redundant zu speichern?

Genau hier kommen Unterformulare ins Spiel.

Unterformulare – Funktion und Einsatz

Unterformulare sind dazu da, ein Formular einer anderen Tabelle direkt in ein bestehendes Formular einzubetten, auch wenn die Beziehung über mehrere Suchspalten verläuft.

In unserem Beispiel ergibt sich dabei folgender Weg:

Anmeldeformular Veranstaltung -> Veranstaltung -> Zimmer

Unser Ziel ist es folgende Informationen aus dem Formular der Tabelle „Zimmer“ auf dem Formular „Anmeldeformular Veranstaltung“ anzuzeigen:

  • Zimmernummer
  • Maximale Personenanzahl
  • Kosten
  • Unterkunft inklusiver Schnellansicht für Frühstückkosten und Land
  • Toggle Mitbuchung Essen?

Umsetzung Schritt für Schritt

1) An der Zieltabelle „Zimmer“ wird ein zusätzliches Hauptformular angelegt

  • Hinweis: Das System kopiert hierbei automatisch das bestehende Formular inklusive aller Ereignisse
  • Wichtig: Vorhandene Skripte oder Plug‑ins prüfen und ggf. entfernen -> dies immer nur mit Absprache Ihres Entwicklerteams umsetzen
  • Formular auf die benötigten Felder reduzieren und eindeutig benennen

2) Ein separates Hauptformular für die Tabelle „Veranstaltung“ erstellen:

  • Wichtig: Vorhandene Skripte oder Plug‑ins prüfen und ggf. entfernen -> dies immer nur mit Absprache Ihres Entwicklerteams umsetzen
  • Formular auf benötigte Felder reduzieren und eindeutig benennen
  • Unterformular-Komponente hinzufügen
    => Auswahl der relevanten Suchspalte (Zimmer)
    => Auswahl des jeweils vorgesehenen Formulars (Zimmer Unterformular)
Linke Navigationsleiste Editor Model-Driven App

Pop-Up Formularkomponente

3) Ein separates Hauptformular für die Tabelle „Veranstaltung“ erstellen:

Unterformular-Komponente hinzufügen

  1. Auswahl der relevanten Suchspalte (Veranstaltung)
  2. Auswahl des jeweils vorgesehenen Formulars (Veranstaltung Unterformular)

4) Neu angelegte Hauptformulare der App hinzufügen

Einsicht und Bearbeitung einer Unterformular Komponente

Nach dem Einfügen einer Unterformular Komponente erscheint folgende Meldung:

Meldung Formularkomponente im Editor

Dies ist die Standardmeldung, sofern die Suchspalte auf dem aktuellen Datensatz nicht befüllt ist. Aufgrund dessen erkennen Sie nicht sofort auf einen Blick, worauf die Unterformular Komponente schaut. Wenn Sie auf die Komponente klicken, öffnet sich rechts folgende Übersicht:

Rechte Navigationsleiste Model Driven App Formularkomponente

Da die Unterformular-Komponente basierend auf einer Suchspalte funktioniert, sehen Sie oben, auf welche Tabelle diese schaut. Im Abschnitt „Komponenten“ unter „Form Component Control“ können Sie die Suchspalte sowie das Formular einsehen und bearbeiten.

Ergebnis und Verhalten im Betrieb

Sobald im Anmeldeformular Veranstaltung eine Veranstaltung ausgewählt ist, lädt das Unterformular automatisch die verknüpften Zimmerinformationen.

Endergebnis Formularkomponente
  • Die angezeigten Felder sind sichtbar eingebettet
  • Lesefelder können gesperrt werden
  • Bearbeitbare Felder (z. B. Toggle) speichern Änderungen direkt am verknüpften Datensatz, obwohl dieser nicht direkt mit dem Formular verbunden ist

Das Unterformular greift somit ohne Datenkopien direkt auf den jeweiligen Datensatz zu.

Unser Beispiel bildet die kleinste Verzweigung ab, bei der die Unterformulare genutzt werden können, diese können aber so weit verzweigt werden, wie Sie es sich wünschen.

Fazit: Unterformulare steigern die Effizienz

Unterformulare sind eine leistungsfähige, aber oft unterschätzte Komponente in Model‑Driven Apps. Richtig eingesetzt stehen sie für

  • effizientere Arbeitsabläufe,
  • weniger Kontextwechsel,
  • höhere Datenkonsistenz
  • und die Vermeidung redundanter Datenpflege.

Demgegenüber stehen ein höherer Konfigurations‑ und Dokumentationsbedarf sowie mögliche Wechselwirkungen mit Skripten und Plug‑ins. Daher empfiehlt sich der Einsatz immer in Abstimmung mit dem Entwicklerteam.

Korrekt angewendet bieten Unterformulare jedoch einen echten Mehrwert für Anwender und eröffnen neue Möglichkeiten für durchdachte, leistungsfähige Benutzeroberflächen in Model‑Driven Apps.

Diesen Beitrag teilen:

Ihre Ansprechpartnerin

    Laura Krüger, Team Manager Sales