Relationen
  • Ausgangslage: alle Objekte einer Kategorie haben die gleichen Eigenschaften/Datenfelder
  • Ziel: Objekte mit unterschiedlichen Eigenschaften sollen in einer Beziehung stehen
  • Lösung: Verknüpfung von Objekten verschiedener Kategorien über Relationen
Definiton einer Relation

Relation wird als Klasse abgebildet, die folgende Kriterien erfüllt:

  • Bekommt über UsageHint den Typ ‚CardoPuzzleNode2NodeRelation‘
  • Hat genau zwei Entitäten
  • Entität 1: Verweis auf Klasse A
  • Entität 2: Verweis auf Klasse B, welche in einer Beziehung zu Klasse A stehen soll
  • (zukünftig) Kardinalität über Angabe: Minimales/Maximales Vorkommen
 

Achtung: Dieser Klassentyp dient ausschließlich der Definition der Relation und hat nichts mit den bisherigen Datenklassen zu tun!

Einrichten von Relationen

Voraussetzung: Für Relation geeignete Kategorien, müssen das Interface IPuzzleCategoryDefinitionRelationSupport implementieren

Vorgehensweise:

  1. Registrierung der benötigten Kategorien
    Jede Kategorie, wenn Sie Beziehungsklassen unterstützt, bringt Ihre eigene ID für die zu erwartende Relationsklasse mit. Diese Bezeichnung wird in der Grafik (siehe Punkt 3) dargestellt.

    Wichtiger Hinweis : Für die Definitionen von Relationen für das BGV - Kataster ist jedoch zu beachten, dass die einzelnen Kategorien einzelne konfigurierbare Parameter mitbringen und die ID der Relationsklasse im Parameter Beziehungsklassen separat anzugeben ist (freie Definition). Dabei ist zu beachten, dass jede Klasse, die miteinander verknüpft werden soll, die selbe Bezeichnung für diesen Parameter besitzt. 
    Möchten Sie z. B. Kompensationen und Eingriffe miteinander in Beziehung stellen, muss bei der Registrierung im Parameter "Beziehungsklassen" jeweils die selbe Bezeichnung (z. B. REL_EINGRIFF_KOMPENS - die ID kann der Nutzer selbst vergeben) vergeben werden.
    Pro Kategorie die gleiche ID für die Beziehungsklasse!

    Relationsklassen.PNG
    Kategorie im BGV-KATASTER

  2. Legen Sie die erwartete Relationsklasse im Ordner Beziehungsklassen an. Notieren Sie als ID die ID, welche Sie unter Punkt 1 vergeben haben, siehe Punkt 2.

    relationen_01.png

  3. Beachten Sie, dass die Klassen ID, der zuerwartenden ID der Relationsklassen entsprechen muss:
    relationen_02.png
  4. unterhalb der Relationsklasse werden genau zwei Entitäten angelegt.
    Für jede Klasse muss genau eine Entität angelegt werden.
    Beispiel:
    Entität 1: Verweis auf Klasse 1
    Entität 2: Verweis auf Klasse 2, welche in einer Beziehung zu Klasse 1 stehen soll
  5. Richten Sie unter Verweis auf Unterklasse die jeweilige komplexe Klasse ein. Beachten Sie auch hier, dass Sie IDs der komplexen Klasse bereits in der Kategorie vorgegeben sind.
    relationen_03.png
     (Parameter an den Entitäten: Verweis auf eine Unterklasse - wählen Sie die Klasse aus der Dropdownliste aus. )