Sehen Sie sich Hinweise, Werkzeuge und Geodatabase-Funktionen in ArcGIS Pro an, wenn Sie zugehörige Daten aus einer Beziehungsklasse verwenden.
Kopieren von Daten in eine Beziehungsklasse
Mit Kopieren und Einfügen können Sie beliebige Feature-Datasets, Feature-Classes oder -Tabellen aus einer Geodatabase in eine Ziel-Geodatabase kopieren. Jedes Feature-Dataset, jede Feature-Class und jede Tabelle, die Sie kopieren und einfügen, resultiert in einem neuen Feature-Dataset, einer neuen Feature-Class und einer neuen Tabelle in der Ziel-Geodatabase mit allen Features oder Datensätzen aus den Quelldaten.
Beim Kopieren und Einfügen werden auch alle abhängigen Daten kopiert. Angenommen, Sie kopieren eine Feature-Class oder -Tabelle, die an einer Beziehungsklasse beteiligt sind. In diesem Fall werden neben der Beziehungsklasse auch alle anderen Feature-Classes oder -Tabellen in der Beziehungsklasse kopiert. Dies gilt auch für eine Feature-Class mit feature-bezogenen Annotationen; die feature-bezogene Annotation wird ebenfalls kopiert. Wenn Sie eine Feature-Class mit Attributregeln kopieren, werden alle Attributregeln und alle zusätzlichen Feature-Classes oder Sequenzen, die in den Attributregeln referenziert werden, kopiert. Wenn eine Feature-Class über eine Domäne, einen Subtype oder einen Index verfügt, werden diese Elemente auch kopiert.
Vorsicht:
Mit dem Geoverarbeitungswerkzeug Feature-Class in Geodatabase werden nur einfache Feature-Classes kopiert. Wenn beispielsweise Feature-Classes in zu exportierenden Features-Datasets enthalten sind, werden nur die Feature-Classes kopiert. Das Feature-Dataset sowie etwaige erweiterten Elemente, wie z. B. Topologien, Beziehungsklassen oder Anlagen, werden nicht in die Ausgabe-Geodatabase kopiert.
Bearbeiten von Daten in einer Beziehungsklasse
Eine Beziehungsklasse kann so eingerichtet werden, dass beim Modifizieren eines Objekts auch zugehörige Objekte automatisch aktualisiert werden. Dies kann beinhalten, dass zugehörige Features physisch entfernt, zugehörige Objekte gelöscht oder Attribute aktualisiert werden. Beispielsweise können sie eine Beziehung so einrichten, dass immer dann, wenn Sie einen Leitungsmast verschieben, auch die daran befestigten Transformatoren und andere Komponenten verschoben werden. Indem Sie Regeln festlegen, können Sie für eine Beziehungsklasse beschränken, welche Art von Beziehung gültig ist. Beispielsweise kann ein Mast maximal drei Transformatoren unterstützen. Ein Stahlmast kann z. B. Transformatoren der Klasse A, aber keine Transformatoren der Klasse B unterstützen. Mit Beziehungsklassen lässt sich die referenzielle Integrität zwischen verbundenen Klassen aktiv verwalten, selbst wenn eine von ihnen der ArcGIS Pro-Sitzung nicht hinzugefügt wurde. Wenn ein Objekt, das mit anderen Objekten an einfachen Beziehungen beteiligt ist, aus der Geodatabase gelöscht wird, werden alle seine Beziehungen ebenfalls gelöscht. Wenn es sich bei dem gelöschten Objekt um das Ursprungsobjekt handelt, ist der Fremdschlüssel in allen zugehörigen Zielobjekten Null. Das Ursprungsobjekt bleibt unberührt, wenn es sich bei dem gelöschten Objekt um ein Zielobjekt handelt.
Angenommen, die Beziehungen werden als Zeilen in einer Zwischentabelle verwaltet (Viele-zu-Viele-Beziehungen oder attribuierte Beziehungen). Wenn ein Ursprungs- oder Zielobjekt und seine Beziehungen gelöscht werden, werden die Zeilen, die diesen Beziehungen entsprechen, aus der Zwischentabelle gelöscht.
Im Bereich Attribute können Sie Beziehungen zwischen ausgewählten Features erstellen und entfernen sowie neue Beziehungen zwischen ausgewählten Features und nicht räumlichen Datensätzen in einer Tabelle hinzufügen. Die verknüpfen Features müssen an derselben Beziehungsklasse beteiligt sein.
Weitere Informationen zum Bearbeiten von Daten in einer Beziehungsklasse finden Sie unter Bearbeiten von Feature-Beziehungen.
Indem Sie zugehörige Objekte automatisch aktualisieren lassen, können Sie mithilfe einer Beziehungsklasse verhindern, dass Sie zusätzliche Bearbeitungsoperationen durchführen müssen.
Weitere Informationen zum Bearbeiten und Verwalten von in einer Enterprise-Geodatabase gespeicherten Beziehungsklassen und ihren zugehörigen Daten finden Sie unter Versionieren von Daten in einer Beziehungsklasse.
Editor-Tracking und Beziehungsklassen
Das Editor-Tracking ist eine Einstellung für Feature-Classes und -Tabellen, die Informationen zu vorgenommenen Einfügungen und Aktualisierungen automatisch aufzeichnet. Es wird registriert, wer die Daten erstellt oder geändert hat, und es wird ein Zeitstempel des Bearbeitungszeitpunkts gespeichert. Das Editor-Tracking gilt nur für Vorgänge an vorhandenen Datasets und nicht für Vorgänge, in denen Datasets erstellt werden.
Das Editor-Tracking wird nicht für alle Typen von Beziehungsklassen unterstützt. Beim Erstellen einer Beziehungsklasse mit Viele-zu-Viele-(M:N-)Beziehungsarten oder mit Attributen wird eine Zwischentabelle erstellt. Das Editor-Tracking kann nur für diese tabellenbasierten Beziehungsklassen aktiviert werden.
Teilungsmethode für Beziehungsklasse festlegen
Wenn eine Linien- oder Polygon-Feature-Class erstellt wird, wird standardmäßig automatisch ein Teilungsmodell für die Feature-Class erstellt. Mit dem Teilungsmodell wird bestimmt, wie die Geometrie des Features und dessen Attribute in der Tabelle geteilt werden, wenn ein Feature bei der Bearbeitung geteilt wird.
Neben der Definition des Teilungsmodells für eine Feature-Class können Sie auch die Teilungsmethode für eine Beziehungsklasse definieren. Mit der Teilungsmethode für Beziehungsklasse wird bestimmt, wie zugehörige Datensätze in der Zieltabelle behandelt werden, wenn ein Feature in der Ursprungs-Feature-Class bei der Bearbeitung geteilt wird.
Abhängig vom Typ der Beziehungsklasse (einfach oder kombiniert) können unterschiedliche Verhaltensweisen für die Teilungsmethode definiert werden, darunter Standard (einfach), Standard (kombiniert) und In Beziehung stehende Objekte duplizieren.
Weitere Informationen zum Festlegen und Verwenden der Beziehungsklasseneigenschaft finden Sie unter Festlegen einer Teilungsmethode für Beziehungsklassen.
Arbeiten mit Beziehungsattributen
ArcGIS Pro bietet Werkzeuge, die Sie beim Erstellen und Verwalten von Beziehungen unterstützen.
- Wenn im Ursprung und im Ziel Objekte vorhanden, diese aber noch nicht in Beziehung gesetzt sind, können Sie manuell einzelne Beziehungen in ArcGIS Pro einrichten. Wählen Sie hierzu ein oder mehrere Objekte im Ziel aus, wählen Sie ein oder mehrere Objekte im Ursprung aus, öffnen Sie das Dialogfeld Attribute, und stellen Sie eine Beziehung zwischen ihnen her. Dies ist möglich, wenn auf mindestens einer Seite der Beziehung Features vorhanden sind.
- Sie können ein Objekt auswählen und ein in Beziehung stehendes Objekt in einer in Beziehung stehenden Klasse erstellen, wenn es sich um einen neuen Datensatz in einer Tabelle und nicht um ein Feature handelt.
- Über das Dialogfeld Attribute können Sie ein Objekt aus einer Beziehung entfernen.
- Wenn Sie eine abhängige Beziehung oder eine Beziehung mit Regeln fertig bearbeitet haben, können Sie mithilfe der Validierungs- oder Einschränkungs-Attributregeln Ihre Arbeit überprüfen und die referenzielle Integrität Ihrer Daten erzwingen.
Attributindizes zu attribuierten Beziehungsklassen
Mithilfe von Attributindizes können Verbindungen beschleunigt und Datensätze, die einer Attributabfrage für Tabellen, Feature-Classes, Shapefiles oder attribuierte Beziehungsklassen entsprechen, schnell abgefragt werden.
Bei den meisten Attributabfragen kann ein Datensatz schneller mit einem Index gesucht werden, als wenn mit dem ersten Datensatz begonnen und dann die gesamte Tabelle durchsucht wird. Sobald eine Tabelle, Feature-Class, ein Shapefile oder eine attribuierte Beziehungsklasse Daten enthält, können Sie Attributindizes für die Felder erstellen, die Sie regelmäßig abfragen.
Attributregeln zu Daten in einer Beziehungsklasse
Mit Attributregeln können zugehörige Datensätze für Datasets, die an Beziehungsklassen in einer Geodatabase beteiligt sind, gelesen und bearbeitet werden.
Regeln können auf Feature-Classes und -Tabellen angewendet werden, die an Beziehungsklassen beteiligt sind. Dazu zählen Anlagen und Feature-bezogene Annotationen. Mit Attributregeln können darüber hinaus Bearbeitungsereignisse von Aktualisierungen abgefangen werden, die an Ursprungs- und Zielklassen in einer Beziehung vorgenommen werden; hierzu zähle das Hinzufügen, Entfernen oder Löschen eines zugehörigen Datensatzes. Beispielsweise kann eine Attributregel für eine sofortige Berechnung ein Attributfeld aktualisieren, wenn ein Feature zu einer zugehörigen Feature-Class hinzugefügt wird.
Bei der Arbeit mit Beziehungsklassen können Sie zugehörige Datensätze mit Arcade-Funktionen lesen, die Eingabe-Features annehmen und zugehörige Datensätze zurückgeben. Zugehörige Datensätze aus Beziehungsklassen können basierend auf der Rückgabe aus dem Wörterbuch auch mithilfe von Berechnungsregeln bearbeitet werden.
Mit Arcade-Funktionen und Skriptausdrücken in Berechnungsattributregeln kann auf zugehörige Daten in einer Beziehungsklasse zugegriffen werden. Lesen Sie zugehörige Datensätze zu einer Beziehungsklasse mithilfe der Arcade-Funktionen FeatureSetByName, FeatureSetByRelationShipName und FeatureSetByRelationshipClass. Sie können auch einen neuen zugehörigen Datensatz für eine Beziehungsklasse bei einer Aktualisierung hinzufügen.
Vorsicht:
Beim Erstellen einer Viele-zu-Viele- oder einer attribuierten Beziehungsklasse wird eine neue Zwischentabelle erstellt. Diese Zwischentabelle wird in der Geodatabase nicht als Objektklasse erkannt. Daher können Geodatabase-Verhaltensweisen wie z. B. Attributregeln, Domänen, Subtypes, Gruppenwerte und Standardwerte nicht auf diese Zwischentabelle angewendet oder mit ihr verwendet werden.
Zum Anwenden von Regeln für Beziehungsklassen können Validierungsattributregeln oder Beschränkungsattributregeln erstellt und angewendet werden.
Erfahren Sie mehr über Attributregeln und Beziehungsklassen und das Validieren von Beziehungsklassenregeln.
Versionieren von Daten in einer Beziehungsklasse
Um zuzulassen, dass andere Datenbankbenutzer die Inhalte beliebiger Daten in einer Datenbank oder Enterprise-Geodatabase anzeigen oder ändern können, müssen Sie ihnen die Berechtigung dazu erteilen.
Wenn einer Feature-Class oder einer Tabelle, die an einer Beziehungsklasse beteiligt ist, Berechtigungen erteilt werden, müssen diese sowohl der Quell- als auch der Zielklasse erteilt werden. Wenn sich die Quell- und Ziel-Feature-Classes innerhalb des gleichen Feature-Datasets befinden, gelten für sie dieselben Berechtigungen, da Berechtigungen auf Feature-Dataset-Ebene gewährt werden. Wenn sich die Ursprungs- und Ziel-Classes jedoch nicht im selben Feature-Dataset befinden, müssen Sie sicherstellen, dass sowohl den Ursprungs- als auch den Ziel-Classes die richtigen Berechtigungen erteilt werden. Wenn die Beziehungsklasse attribuiert ist oder die Beziehungsart "Viele-zu-Viele" lautet, werden Berechtigungen bei der Zuweisung an die Quellklasse automatisch an die Zwischentabelle weitergegeben.
Beziehungsklassen werden in der Geodatabase gespeichert und beibehalten und erleichtern das Bearbeiten. Eine Beziehungsklasse in einer Enterprise-Geodatabase wird mit den folgenden Optionen für den Bearbeitungs-Workflow unterstützt:
- Verzweigungsversionierung
- Traditionelle Versionierung
- Traditionelle Versionierung (Änderungen werden in Basistabelle verschoben)
- Nicht versionierte Bearbeitung
Wenn Beziehungsklassen und zugehörige Daten in einer Enterprise-Geodatabase gespeichert werden, können Änderungen an den Daten mithilfe von Versionen verwaltet werden. In einer Enterprise-Geodatabase mit mehreren Editoren ermöglichen Versionen es mehreren Benutzern, gleichzeitig mit denselben Features und Datensätzen in einer Beziehung zu arbeiten und sie zu bearbeiten, ohne dass Sperren angewendet oder Daten dupliziert werden müssen. Durch Versionen erhält jeder Editor seine eigene, isolierte Sicht auf die Daten.
Hinweise zur Verzweigungsversionierung und zu Beziehungsklassen
Sie können ein Dataset nicht als verzweigungsversioniert registrieren, wenn es an einer Beziehungsklasse beteiligt ist und der Primärschlüssel der Beziehung das Feld ObjectID ist.
Tipp:
Mithilfe des Geoverarbeitungswerkzeugs Beziehungsklasse migrieren können Sie eine Objekt-ID-basierte Beziehungsklasse zu einer Global-ID-basierten Beziehungsklasse migrieren.
Weitere Informationen zum Registrieren von Daten als nach Verzweigung versioniert
Bei der Verzweigungsversionierung können Konflikte während des Abgleichvorgangs erkannt werden, wenn die benannte Version mit der Default-Version abgeglichen wird. Beispielsweise tritt ein Konflikt auf, wenn ein topologisch in Beziehung stehendes Feature bzw. eine Beziehungsklasse sowohl in der aktuellen benannten Version als auch in der Default-Version geändert wird.
Tipp:
Überprüfen Sie die Bearbeitungskonflikte der benannten Version und der Default-Version in der Ansicht "Konflikte".
Bei der Verzweigungsversionierung entscheiden Sie beim Lösen von Konflikten, welche Repräsentation der Features und Attribute Sie beibehalten möchten. Wenn ein Feature aus einer ursprünglichen Beziehungsklasse gelöscht wird, kann dies eine Meldung auslösen, die darauf hinweist, dass ein Feature aus der Zielbeziehungsklasse gelöscht werden soll. Daher müssen Sie sich der Folgen bewusst sein, zu denen das Bearbeiten von Konflikten mit Quell-Feature-Classes, die an Beziehungsklassen beteiligt sind, führen kann.
Hinweise zur traditionellen Versionierung und zu Beziehungsklassen
Die traditionelle Versionierung bietet die Flexibilität für die Arbeit mit Versionen für lange Transaktionen beim direkten Zugriff über die Enterprise-Geodatabase und vereinfacht die Bearbeitung bei der Verwendung von Feature-Services für kürzere Transaktionen.
Die traditionelle Versionierung mit der Option zum Verschieben von Änderungen in die Basistabelle ist eine optionale Form der traditionellen Versionierung. Sie ermöglicht Bearbeitern und Anwendungen den direkten Zugriff auf die Basisdaten und gleichzeitig auch anderen Bearbeitern die Arbeit in eigenen isolierten Versionen. Diese Option zeichnet sich durch viele Vorteile der traditionellen Versionierung aus. Sie können jedoch nur einfache Features wie z. B. Punkte, Linien, Polygone, Annotationen und Beziehungsklassen bearbeiten. Sie können keine Feature-Class in einer Topologie, einem Netzwerk-Dataset oder einem Versorgungsnetz bearbeiten.
Bei der traditionellen Versionierung können während des Abgleichvorgangs Konflikte festgestellt werden, wenn Sie Änderungen an einer Version speichern und dasselbe Feature in dieser Version in einer anderen Editiersitzung aktualisiert wurde (oder in einer Editiersitzung aktualisiert und in der anderen gelöscht wurde).
Tipp:
Wenn Ihr Workflow bei der traditionellen Versionierung so aussieht, dass ein Benutzer Änderungen vornimmt und ein anderer den Abgleich ausführt, müssen Sie sicherstellen, dass dem Benutzer, der den Abgleich ausführt, alle Berechtigungen für alle Feature-Classes und -Tabellen zugewiesen sind, die in der Version geändert wurden. Andernfalls kann der Benutzer keinen Abgleich vornehmen. Wie oben im Abschnitt zur Gewährung von Berechtigungen beschrieben, muss der Benutzer, der den Abgleich ausführt, volle Berechtigungen sowohl für die Quell- als auch für die Zielklassen haben, die an einer Beziehungsklasse beteiligt sind, die geändert wurde, und zwar sowohl in Bezug auf einfache als auch auf abhängige Beziehungen. Bei diesem Workflow muss der Benutzer, der den Abgleich ausführt, ebenfalls über ausreichende Versionsberechtigungen verfügen. Der Benutzer, der den Abgleich ausführt, muss die abzugleichende Version ändern können, d. h. sie muss öffentlich sein. Außerdem muss er die Zielversion anzeigen können, d. h. der Benutzer muss die Version besitzen oder sie muss öffentlich oder geschützt sein.
Bei der traditionellen entscheiden Sie beim Lösen von Konflikten, welche Repräsentation der Features und Attribute Sie beibehalten möchten. Wenn ein Feature aus einer ursprünglichen Beziehungsklasse gelöscht wird, kann dies eine Meldung auslösen, die darauf hinweist, dass ein Feature aus der Zielbeziehungsklasse gelöscht werden soll. Daher müssen Sie sich der Folgen bewusst sein, zu denen das Bearbeiten von Konflikten mit Feature-Classes, die an Beziehungsklassen beteiligt sind, führen kann. Wenn Sie beispielsweise in Ihrem Stromversorgungs-Feature-Dataset einen Versorgungsmast löschen, der in einer Beziehung zu einem oder vielen Transformatoren steht, werden auch die zugehörigen Transformatoren gelöscht.
Verwenden der Geodatabase-Replikation mit Beziehungsklassen
Die Geodatabase-Replikation ermöglicht das Replizieren ausgewählter oder aller Datasets in einer Enterprise-Geodatabase. Mit Filtern und Beziehungsklassen können Sie die Features oder Zeilen definieren, die repliziert werden sollen. Zeilen und Features werden dem Replikat beim Erstellen basierend auf den in der Anwendung definierten Filtern hinzugefügt. Dann werden über die Beziehungsklassen zusätzliche Features und Zeilen angehängt.
Im folgenden Beispiel ist das Replikationsverhalten in Bezug auf zugehörige Objekte dargestellt. Bei dem in diesem Beispiel verwendeten Datenmodell handelt es sich um eine einfache Quell-Ziel-Beziehung zwischen Eigenschaften, Gebäuden und deren zugehörigen Annotationen.
Unter Vorbereiten von Daten für die Replikation erhalten Sie weitere Informationen.
Bei der Synchronisierung werden Beziehungen beibehalten. Bei der bidirektionalen und der unidirektionalen Replikation werden die gleichen Filter und Regeln für Beziehungsklassen, die bei der Replikaterstellung verwendet wurden, während der Synchronisierung angewendet. Wenn die zu sendenden Änderungen ermittelt werden, werden alle Änderungen an den einzelnen Replikat-Datasets ausgewertet, die seit der letzten Synchronisierung angewendet wurden. Erfüllt eine Änderung den Filter des Replikats, wird sie synchronisiert.
Beispielsweise wurden einige Features einer Quellklasse, wie z. B. Gebäude, für die Replikation ausgewählt. Die Gebäude sind über eine einfache Beziehungsklasse mit Attributdatensätzen in einer Tabelle verknüpft. Die Datensätze sind dabei von der Replikation ausgeschlossen. Bei der Bearbeitung des Child-Replikats wurde ein Gebäude gelöscht. Um bei der Synchronisierung die Beziehung mit dem gelöschten Feature ungültig zu machen, wird der entsprechende Eintrag im Fremdschlüsselfeld der zugehörigen Zielklasse (Tabelle) auf NULL festgelegt.
Freigeben von Datasets mit einer Beziehungsklasse
Die Abfrage von in Beziehung stehenden Daten ist in Feature-Services möglich, jedoch nur dann, wenn die Beziehung über eine Geodatabase-Beziehungsklasse definiert wird und die Ursprungs- und Zieltabelle sich bereits vor der Veröffentlichung in der Karte befunden haben.
Um Abfragen zu zugehörigen Daten in einem Feature-Service oder gehosteten Feature-Layer zuzulassen, definieren Sie eine Beziehungsklasse zwischen der Feature-Class und der zugehörigen Tabelle oder Feature-Class. Die zugehörigen Daten, auf die über eine Beziehungsklasse zugegriffen wird, werden in den von Ihnen veröffentlichten Feature-Service einbezogen. Um Abfragen zu unterstützen, die in Beziehung stehende Objekte zurückgeben, müssen Sie sowohl die Tabelle als auch den Layer in der Beziehungsklasse in die veröffentlichte Karte einbeziehen. Der Feature-Service ignoriert die Beziehung, wenn die Karte weder den Quell- noch den Ziel-Layer oder weder die Quell- noch die Zieltabelle enthält.
Hinweis:
Bei attributierten Beziehungsklassen müssen Sie zudem die Beziehungsklassentabelle in die Karte einbeziehen.
Erfahren Sie mehr über das Vorbereiten von Daten für die Veröffentlichung als Feature-Service, das Erstellen des Feature-Service und das Arbeiten mit zugehörigen Daten über Services (Video).