4.12 Master-Detail-Zuordnung — Datensätze verknüpfen und zuordnen

4.12 Master-Detail-Zuordnung — Datensätze verknüpfen und zuordnen

Anleitung zur Konfiguration von Master-Detail-Zuordnungen im Admin Client — 1:n- und m:n-Beziehungen zwischen Datenobjekten.

1

Überblick

Die Master-Detail-Zuordnung ist ein Ansichtselement-Typ, der die Verwaltung von 1:n- und m:n-Beziehungen zwischen Datensätzen ermöglicht. Seit V2 basiert das Element auf drei unabhängigen Dimensionen: Ansichtsmodus (Overview/Assign), Fokusmodus (Hervorheben/Filtern) und Kind-Darstellung (Tags/Liste). Kind-Daten können jetzt aus einem referenzierten Ansichtselement (ChildViewElement) abgeleitet werden.

Typische Anwendungsfälle:

  • Einem Projekt Mitarbeiter zuordnen (m:n über Junction-Tabelle)
  • Einem Kunden Tags oder Kategorien zuweisen (m:n)
  • Aufgaben einem Vorgang zuordnen (1:n über Fremdschlüssel)
  • Positionen einem Auftrag zuweisen (1:n)
Zwei Beziehungstypen 1:n (OneToMany): Ein Kind gehört zu genau einem Master. Das Kind hat ein Fremdschlüsselfeld, das auf den Master verweist (z. B. VorgangId in der Aufgabe).
m:n (ManyToMany): Ein Kind kann mehreren Mastern zugeordnet sein. Die Zuordnung erfolgt über eine Junction-Tabelle (z. B. ProjektMitarbeiter).
2

Ansichtsmodi (V2)

Das Element unterstützt zwei Ansichtsmodi, zwischen denen der Anwender über die Toolbar umschalten kann:

ModusBeschreibung
Übersicht Master-Datensätze als Karten mit zugeordneten Kind-Einträgen (Tags oder Liste). Sortierbare Karten über dynamische Toolbar-Buttons.
Zuordnung Zweispaltige Ansicht: Master-Grid links, Kind-Karten rechts. Zuordnung per Drag & Drop oder Doppelklick. Wahl zwischen Hervorheben (markiert zugeordnete Einträge farblich) und Filtern (zeigt nur zugeordnete).
ChildViewElement (V2) Kind-Daten können aus einem referenzierten Ansichtselement (ChildViewElementId) abgeleitet werden, statt direkt aus einer Datenquelle. Das Kind-Ansichtselement wird vollständig instanziiert und filtert automatisch auf den gewählten Master-Datensatz. Die Kind-Spalten nutzen dabei die Spaltenkonfiguration des referenzierten Elements — Lookups, Formatierung und Checkboxen funktionieren automatisch.
Szenario: Mitarbeiter einem Projekt zuordnen Sie möchten in einer Ansicht alle Projekte als Karten anzeigen. Jede Karte zeigt die zugeordneten Mitarbeiter als Tags an. Per Transfer-Liste können verfügbare Mitarbeiter dem jeweiligen Projekt zugewiesen oder entfernt werden. Die Zuordnung erfolgt über eine Junction-Tabelle ProjektMitarbeiter mit den Fremdschlüsseln ProjektId und MitarbeiterId.
3

Schritt für Schritt: Zuordnung einrichten

  1. Ansichtselement anlegen (Typ: MasterDetailAssignment)

    Navigieren Sie im Admin Client zur gewünschten Ansicht und legen Sie ein neues Ansichtselement an. Wählen Sie als Typ MasterDetailAssignment. Weisen Sie dem Element eine Master-Datenquelle zu — diese liefert die Datensätze, die als Karten dargestellt werden.

  2. Kind-Datenquelle zuweisen

    Wechseln Sie zum Tab „Master-Detail-Zuordnung“ in den Ansichtselement-Einstellungen. Wählen Sie dort die Kind-Datenquelle aus. Diese Datenquelle liefert die Datensätze, die den Master-Karten zugeordnet werden (z. B. Mitarbeiter, Tags, Positionen).

  3. Zuordnungsfelder konfigurieren

    Konfigurieren Sie die Verknüpfung zwischen Master und Kind:

    • Master-Schlüsselfeld: Das Primärschlüsselfeld des Masters (z. B. ProjektId)
    • Kind-Fremdschlüsselfeld: Das Feld im Kind, das auf den Master verweist (bei 1:n) oder das FK-Feld in der Junction-Tabelle (bei m:n)
    • Bei m:n: Zusätzlich die Junction-Entity und deren FK-Felder zum Master und Kind angeben
  4. Darstellung und Verhalten konfigurieren

    Legen Sie fest, wie Master-Karten und Kind-Einträge angezeigt werden sollen. Konfigurieren Sie Titel, Untertitel, Farben und den Darstellungsmodus der Kinder (Tags oder Liste).

4

Einstellungen im Überblick

Master-Karte

Einstellung Beschreibung
Titel-Feld Pflicht Feldname für den Karten-Titel des Masters (z. B. Projektname)
Titel-Format Optional Format-Template für den Titel, z. B. {Name} - {Ort}. Wenn gesetzt, wird das Titel-Feld als Platzhalter verwendet.
Untertitel-Feld Optional Optionales Feld für eine zweite Textzeile unter dem Titel
Akzentfarbe-Feld Optional Feldname, der einen Hex-Farbcode enthält. Die Karte erhält einen farbigen Akzent.

Kind-Zuordnung

Einstellung Beschreibung
Kind-Ansichtselement V2 Referenz auf ein bestehendes Ansichtselement, das die Kind-Daten liefert. Wenn gesetzt, werden Spalten, Formatierung und Lookups aus diesem Element übernommen. Hat Vorrang vor der Kind-Datenquelle.
Kind-Datenquelle Pflicht Die Datenquelle, aus der die zuzuordnenden Datensätze stammen (Fallback, wenn kein Kind-Ansichtselement gesetzt)
Kind-Textfeld Pflicht Feldname für die Anzeige der Kind-Einträge (z. B. Nachname)
Kind-Textformat Optional Format-Template für die Kind-Anzeige, z. B. {Nachname}, {Vorname}
Tooltip-Feld Optional Feldname für einen Tooltip beim Hover über einen Kind-Eintrag
Darstellungsmodus Tags (kompakte Pill-Tags nebeneinander) oder Liste (tabellarische Zeilen untereinander). Standard: Tags.

Beziehungskonfiguration

Einstellung Beschreibung
Beziehungstyp Pflicht 1:n (OneToMany): Kind hat FK zum Master. m:n (ManyToMany): Zuordnung über Junction-Tabelle.
Master-Schlüsselfeld Pflicht Primärschlüssel des Masters (z. B. ProjektId)
Kind-Fremdschlüsselfeld Pflicht FK-Feld im Kind (bei 1:n) oder in der Junction-Tabelle (bei m:n)
Junction-Entity Nur bei m:n Die Verknüpfungstabelle, die Master und Kind verbindet
Junction-FK Master Nur bei m:n Fremdschlüssel zum Master in der Junction-Tabelle
Junction-FK Kind Nur bei m:n Fremdschlüssel zum Kind in der Junction-Tabelle

Verhalten und Anzeige

Einstellung Beschreibung
Standard-Ansichtsmodus V2 Legt fest, welcher Modus beim Öffnen aktiv ist: Übersicht (Standard) oder Zuordnung.
Zuordnungsmodus erlauben V2 Wenn aktiviert, kann der Anwender in den Zuordnungsmodus wechseln. Standard: Ja.
Kind-Anzeigespalten V2 Kommagetrennte Feldnamen, die im Listen-Modus als Spalten angezeigt werden. Wird nur genutzt, wenn ein Kind-Ansichtselement gesetzt ist.
Zuordnung erlauben Wenn aktiviert, können Benutzer im Bearbeitungsmodus Zuordnungen ändern. Standard: Ja.
„Nicht zugeordnet“ anzeigen Zeigt eine zusätzliche Karte für Kind-Datensätze, die keinem Master zugeordnet sind (bei 1:n). Standard: Ja.
Anzahl-Badge anzeigen Zeigt die Anzahl der zugeordneten Kinder als Badge in der Kartenüberschrift. Standard: Ja.
Leere Karten anzeigen Master-Karten ohne zugeordnete Kinder werden trotzdem dargestellt. Standard: Ja.
Max. sichtbare Kinder Maximale Anzahl sichtbarer Kind-Einträge pro Karte. Überschüssige Einträge werden per Scroll erreichbar. 0 = unbegrenzt.
Sortierbare Felder Kommagetrennte Liste von Feldnamen, die als Sortier-Buttons in der Toolbar erscheinen. Wenn leer, werden Titel- und Untertitel-Feld als Fallback verwendet.
5

Beispiel: Mitarbeiter einem Projekt zuordnen (m:n)

Sie möchten Projekte als Karten anzeigen und jedem Projekt Mitarbeiter zuordnen. Die Zuordnung erfolgt über eine Junction-Tabelle ProjektMitarbeiter.

  1. Voraussetzungen sicherstellen

    Stellen Sie sicher, dass folgende Datenobjekte existieren:

    • Projekt mit Primärschlüssel ProjektId
    • Mitarbeiter mit Primärschlüssel MitarbeiterId
    • ProjektMitarbeiter (Junction) mit ProjektId und MitarbeiterId
  2. Datenquellen anlegen

    Erstellen Sie je eine Datenquelle für Projekt (Master) und Mitarbeiter (Kind) mit den benötigten Ausgabespalten.

  3. Ansichtselement konfigurieren

    Legen Sie ein Ansichtselement vom Typ MasterDetailAssignment an und setzen Sie die Master-Datenquelle auf Projekt.

  4. Zuordnung einstellen

    Im Tab „Master-Detail-Zuordnung“:

    • Kind-Datenquelle: Mitarbeiter
    • Beziehungstyp: m:n (ManyToMany)
    • Master-Schlüsselfeld: ProjektId
    • Junction-Entity: ProjektMitarbeiter
    • Junction-FK Master: ProjektId
    • Junction-FK Kind: MitarbeiterId
    • Kind-Textfeld: Nachname
    • Kind-Textformat: {Nachname}, {Vorname}
  5. Master-Karte gestalten

    Setzen Sie das Titel-Feld auf Projektname und optional ein Untertitel-Feld (z. B. Status).

  6. Speichern und testen

    Speichern Sie das Ansichtselement. Im Userclient werden die Projekte als Karten angezeigt, mit den zugeordneten Mitarbeitern als Tags.

Tipp: Darstellungsmodus wählen Für wenige Zuordnungen pro Karte (z. B. Mitarbeiter, Tags) eignet sich der Modus Tags. Für viele Zuordnungen mit mehreren Spalten (z. B. Auftragspositionen) empfiehlt sich der Modus Liste.
UserClient → Projekte (Master) → zugeordnete Mitarbeiter (Detail)
Projekt ▲StatusProjektleiter
Projekt AlphaaktivSchmidt, A.
Projekt Betain PrüfungMüller, T.
Projekt GammaaktivWeber, L.
Mitarbeiter (Projekt Beta)RolleAufwand
Müller, T.Projektleiter40 h
Schmidt, A.Entwickler120 h
Becker, J.Tester30 h
6

Beispiel: Aufgaben einem Vorgang zuordnen (1:n)

Sie möchten Vorgänge als Karten anzeigen und die dazugehörigen Aufgaben darunter auflisten.

  1. Ansichtselement anlegen

    Erstellen Sie ein MasterDetailAssignment-Element mit der Datenquelle Vorgang als Master.

  2. Kind-Datenquelle und Beziehung konfigurieren

    Setzen Sie die Kind-Datenquelle auf Aufgabe. Wählen Sie den Beziehungstyp 1:n (OneToMany). Master-Schlüsselfeld: VorgangId, Kind-Fremdschlüsselfeld: VorgangId.

  3. Darstellung anpassen

    Bei vielen Aufgaben pro Vorgang empfiehlt sich der Darstellungsmodus Liste. Aktivieren Sie „Nicht zugeordnet“, um Aufgaben ohne Vorgangszuordnung sichtbar zu machen.

Hinweis: Junction-Entity bei m:n Bei m:n-Beziehungen muss die Junction-Tabelle als eigenständiges Datenobjekt im System angelegt sein. UDM erstellt diese Tabelle nicht automatisch. Stellen Sie sicher, dass die Junction-Entity die korrekten Fremdschlüssel zu beiden beteiligten Entities enthält.
Tipp: Sortierbare Felder Wenn Sie das Feld Sortierbare Felder leer lassen, verwendet das System automatisch das Titel- und Untertitel-Feld als Sortieroptionen in der Toolbar. Für individuelle Sortierung geben Sie die gewünschten Feldnamen kommagetrennt an.
„Nicht zugeordnet“-Karte Bei 1:n-Beziehungen kann es Kind-Datensätze geben, die keinem Master zugeordnet sind (z. B. Aufgaben ohne Vorgang). Die Option „Nicht zugeordnet“ anzeigen erzeugt eine zusätzliche Karte, in der diese Datensätze gesammelt werden. Bei m:n-Beziehungen ist diese Option in der Regel nicht relevant.
7

Kind-Spalten: Tabellarische Anzeige im Listen-Modus

Im Darstellungsmodus Liste können Sie festlegen, welche Felder der Kind-Datensätze als Spalten in einer Tabelle angezeigt werden. So erhalten Sie eine strukturierte Übersicht über die zugeordneten Einträge.

Wann Kind-Spalten verwenden? Kind-Spalten eignen sich besonders, wenn die Kind-Datensätze mehrere relevante Felder haben, die auf einen Blick sichtbar sein sollen — z. B. Auftragspositionen mit Artikel, Menge und Preis. Ohne konfigurierte Kind-Spalten zeigt der Listen-Modus nur den Kind-Anzeigetext in einer einfachen Liste.

Kind-Spalten konfigurieren

  1. Tab „Kind-Spalten“ öffnen

    Navigieren Sie in den Ansichtselement-Einstellungen zum Tab „Kind-Spalten“ (unterhalb von „Master-Detail-Zuordnung“).

  2. Spalten hinzufügen

    Wählen Sie aus der Dropdown-Liste ein Feld der Kind-Datenquelle aus und klicken Sie auf „Hinzufügen“. Das Feld wird als neue Spalte in der Liste aufgenommen.

  3. Spalten-Eigenschaften anpassen

    Für jede Spalte können Sie folgende Eigenschaften setzen:

    Eigenschaft Beschreibung
    Feldname Der technische Feldname aus der Kind-Datenquelle (wird automatisch gesetzt)
    Titel Die Spaltenüberschrift, die dem Benutzer angezeigt wird. Wenn leer, wird der Feldname verwendet.
    Tooltip Optionaler Hilfetext für die Spalte
    Sichtbar Steuert, ob die Spalte in der Tabelle angezeigt wird. So können Spalten temporär ausgeblendet werden, ohne sie zu löschen.
  4. Reihenfolge ändern und Spalten entfernen

    Verwenden Sie die Pfeil-Buttons, um die Reihenfolge der Spalten anzupassen. Über den Löschen-Button können nicht mehr benötigte Spalten entfernt werden.

Tipp: Fallback ohne Kind-Spalten Wenn keine Kind-Spalten konfiguriert sind, zeigt der Listen-Modus die Kinder als einfache einzeilige Einträge an — genau wie bisher. Die tabellarische Ansicht wird nur aktiviert, wenn mindestens eine sichtbare Kind-Spalte vorhanden ist.
8

Häufige Fragen

Was ist der Unterschied zwischen 1:n und m:n?

Bei 1:n gehört ein Kind zu genau einem Master (z. B. eine Aufgabe gehört zu einem Vorgang). Bei m:n kann ein Kind mehreren Mastern zugeordnet sein (z. B. ein Mitarbeiter arbeitet in mehreren Projekten). Für m:n wird eine Junction-Tabelle benötigt.

Muss ich eine Junction-Tabelle manuell anlegen?

Ja. Die Junction-Entity wird wie jedes andere Datenobjekt im Admin Client angelegt. Sie benötigt mindestens zwei Fremdschlüsselfelder — eines zum Master und eines zum Kind.

Kann ich die Zuordnung im Userclient deaktivieren?

Ja. Deaktivieren Sie die Option „Zuordnung erlauben“ in den Einstellungen. Die Zuordnung wird dann nur lesend angezeigt, Benutzer können keine Änderungen vornehmen.

Was passiert, wenn ein Master keine Kinder hat?

Wenn „Leere Karten anzeigen“ aktiviert ist (Standard), wird die Karte trotzdem dargestellt — ohne Kind-Einträge. Wenn die Option deaktiviert ist, werden nur Karten mit mindestens einer Zuordnung angezeigt.

Wie begrenze ich die Anzahl sichtbarer Kinder?

Setzen Sie „Max. sichtbare Kinder“ auf die gewünschte Anzahl (z. B. 5). Überschüssige Einträge werden per Scroll erreichbar. Der Wert 0 bedeutet unbegrenzt.

Kann ich das Textformat der Kind-Anzeige anpassen?

Ja. Verwenden Sie das Feld Kind-Textformat mit Platzhaltern, z. B. {Nachname}, {Vorname}. Wenn kein Format gesetzt ist, wird der Wert des Kind-Textfelds direkt angezeigt.

Wie aktiviere ich die tabellarische Darstellung der Kinder?

Wechseln Sie in den Darstellungsmodus Liste und konfigurieren Sie im Tab „Kind-Spalten“ mindestens eine sichtbare Spalte. Die Tabelle erscheint automatisch, sobald Kind-Spalten konfiguriert und sichtbar sind.

Was ist der Unterschied zwischen Übersicht und Zuordnung? (V2)

Im Übersichtsmodus sehen Sie Master-Karten mit ihren zugeordneten Kind-Einträgen — ideal zur schnellen Übersicht. Im Zuordnungsmodus erscheint eine zweispaltige Ansicht mit Master-Grid links und Kind-Karten rechts, in der Sie per Drag & Drop oder Doppelklick Zuordnungen ändern können.

Was bewirkt das Kind-Ansichtselement (ChildViewElement)? (V2)

Statt die Kind-Daten direkt aus einer Datenquelle zu laden, können Sie ein bestehendes Ansichtselement referenzieren. Dieses wird vollständig instanziiert — alle Spaltenkonfigurationen, Lookups und Formatierungen werden automatisch übernommen. Beim Klick auf einen Master-Datensatz filtert das Kind-Element automatisch auf die zugeordneten Einträge.

Was ist der Fokusmodus? (V2)

Im Zuordnungsmodus stehen zwei Fokus-Modi zur Verfügung: Hervorheben markiert die zugeordneten Einträge farblich, während alle sichtbar bleiben. Filtern zeigt nur die zugeordneten Einträge und blendet alle anderen aus.