Objektklassen

Über Objektklassen besteht die Möglichkeit, Datenquellen, der in BaSYS Modellen definierten GIS-Featureklassen, in der BaSYS Datenbank unter ausschließlicher Nutzung von Datenbanktechnologie bereitzustellen.

Abschnitte der Hilfe

In der Hilfe werden folgende Abschnitte beschrieben:

BaSYS Objektklassen

 

BaSYS-Plan E und Objektklassen

 

Benennung von Objektklassen

Objektklassen verwenden

Veröffentlichung von GIS-Projekten beim Einsatz von Objektklassen

Verwaltung der  Objektklassen

BaSYS Objektklassen

Zugehöriges Symbol

 

 

Zurück

Über Objektklassen besteht die Möglichkeit, Datenquellen, der in BaSYS Modellen definierten GIS-Featureklassen, in der BaSYS Datenbank unter ausschließlicher Nutzung von Datenbanktechnologie bereitzustellen.

Die Daten liegen dabei wahlweise in Form von Views oder Tabellen vor. Dies erfordert zusätzliche Rechte für den Datenbankbenutzer (siehe Vordefinierte Rollen)

Views

Views stellen die Daten „live“ zur Verfügung, d.h. Änderungen an den BaSYS Objekten sind im View unmittelbar sichtbar, da der View direkt auf die Herkunftstabellen der Featureklasse zugreift. 

Tabellen

In Tabellen liegen die Daten dagegen materialisiert vor, d.h. sie entsprechen dem Datenstand zu dem Zeitpunkt, als die Tabelle geschrieben wurde. Um Änderungen an den Objektdaten der Objektklasse sichtbar zu machen, muss sie zunächst aktualisiert werden. Dies kann z.B. durch Bearbeitung mit BaSYS Plan geschehen, durch ein erneutes Laden der Karte oder durch ein SQL-Skript. Diesem Nachteil gegenüber steht der Vorteil, dass Tabellen-Objektklassen z.T. deutlich schneller im GIS angezeigt werden und dass bei vielen gleichzeitigen Zugriffen die Serverlast gegenüber Views stark reduziert ist.

BaSYS Plan E und Objektklassen

Seit ArcGIS Version 10.5 kommt es in manchen Konstellationen dazu, dass ArcMap beim Verarbeiten von Query Layern abstürzt, die mit BaSYS Plan E erstellt wurden. Dabei ist es unerheblich, mit welcher Version von ArcGIS die QueryLayer erstellt wurden, d.h. das Problem kann auch dann auftreten, wenn bestehende MXDs nach einem ArcGIS Update geöffnet werden. Um dieses Problem zu beheben, muss die Datenquelle der Query Layer, wie im Folgenden beschrieben, mit Hilfe von BaSYS Objektklassen vereinfacht werden.

Benennung von Objektklassen

Sobald mit BaSYS Plan in einem bestehenden GIS-Projekt (ESRI-MXD-Datei, QGIS-QGS/QGZ-Datei, Geomedia-GWT-Datei) die Karte aus dem zugrundeliegenden Modell neu geladen wird, kann es zu veränderten Inhalten der Datengrundlage in der Objektklasse kommen:

Opath-Parameter:

(Fast) alle Modelle enthalten Parameter in den Objektabfragen der Layer, nämlich die aktuelle Gemeinde bzw. Gemeindevariante. Diese Parameter werden in den Objektklassen in feste Werte (IDs) geschrieben. Wird nach einem Wechsel der Projektvariante die Karte aktualisiert, werden IDs in den Objektklassen ersetzt. Entsprechendes gilt natürlich auch für andere Opath-Parameter, wie z.B.[WP1]  Inspektionsauftrag oder Hydraulikvariante.

Neue Inhalte:

Die Darstellungsregeln des Modells werden beim Laden der Karte in sogenannte Partitionen umgesetzt, auch Darstellungsaggregate genannt, die durch die Objektklasse definiert werden. Diese Partitionen stehen als eigene Datenfelder in den Objektklassen. Bei einem Themenplan über die Kanalart wird z.B. für jede Kanalart ein eigener Partitionswert definiert. Werden nun Daten ergänzt, die zu neuen Kanalarten führen, kann das dazu führen, dass auch neue Partitionswerte daraus resultieren und bestehende Werte andere Bedeutungen bekommen.

Änderungen am Modell:

Ist seit der letzten Aktualisierung der Objektklassen einer Karte etwas an der Modelldefinition geändert worden, so kann natürlich auch das die Bedeutung der Partitionen in den Objektklassen verändern.

 

Werden mit BaSYS Plan GIS-Projekte auf Grundlage von Objektklassen aktualisiert, werden die Objektklassen zentral in der Projektdatenbank überschrieben. Das GIS-Projekt wird dagegen meist lokal im Benutzerprofil des Bearbeiters abgelegt. Die Aktualisierung wirkt sich also über die Objektklassen an allen Arbeitsplätzen auf alle GIS-Projekte aus, die auf diesen Views basiert, sodass es zu Inkonsistenzen zwischen dem GIS-Projekt und seiner Datengrundlage kommen kann. Aus diesem Grund trägt BaSYS Plan Sorge dafür, dass die Objektklassen individuell pro Anwender und Arbeitsplatz erstellt werden.

Die Bezeichnung, die aus technischen Gründen eine Länge von max. 30 Zeichen nicht überschreiten darf, ist eine Kombination aus:
GIS-Layer (mit lfd. Nummer), User und Modell:

Z.B.: MMustermann$SchachPDMP$cy9dmk$SchachPDMP00

Objektklassen verwenden

Zugehöriges Symbol

Zurück

Um Objektklassen zu benutzen, müssen diese ggf. in den BaSYS Plan Voreinstellungen aktiviert werden:

Voreinstellungen - Grafiksysteme:
 ArcGIS & QGIS

Über eine Auswahlliste kann jederzeit die Konfiguration für die Erstellung von Objektklassen eingestellt werden.

Dabei bedeuten die jeweiligen Optionen:

  • Nicht erstellen (Live-Zugriff)

Die Definitionsabfrage der Featureklassen wird direkt im GIS-Projekt gespeichert. Dies ist das bisherige Standardverhalten von BaSYS Plan E (ESRI ArcMap).

Für BaSYS Plan I (Geomedia) und BaSYS Plan Q (QGIS) wird diese Option nicht berücksichtigt, stattdessen werden hier Objektklassen mit DBMS-Views erstellt.

  • Erstellen (Live-Zugriff über DBMS-View)

Die Objektklassen werden als View erstellt, die Daten aktualisieren sich daher automatisch.

  • Erstellen (Änderungen für alle sichtbar)

Die Objektklassen werden als Tabelle individuell für den BaSYS-Plan-Anwender und Arbeitsplatz erstellt, an dem die Karte mit BaSYS-Plan geladen wird. Datenänderungen werden für alle anderen Anwender und Arbeitsplätze sichtbar, da die jeweiligen Tabellen der Objektklassen aktualisiert werden.

  • Erstellen (Änderungen lokal sichtbar)

Die Objektklassen werden als Tabelle individuell für den BaSYS-Plan-Anwender und Arbeitsplatz erstellt, an dem die Karte mit BaSYS-Plan geladen wird. Datenänderungen bleiben für alle anderen Anwender und Arbeitsplätze unsichtbar, dal die jeweiligen Tabellen der Objektklassen nicht aktualisiert werden. In Mehrbenutzerumgebungen müssen alle Anwender regelmäßig ihre Karten aktualisieren, vergleichbar mit der Arbeitsweise mit BaSYS Plan für CAD.


Wichtig: Anwender, die Karten mit Objektklassen erstellen sollen, müssen über ausreichende Datenbankrechte verfügen, um Views bzw. Tabellen zu erstellen, im Entwurf verändern und löschen zu können!

Für die Verarbeitung von Views stellt BaSYS die Standardrolle „ViewCreator“ (SQL Server) bzw. „VWC“ (Oracle) zur Verfügung.

Für PostgreSQL steht noch keine Standardrolle zur Verfügung und die Zugriffsreche müssen über PostgreSQL-Bordmittel vergeben werden.

Veröffentlichung von GIS-Projekten beim Einsatz von Objektklassen

Zugehöriges Symbol

Zurück

Werden GIS Projekte an andere Arbeitsplätze weitergegeben oder die erstellten Featureklassen über entsprechende Webservices veröffentlicht (ArcGIS Server, GeoMedia Webmap, QGIS Server etc.), müssen bei der Verwendung von Objektklassen einige Vorkehrungen getroffen werden, um die Integrität der weitergereichten oder veröffentlichten Karten zu erhalten.

Technische Voraussetzung hierfür ist, dass die Views genau die Inhalte bereitstellen, die die darauf aufbauenden GIS-Layerkonfigurationen benötigen. Dies ist aus den o.g. Gründen nur so lange gewährleistet, wie an keinem der Arbeitsplätze die Karte aus dem zugrundeliegenden Modell neu geladen wird.

Muss dies dennoch geschehen, müssen die verteilten GIS-Projekte an allen betroffenen Arbeitsplätzen und ggf. Servern aktualisiert werden. Um diesen Vorgang besser kontrollieren zu können, ist es ab BaSYS 9.1 SP2 möglich, die Objektklassen zweckgebunden zu erstellen. Dies wird ebenfalls über die Voreinstellung gesteuert, indem ein globales Präfix vergeben wird:

ArcGIS & QGIS

 

Globales Präfix für Objektklassen

 

<Präfix>

 

GIS-Projekte, die mit einem Präfix erstellt werden, werden durch Operationen, die mit anderen Voreinstellungen (mit oder ohne Präfix) durchgeführt werden, nicht beeinträchtigt.

Der Workflow zur Pflege solcher Projekte sieht dann folgendermaßen aus:

 

Falls die Rechteverwaltung der Masterdatenbank aktiviert ist, ist es bei der Organisation mit mehreren Mitarbeitern u.U. sinnvoll, den  Zugriff auf die Voreinstellung mit definiertem Präfix nur für Mitarbeiter zuzulassen, die in dem entsprechenden Workflow geschult sind.

Verwaltung der Objektklassen

Zugehöriges Symbol

Zurück

In Mehrbenutzerumgebungen, in denen mehrere Anwender mit verschiedenen Modellen arbeiten, kann die Zahl der Objektklassen schnell einige 100e oder 1000e erreichen. Um sich einen Überblick über die in der Projektdatenbank enthaltenen Objektklassen zu verschaffen, gibt es im Modelldesigner die sog. Viewverwaltung:

Im Modelldesigner wird per Klick auf diese Schaltfläche eine Liste für die Verwaltung der Datenbank-Sichten angezeigt.

In dieser Ansicht lassen sich die Views filtern und ggf. löschen. Weitere  Hinweise befinden sich in der Hilfe zum Modelldesigner.

 

 

 

 

   

Impressum der Dokumentation

Stand:

30.10.2015

Verantwortlich:

Jörg Martin

Copyright:

Barthauer Software GmbH
Pillaustraße 1a
D-38126 Braunschweig

Erreichbarkeit:

Homepage:  www.barthauer.de
E-Mail: info@barthauer.de