Abfragen und Auswertungen: Unterschied zwischen den Versionen

Aus GeoMediaKommunal
Zur Navigation springen Zur Suche springen
 
(67 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 13: Zeile 13:


Wenn zu viele Ergebnisse in der Tabelle erscheinen, müssen Sie Ihre Suche präzisieren. Das können Sie tun, indem Sie ein weiteres Eingabefeld füllen (falls vorhanden). Nach Eingabe des Wertes starten Sie die Abfrage erneut mit "Suche starten". Das Ergebnis aktualisiert sich in der noch geöffneten Tabelle. Um ein Ergebnis in der Karte anzuzeigen, klicken Sie auf das Symbol [[File:Karten_selektion_16.png|16px]] neben dem Tabelleneintrag. Um die zu dem Ergebnis zugehörigen Daten anzuzeigen und gegebenenfalls zu ändern, klicken Sie auf das Symbol [[File:bearbeiten__16.png|16px]].
Wenn zu viele Ergebnisse in der Tabelle erscheinen, müssen Sie Ihre Suche präzisieren. Das können Sie tun, indem Sie ein weiteres Eingabefeld füllen (falls vorhanden). Nach Eingabe des Wertes starten Sie die Abfrage erneut mit "Suche starten". Das Ergebnis aktualisiert sich in der noch geöffneten Tabelle. Um ein Ergebnis in der Karte anzuzeigen, klicken Sie auf das Symbol [[File:Karten_selektion_16.png|16px]] neben dem Tabelleneintrag. Um die zu dem Ergebnis zugehörigen Daten anzuzeigen und gegebenenfalls zu ändern, klicken Sie auf das Symbol [[File:bearbeiten__16.png|16px]].
<div id="mainpage-welcome-box" style="margin:0em 0em 0.3em 0em; width=30px ;border:1px solid #cccccc; background-color:#CAE1FF; padding: 0.5em;">'''Hinweis:''' Sind mehrere Sichten auf eine Objektklasse vorhanden, die alle einen Sichtenfilter definiert haben, wird die Funktion [[File:karten_selektion_48.png|16px]] ''(Objekte in der Karte anzeigen)'' in der Tabellen Toolbar nicht angezeigt. Gibt es nur eine Sicht auf die Objektklasse, die keinen Sichtenfilter beinhaltet, ist die Funktion vorhanden. Wie [[Datenstruktur#Datenstruktur|hier]] beschrieben, kann eine Sicht die gesamten Datensätze einer Objektklasse darstellen oder eine Teilmenge davon. Die Suche im Suchcenter greift auf die Objektklasse und nicht auf die Sicht zu.  <br />
Ist die Funktion nicht vorhanden, gibt es keine ungefilterte Sicht auf die entsprechende Objektklasse. In diesem Fall wird ihnen die Auswahl der Sichten angezeigt, sofern sie die  Funktion [[File:karten_selektion_48.png|16px]] ''(Objekte in der Karte anzeigen)'' eines einzelnen Eintrags öffnen, in deren Objektklasse sich das gesuchte Objekt befindet. Je nachdem welche Sicht Sie dann auswählen, wird das Objekt in dieser Sicht angezeigt. Zum Beispiel entspricht dann die Darstellung der Definition der ausgewählten Sicht. Um die Funktion also dauerhaft angezeigt zu bekommen, muss mindestens eine ungefilterte Sicht auf die Objektklasse vorhanden sein.</div>


Falls keine Suchergebnisse gefunden werden, erscheint eine entsprechende Meldung.
Falls keine Suchergebnisse gefunden werden, erscheint eine entsprechende Meldung.
Zeile 71: Zeile 75:
aufgezogen. Ein weiterer Klick mit der
aufgezogen. Ein weiterer Klick mit der
linken Maustaste beendet die Auswahl.
linken Maustaste beendet die Auswahl.
|-
![[File:quickpick_kreis_radius_24.png|24px]]
|Kreisauswahl mit Radiuseingabe.
Diese Funktion arbeitet nach demselben
Prinzip wie Kreisauswahl, nur das hier der
genaue Radius des Kreises in einem
Fenster eingegeben wird.
Dafür klicken Sie mit der linken Maustaste
auf eine bestimmte Stelle in der Karte und
setzen so den Mittelpunkt des Kreises.
Anschließend geben Sie in einem
Eingabefenster den Radius ein und
bestätigen. Damit wird die Auswahl
beendet.
|-
|-
![[File:quickpick_polygon_24.png|24px]]
![[File:quickpick_polygon_24.png|24px]]
Zeile 103: Zeile 93:
der linken Maustaste setzen Sie die Punkte
der linken Maustaste setzen Sie die Punkte
der Linie. Schließen Sie mit Doppelklick ab.
der Linie. Schließen Sie mit Doppelklick ab.
|-
![[File:ObjektalsBegrenzung.PNG|40px]]
|Markiertes Objekt als Begrenzung
Diese Funktion ermöglicht das Auswählen
von Objekten, welche sich innerhalb des ausgewählten Objekts befinden.
|-
![[File:QuickPickKartenausschnitt.PNG|40px]]
|Kartenausschnitt
Diese Funktion ermöglicht das Auswählen
von Objekten, welche sich innerhalb des aktuellen Kartenausschnitts befinden.
|}
|}




'''Arbeitsschritte:'''
'''Arbeitsschritte:'''
*Klicken Sie die gewünschte Funktion an.
*Klicken Sie die gewünschte Funktion an.
*Klicken Sie das Objekt in der Karte an oder zeichnen Sie je nach Funktion die Auswahlfläche (als Rechteck oder Kreis o.ä.) in die Karte. Bestätigen Sie mit Linksklick.  
*Klicken Sie das Objekt in der Karte an oder zeichnen Sie je nach Funktion die Auswahlfläche (als Rechteck oder Kreis o.ä.) in die Karte. Bestätigen Sie mit Linksklick.  


'''Ergebnis:'''
'''Ergebnis:'''
*In der Karte erscheint ein Kontextmenü mit einer Auflistung der "gefundenen" Objekte pro Sicht.
*In der Karte erscheint ein Kontextmenü mit einer Auflistung der "gefundenen" Objekte pro Sicht.
*Die Art des Kontextmenüs hängt von der Anzahl der Objekte unterhalb des Mauszeigers ab. Dabei kann es vorkommen, dass mehrere Objekte einer oder mehrerer Sichten gefunden werden. Im Kontextmenü werden die Sichten, in denen sich die Objekte befinden, aufgelistet. Sie müssen sich dann für ein Objekt (einer Sicht) entscheiden.
*Die Art des Kontextmenüs hängt von der Anzahl der Objekte unterhalb des Mauszeigers ab. Dabei kann es vorkommen, dass mehrere Objekte einer oder mehrerer Sichten gefunden werden. Im Kontextmenü werden die Sichten, in denen sich die Objekte befinden, aufgelistet. Sie müssen sich dann für ein Objekt (einer Sicht) entscheiden.
Zeile 121: Zeile 119:




 
'''Was können Sie mit den ausgewählten Objekten tun?'''<br />
'''Was können Sie mit den ausgewählten Objekten tun?'''
<br />
 
 
Es öffnet sich ein weiteres Kontextmenü. (Im Beispiel das von "Gebäude für Handels- und Dienstleistungen".)
Es öffnet sich ein weiteres Kontextmenü. (Im Beispiel das von "Gebäude für Handels- und Dienstleistungen".)


[[File:kartenobjekt_kontextmenue.PNG|320px]]
[[File:kartenobjekt_kontextmenue.PNG|320px]]




Sie haben in Abhängigkeit des Geometrietyps (Punkt, Linie, Text, Fläche) und Ihrer Nutzer- bzw. Gruppen-Berechtigungen folgende
Sie haben in Abhängigkeit des Geometrietyps (Punkt, Linie, Text, Fläche) und Ihrer Nutzer- bzw. Gruppen-Berechtigungen folgende
Optionen zur Verfügung:
Optionen zur Verfügung:
{| class="wikitable" style="width:50%"
{| class="wikitable" style="width:50%"
|-
|-
Zeile 211: Zeile 204:


[[File:flurstueck_waehlen.PNG|800px]]
[[File:flurstueck_waehlen.PNG|800px]]


Es wurde also ein Flurstück auf der Karte mit darauf liegenden Wohngebäuden ausgewählt und die zugehörige Tabelle mit dem Datensatz geöffnet (siehe [[#Abfragen aus der Karte|Abfragen aus der Karte]]). Der Datensatz wird über [[File:bearbeiten_16.png|16px]] ''(Öffnen)'' aufgerufen. Im Maskenexplorer in der linken oberen Ecke wird im Beispiel nun die Registerkarte "Fachobjekte" ausgewählt. Im zugehörigen Fenster werden unterliegende Objekte angezeigt, in diesem Fall also Wohngebäude, die sich mit dem gewählten Flurstück überschneiden. Diese können jeweils über [[File:bearbeiten_16.png|16px]] bearbeitet werden oder ggf. auch mit [[File:Karten_selektion_16.png|16px]] zentriert in der Karte angezeigt werden.   
Es wurde also ein Flurstück auf der Karte mit darauf liegenden Wohngebäuden ausgewählt und die zugehörige Tabelle mit dem Datensatz geöffnet (siehe [[#Abfragen aus der Karte|Abfragen aus der Karte]]). Der Datensatz wird über [[File:bearbeiten_16.png|16px]] ''(Öffnen)'' aufgerufen. Im Maskenexplorer in der linken oberen Ecke wird im Beispiel nun die Registerkarte "Fachobjekte" ausgewählt. Im zugehörigen Fenster werden unterliegende Objekte angezeigt, in diesem Fall also Wohngebäude, die sich mit dem gewählten Flurstück überschneiden. Diese können jeweils über [[File:bearbeiten_16.png|16px]] bearbeitet werden oder ggf. auch mit [[File:Karten_selektion_16.png|16px]] zentriert in der Karte angezeigt werden.   
Zeile 368: Zeile 362:


= Report erstellen =
= Report erstellen =
GMSC-K vefügt ab Version 2016 SP2 über drei verschiedene Reportsoftwareanbindungen: Crystal Reports, Eclipse BIRT und Jasper Reports. Damit können Sie Daten aus GMSC-K unter Angabe einer Vorlage in ein PDF exportieren wobei auch die Möglichkeit besteht ein Kartenbild einzubinden. Zunächst eine kurze Übersicht:
{| class="wikitable" border="1"
|-
!
! Crystal Reports
! Eclipse BIRT
! Jasper Reports
|-
| Homepage
| https://www.crystalreports.com/
| https://www.eclipse.org/birt/
| https://community.jaspersoft.com/
|-
| Lizenz
| Kommerziell
| OpenSource
| OpenSource mit kommerziellen Erweiterungen und Support
|-
| Support vom Hersteller
| Ja
| Ja, über Mailinglisten
| Ja
|-
| Reportlayout
| Millimeter genau möglich
| Automatisches Layout mit Größenvorgaben
| Millimeter genau möglich
|-
| Unterreports
| Ja, eigene Unterreportvorlage
| Ja, direkte Einbindung von Untertabellen ohne eigene Unterreportvorlage
| Ja, direkte Einbindung von Untertabellen oder eigene Unterreportvorlage
| Skriptsprache
| Ja
| Ja
| Ja
|}
* Objekte für die man einen Report erstellen möchte in Tabelle markieren  
* Objekte für die man einen Report erstellen möchte in Tabelle markieren  
* mit der Maus auf das Report-Icon in der Tabelle klicken, es öffnet sich der Reportdefinitons-Editor.
* mit der Maus auf das Report-Icon in der Tabelle klicken, es öffnet sich der Reportdefinitons-Editor.
Zeile 382: Zeile 414:


# Liste der zur Verfügung stehenden Reports
# Liste der zur Verfügung stehenden Reports
# Name des aktuell ausgewählten Report bzw. Namen-Eingabefeld für einen neu anzulegenden Report
# Eingabefeld für den Pfad zur Crystal Report-Datei (.rpt, CR-Datei) die für einen neu anzulegenden Report verwendet werden soll. Zur Pfadauswahl dient der Button (...) am rechten Ende des Eingabefeldes
# Eingabefeld für den Namen des Alternativreports. Der Name muss der einer bereits angelegten Reportdefinition sein. Diese Funktionalität spielt nur bei der Verwendung von Kartenausschnitten als Bild innerhalb des Reports eine Rolle. Der hier angegebene Report wird dann verwendet, wenn die Massstabsangaben des Hauptreports zu klein für die Erstellung des Kartenausschnittbildes sind. Weiterhin wird dies nur bei der Einzelreporterstellung ausgewertet.
# Eine neue Reportdefinition wird angelegt. Dabei wird der Name und Reportpfad aus den entsprechenden darüber liegenden Eingabefeldern verwendet.
# Eine neue Reportdefinition wird angelegt. Dabei wird der Name und Reportpfad aus den entsprechenden darüber liegenden Eingabefeldern verwendet.
# Die aktuell ausgewählte Reportdefinition wird mit den aktuellen Daten der Eingabefelder gespeichert.
# Die aktuell ausgewählte Reportdefinition wird mit den aktuellen Daten der Eingabefelder gespeichert.
# Die aktuell ausgewählte Reportdefinition wird gelöscht.
# Die aktuell ausgewählte Reportdefinition wird gelöscht.
# Eingabefeld für den Pfad zur CR-Datei welche in der aktuell ausgewählten Reportdefinition gespeichert werden soll. Mit dem Pfadauswahl-Button kann dabei ein externern vorliegender Report ausgewählt werden.
# Name des aktuell ausgewählten Report bzw. Namen-Eingabefeld für einen neu anzulegenden Report
# Öffnet die CR-Datei der aktuellen Reportdefinition lokal in der dafür vorgesehenen Anwendung. Dabei wird der lokale Pfad zu diesem Report in Feld 8 eingetragen.
# Auswahl der Reportsoftware (''ab Version 2016 SP2'')
# Ersetzt den Report in der aktuellen Reportdefinition mit dem im Feld 8 angegebenen Report.  
# Optionale Aktion, die vor der Ausführung Reports gestartet werden soll, z.B. ALB-Abrufprotokoll
# Speichert die CR-Datei lokal in einem selbstgewählten Ordner.
# Format der Reportergebnisdatei (PDF, Word etc.)
# Eingabefeld für den Pfad zur Reportvorlagedatei, die für einen neu anzulegenden Report verwendet werden soll. Zur Pfadauswahl dient der Button am rechten Ende des Eingabefeldes
# Eingabefeld für den Pfad zur Reportvorlagedatei, welche in der aktuell ausgewählten Reportdefinition gespeichert werden soll. Mit dem Pfadauswahl-Button kann dabei ein externern vorliegender Report ausgewählt werden.
# Öffnet die Reportvorlagedatei der aktuellen Reportdefinition lokal in der dafür vorgesehenen Anwendung. Dabei wird der lokale Pfad zu diesem Report in Feld 10 eingetragen.
# Ersetzt die Reportvorlage in der aktuellen Reportdefinition mit dem im Feld 10 angegebenen Report.  
# Speichert die Reportvorlagedatei lokal in einem selbstgewählten Ordner.
# Eingabefeld für den Namen des Alternativreports. Der Name muss der einer bereits angelegten Reportdefinition sein. Diese Funktionalität spielt nur bei der Verwendung von Kartenausschnitten als Bild innerhalb des Reports eine Rolle. Der hier angegebene Report wird dann verwendet, wenn die Maßstabsangaben des Hauptreports zu klein für die Erstellung des Kartenausschnittbildes sind. Weiterhin wird dies nur bei der Einzelreporterstellung ausgewertet.
# Zugeordnet Reports können verwendet werden, um innerhalb eines Report verschiedene Papierformate zu verwenden. Z.B. kann für dies Ausgabe der Sachdaten das A4-Format verwendet werden, für die Ausgabe der Karte jedoch A3. Reports können durch Drag&Drop aus der Reportliste links in die Tabelle der zugeordneten Reports eingefügt werden. Ein Report mit zugeordneten Reports besitzt selbst keine Reportvorlage sondern für jeden Datensatz werden nacheinander die zugeordneten Reports ausgeführt und das Ergebnis in einer Gesamt-PDF-Datei gespeichert.  
# Erstellt einen neuen Bilddefinitionseintrag in der darunter liegenden Bilddefinitionstabelle. Dies wird benötigt um Kartenausschnitte als Bild in den Report einzufügen.
# Erstellt einen neuen Bilddefinitionseintrag in der darunter liegenden Bilddefinitionstabelle. Dies wird benötigt um Kartenausschnitte als Bild in den Report einzufügen.
# Löscht den aktuell ausgewählten Bilddefinitionseintrag.
# Löscht den aktuell ausgewählten Bilddefinitionseintrag.
# Name der Bilddefinition. Dies muss sich auf einen entsprechenden Parameter in der CR-Datei beziehen.
# Kopiert den aktuell ausgewählten Bilddefinitionseintrag.
# Breite des zu Bildbereichs in der CR-Datei in Millimeter. D.h. das Bild wird mit dieser Breite von Kartenauschnitt erzeugt. Wird hier ein anderer Betrag angegeben als im Bildbereich, wird das Bild von Crystal Reports entsprechend skaliert.
# Zeigt wahlweise nur die Bilddefinitionseinträge des aktuellen Projektes an oder alle. Damit kann ein Bilddefinitionseintrag einfach von einem Projekt in ein anderes kopiert werden.
# Höhe des Bildbereichs in der CR-Datei.
# Name der Bilddefinition. Dies muss sich auf einen entsprechenden Parameter in der Reportvorlagedatei beziehen.
# Die Größe des Randbereichs des Bildes in Prozent.
# Breite des zu Bildbereichs in der Reportvorlagedatei in Millimeter, d.h. das Bild wird mit dieser Breite von Kartenauschnitt erzeugt. Wird hier ein anderer Betrag angegeben als im Bildbereich, wird das Bild im Report entsprechend skaliert.
# Liste von Attributen, welche eine Verknüpfung zu anderen Objekten darstellen, von denen die Geometrie als Grundlage für die Erstellung des Kartenausschnittes genommen werden soll. Die Angabe erfolgt dabei in der Punktnotation wie sie im Maskeneditor zur Information verwendet wird. Wird hier nichts angegeben, wird automatisch die nur die Geometrie des selektierten Objektes verwendet. Sobald hier ein Eintrag vorhanden ist, werden nur noch die hier angegebenen verknüpften Objektgeometrien verwendet. Um dann auch das selektierte (Haupt-)Objekt mit einzubeziehen muss die durch die Angabe von „position“ als Attributname geschehen. Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
# Höhe des zu Bildbereichs in der Reportvorlagedatei in Millimeter, d.h. das Bild wird mit dieser Höhe von Kartenauschnitt erzeugt. Wird hier ein anderer Betrag angegeben als im Bildbereich, wird das Bild im Report entsprechend skaliert.
# Liste der möglichen Massstäbe. Bei 1:1000 Angabe von 1000. Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
# Die Größe des Randbereichs des Bildes um das Fachobjekt in Prozent.
# Liste von Attributen, welche eine Verknüpfung zu anderen Objekten darstellen, von denen die Geometrie als Grundlage für die Erstellung des Kartenausschnittes genommen werden soll. Die Angabe erfolgt dabei in der Punktnotation wie sie im Maskeneditor zur Information verwendet wird. Wird hier nichts angegeben, wird automatisch nur die Geometrie des selektierten Objektes verwendet. Sobald hier ein Eintrag vorhanden ist, werden nur noch die hier angegebenen verknüpften Objektgeometrien verwendet. Um dann auch das selektierte (Haupt-)Objekt mit einzubeziehen muss dies durch die Angabe von „position“ als Attributname geschehen. Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
# Liste der möglichen Maßstäbe, die diese Bilddefinition unterstützt, z.B. bei 1:1000 Angabe von 1000. Wird kein passender Maßstab gefunden, wird der Alternativreport ausgeführt. Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.  
# Zu verwendete Arbeitssitzung für die Erstellung des Kartenausschnittbildes. Dadurch ist es möglich sich gezielt eine Arbeitssitzung  zu definieren, welche den Vorstellungen für den Kartenausschnitt entsprechen und immer wieder verwendet werden kann.
# Zu verwendete Arbeitssitzung für die Erstellung des Kartenausschnittbildes. Dadurch ist es möglich sich gezielt eine Arbeitssitzung  zu definieren, welche den Vorstellungen für den Kartenausschnitt entsprechen und immer wieder verwendet werden kann.
#  
# Hier kann optional der Name einer Darstellungsvariante angegeben werden.
# Liste der Sichtenfilter. Hier kann man genauer definieren, welche Objekte man in den einzelnen Sichten des Kartenausschnittes haben möchte. Die Syntax ist wie folgt Objektklassen-ID = Attributpfad. Die Objektklassen-ID erhält man im Eigenschaftsdialog der jeweiligen Sicht. Der Attributpfad entspricht den verknüpften Objekten ausgehend von dem selektierten Hauptobjekt (wie in Punkt 18 beschrieben). Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
# Liste der Sichtenfilter. Hier kann man genauer definieren, welche Objekte man in den einzelnen Sichten des Kartenausschnittes haben möchte. Die Syntax ist wie folgt: Objektklassen-ID = Attributpfad. Die Objektklassen-ID erhält man im Eigenschaftsdialog der jeweiligen Sicht. Der Attributpfad entspricht den verknüpften Objekten ausgehend von dem selektierten Hauptobjekt (wie in Punkt 25 beschrieben). Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
# Erstellt einen Report und öffnet die fertige PDF-Datei danach automatisch mit der dafür vorgesehenen Anwendung lokal.
# Die ID des Projektes, für die dieser Bilddefinitionseintrag angelegt wurde. Ein Bilddefinitionseintrag ist immer einem Projekt zugeordnet da die Angaben zur Sichtenzuordnung in Punkt 29 immer projektabhängig sind.
# Gibt die gewünschte Auslösung für Rasterdaten an, die ggf. im Kartenbild ausgegeben werden.
# Erstellt einen Report und öffnet die fertige Datei danach automatisch mit der dafür vorgesehenen Anwendung lokal.
# Erstellt einen Report und speichert diesen in einem vom Nutzer definierten Ordner.
# Erstellt einen Report und speichert diesen in einem vom Nutzer definierten Ordner.
# Erstellt einen Report und öffnet die fertige PDF-Datei danach automatisch mit der dafür vorgesehenen Anwendung lokal. Ausserdem wird für jedes selektierte Objekt eine Dokument-Objekt in GeoMedia SmartClient Kommunal angelegt, das die eben erstellten Report enthält und damit dauerhaft in GeoMedia SmartClient Kommunal hinterlegt ist.
# Erstellt einen Report und öffnet die fertige Datei danach automatisch mit der dafür vorgesehenen Anwendung lokal. Ausserdem wird für jedes selektierte Objekt ein Dokument in GeoMedia SmartClient Kommunal angelegt, das die eben erstellten Report enthält und damit dauerhaft in GeoMedia SmartClient Kommunal hinterlegt ist.
# Erstellt für jedes selektierte Objekt eine einzelnen Report und hinterlegt diesen per Dokument-Objekt in GeoMedia SmartClient Kommunal.
# Erstellt für jedes selektierte Objekt eine einzelnen Report und hinterlegt diesen per Dokument-Objekt in GeoMedia SmartClient Kommunal.
# Führt eines Testlauf durch, bei dem kein Report erzeugt wird. Am Ende öffnet sich eine Textdatei mit dem Ergebnis des Testlaufs. Dies ist vor allem sinnvoll um vorher zu überprüfen, ob der angegebene Massstab für den Kartenausschnitt ausreicht.
# Führt eines Testlauf durch, bei dem kein Report erzeugt wird. Am Ende öffnet sich eine Textdatei mit dem Ergebnis des Testlaufs. Dies ist vor allem sinnvoll, um vorher zu überprüfen, ob der angegebene Maßstab für den Kartenausschnitt ausreicht.
# Bricht den Reportdialog ab.
 
=== Reportparameter ===
''(ab Version 2020, 23.08.2021)''
 
Für Reports können zusätzliche Parameter definiert werden, die dann im Report ausgewertet werden können. Ein Reportparameter wird wie folgt definiert:
 
# Name: Name, mit welchem im Report auf den Parameter zugegriffen wird
# Bezeichner: Bezeichner, welcher dem Nutzer bei Ausführung des Reports angezeigt wird
# Typ: der Datentyp - Text, Zahl, Gleitkommazahl, Datum, Auswahlliste
# Standardwert: ein Wert entsprechend des Datentyps, welcher beim Ausführen des Reports voreingestellt ist. Für Auswahllisten wird hier eine kommaseparierte Liste von Werten angegeben, welche dann dem Nutzer als Klappbox gezeigt wird. Der Standardwert kann in dieser Liste mit ein '*' markiert werden, z.B. "5,6*,7".
# Nutzerdefiniert: der Nutzer kann den Wert des Parameters ändern
# Pflichtfeld: der Nutzer muss zwingend einen Wert eingeben
 
Diese Angaben können durch Doppelklick in die entsprechenden Spalte der Tabelle der Parameter im Reporteditor geändert werden.
 
''(ab Version 2022, 29.08.2023)''
Es werden außerdem Standardparameter übermittelt, die z.B. Informationen zum Nutzer enthalten, welcher den Report ausführt:
 
# user.login: Loginname des Nutzers
# user.name: Name des Nutzers
# user.department: Abteilung des Nutzers
# user.email: Email-Adresse des Nutzers
# user.telefon: Telefonnummer des Nutzers
# <Name-des-Kartenbildes>.scale: Maßstab, in dem das Kartebild <Name-des-Kartenbildes> erstellt wurde. Dies stellt eine Alternative zur Tabelle REPORTDATEN dar.




[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


==Vorbereiten einer Crystal Report-Datei für die Integration von Kartenausschnitten==
==Crystal Reports==


* In der CR-Datei muss ein Bildbereich definiert werden. (Einfügen OLE-Objekt)
===Installation der Crystal-Reports-Laufzeitumgebung===
'''ACHTUNG:''' Ab Version 2016 SP2 wird die Crystal-Reports-Laufzeitumgebung nicht mehr mit ausgeliefert sondern muss separat heruntergeladen und installiert werden. Gehen Sie dazu wie folgt vor:
 
* Laden Sie die Laufzeitumgebung von hier herunter: https://www.sap.com/cmp/td/sap-crystal-reports-eclipse-trial.html (Download "Runtime libraries").
* Packen Sie die Zip-Datei aus und kopieren Sie alle Dateien aus dem Order ''lib'' in das GMSC-K-Installationsverzeichnis unter C:\Program Files\Intergraph\GeoMedia SmartClient Kommunal\Instances\Default\Server\thirdparty\CrystalReports\.
* Starten Sie anschliessend den GMSC-K-Server-Dienst neu.
 
===Vorbereiten einer Crystal Report-Datei für die Integration von Kartenausschnitten===
 
* In der CR-Datei muss ein Bildbereich definiert werden. (Einfügen OLE-Objekt)
* Per rechte Maustaste im Bild den Grafik-Formatieren Dialog aufrufen und den Haken aus „Kann grösser werden entfernen“
* Per rechte Maustaste im Bild den Grafik-Formatieren Dialog aufrufen und den Haken aus „Kann grösser werden entfernen“






[[File:Format editor.png|751px]]
[[File:Format editor.png|500px]]




Zeile 447: Zeile 519:
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


==Integration des Massstabes zu einem Kartenauschnitt==
===Integration des Massstabes zu einem Kartenauschnitt===


* Für diese Funktion muss ein Parameter mit den Namen „reportdatenid“ erstellt werden. Dieser wird genutzt um zur Laufzeit eine eindeutige ID für jeden Reporterstellungsprozess zu erzeugen.
* Für diese Funktion muss ein Parameter mit den Namen „reportdatenid“ erstellt werden. Dieser wird genutzt um zur Laufzeit eine eindeutige ID für jeden Reporterstellungsprozess zu erzeugen.
Zeile 493: Zeile 565:
[[File:Auswahl assi.png|600px]]
[[File:Auswahl assi.png|600px]]


''(ab Version 2022, 29.08.2023)''


Es kann auch der Reportparameter <Name-des-Kartenbildes>.scale verwendet werden.


[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


==Nutzen von Shared Variablen==
===Nutzen von Shared Variablen===


Shared Variablen (SV) werden verwendet um Dateninhalte an verschiedenen Stellen eines Reports gemeinsam zu verwenden. Dies ist besonders für den Informationsaustausch zwischen dem Hauptbericht und den Unterberichten interessant. Dabei kann zum Beispiel ein Unterbericht genutzt werden, um bestimmte Daten aufzubereiten (z.B. Personen die mit einer bestimmten Personenart verknüpft sind oder Summenberechnungen über Datensätze, die mit dem Hauptobjekt verknüpft sind) und das Ergebnis danach in die Shared Variable zu schreiben, so dass das es im Hauptbericht zur Verfügung steht.
Shared Variablen (SV) werden verwendet um Dateninhalte an verschiedenen Stellen eines Reports gemeinsam zu verwenden. Dies ist besonders für den Informationsaustausch zwischen dem Hauptbericht und den Unterberichten interessant. Dabei kann zum Beispiel ein Unterbericht genutzt werden, um bestimmte Daten aufzubereiten (z.B. Personen die mit einer bestimmten Personenart verknüpft sind oder Summenberechnungen über Datensätze, die mit dem Hauptobjekt verknüpft sind) und das Ergebnis danach in die Shared Variable zu schreiben, so dass das es im Hauptbericht zur Verfügung steht.
Zeile 506: Zeile 580:
:1) Shared Variablen werden mit Hilfe von Formeln genutzt. Zuerst wird eine Formel angelegt, die die SV initialisiert:
:1) Shared Variablen werden mit Hilfe von Formeln genutzt. Zuerst wird eine Formel angelegt, die die SV initialisiert:


 
:[[File:formel editor3.png|600px]]
 
[[File:formel editor3.png|600px]]
 




Zeile 515: Zeile 586:
:3) Jetzt wird ein Unterbericht erstellt, der die Personen, die dem Hauptobjekt zugewiesen sind nach einer bestimmten Personenart filtert (hier 'NT' für Notar):
:3) Jetzt wird ein Unterbericht erstellt, der die Personen, die dem Hauptobjekt zugewiesen sind nach einer bestimmten Personenart filtert (hier 'NT' für Notar):


:[[File:datenbank assi.png|600px]]




[[File:datenbank assi.png|600px]]
:[[File:Haltungsbericht testen.png|600px]]
 
 
 
[[File:Haltungsbericht testen.png|600px]]
 




:4) Zuerst benötigen wir eine Formel, die die SV zurücksetzt. Dies ist notwendig, wenn man einen Report für mehrere Datensätze macht und die SV ansonsten noch den Inhalt des vorherigen Datensatzes enthält. Diese Formel sollte in den Berichtskopf des Unterberichts eingefügt werden:
:4) Zuerst benötigen wir eine Formel, die die SV zurücksetzt. Dies ist notwendig, wenn man einen Report für mehrere Datensätze macht und die SV ansonsten noch den Inhalt des vorherigen Datensatzes enthält. Diese Formel sollte in den Berichtskopf des Unterberichts eingefügt werden:


<syntaxhighlight lang="sql" line >
:<syntaxhighlight lang="sql" line >
SHARED StringVar Notar_Nachname;
SHARED StringVar Notar_Nachname;
Notar_Nachname := '';
Notar_Nachname := '';
</syntaxhighlight>
</syntaxhighlight>


 
:[[File:formel editor4.png|600px]]
 
[[File:formel editor4.png|600px]]




:5) Danach wird die SV in diesem Unterbericht mit einer weiteren Formel mit Inhalt gefüllt (Zeile 2: der Nachname wird zugewiesen). Wichtig ist dabei, das die SV im Unterbericht selber vorkommen (z.B. in den Detailbereich gezogen) muss, damit diese auch ausgeführt wird. Die unten aufgeführte Formel listet alle Notar-Nachnamen komma-separiert auf. Möchten man nur einen Notar anzeigen reicht es den If-The-Else Teil komplett durch die Zeile nach dem Then-Befehl zu nutzen:
:5) Danach wird die SV in diesem Unterbericht mit einer weiteren Formel mit Inhalt gefüllt (Zeile 2: der Nachname wird zugewiesen). Wichtig ist dabei, das die SV im Unterbericht selber vorkommen (z.B. in den Detailbereich gezogen) muss, damit diese auch ausgeführt wird. Die unten aufgeführte Formel listet alle Notar-Nachnamen komma-separiert auf. Möchten man nur einen Notar anzeigen reicht es den If-The-Else Teil komplett durch die Zeile nach dem Then-Befehl zu nutzen:


 
:<syntaxhighlight lang="sql" line >
<syntaxhighlight lang="sql" line >
if( Notar_Nachname = '' )
if( Notar_Nachname = '' )
then  
then  
Zeile 548: Zeile 612:
</syntaxhighlight>
</syntaxhighlight>


:[[File:formel editor5.png|600px]]




[[File:formel editor5.png|600px]]
:6) Jetzt den Unterbericht ebenso wie die SV zur Initialisierung in einen möglichst weit oben liegenden Detail-Bereich des Hauptberichtes ziehen. Dies sollte aber nicht der Seiten- oder Berichtskopf sein, damit die SV sich nur auf den aktuellen Datensatz bezieht:


:[[File:haltungsbericht.png|600px]]




:6) Jetzt den Unterbericht ebenso wie die SV zur Initialisierung in einen möglichst weit oben liegenden Detail-Bereich des Hauptberichtes ziehen. Dies sollte aber nicht der Seiten- oder Berichtskopf sein, damit die SV sich nur auf den aktuellen Datensatz bezieht:
:7) Die vorherigen Schritte dienten nur dem Erzeugen und Befüllen der SV. Um die SV zu nutzen wird im Hauptbericht eine weitere Formel angelegt, die den Inhalt der SV zurück gibt. Diese Formel kann dan als normales Textfeld beliebig oft im Hauptbericht verwendet werden. Bitte darauf achten das Semikolon in der zweiten Zeile weg zu lassen:
 
:[[File:formel editor6.png|600px]]
 
 
:[[File:haltungsbericht2.png|600px]]
 
 
<div id="mainpage-welcome-box" style="margin:0em 0em 0.3em 0em; width=30px ;border:1px solid #cccccc; background-color:#CAE1FF; padding: 0.5em;">
'''Tip:''' Hier wird eine SV vom Typ String/Text verwendet, für Zahlen gibt es den Variablentyp 'NumberVar'.</div>
 
 
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
 
===MSSQL-Datenbank per ODBC einbinden===
Die ODBC-Verbindung bezieht sich auf eine Verbindung zu einem Datenbankserver, auf denen sich die eigentlichen Datenbanken befinden. D.h. Schritte 1 bis 7 beziehen sich auf das Einrichten einer Verbindung zu diesem Datenbankserver mit Hilfe von ODBC. Im Schritt 8 wir dann über diese Datenbankserver-Verbindung die eigentliche Datenbank ausgewählt, die man in Crystal Reports verwenden möchte.
 
:1. Zuerst muss in Windows eine ODBC-Verbindung eingerichtet werden. Dazu die Datenquellenverwaltung öffnen.
 
:[[Datei:ODBC sys.PNG|643px]]
 
 
:2. Eine neue Datenquelle hinzufügen.
 
:[[Datei:Datenquelle.PNG|643px]]
 
 
:3. SQL-Server auswählen.
:4. Dann einen Namen vergeben (so taucht diese Verbindung später in Crystal Reports wieder auf) und einen im Netzwerk vorhandenen Server auswählen.
:5. Dann auf "Weiter" klicken und die Anmeldedaten eintragen.
:6. In den nachfolgenden (per "Weiter" geklickt) Dialogfenstern entsprechende Einstellungen vornehmen (können auch alle auf den voreingestellten Werten gelassen werden) und im letzten Dialogfenster "Fertig stellen" klicken.
:7. Nun Crystal Reports öffnen und unter dem Menüpunkt Datenbank den Datenbankassistenten aufrufen. Dann das Kreuz links neben dem ODBC-Eintrag auswählen und dann den Datenbank-Server (den eben erstellten ODBC-Eintrag) auswählen den man verwenden möchte.
:8. Im letzten Schritt noch die Benutzerdaten eintragen und die Datenbank auswählen. Die Datenbank kann man erst auswählen, wenn die Anwender-ID und Kennwort richtig eingetragen sind.
 
==Eclipse BIRT==
''(ab Version 2016 SP2)''
 
Eclipse BIRT ist eine Open Source Reportsoftware. Der BIRT Designer kann hier heruntergeladen werden: http://download.eclipse.org/birt/downloads/#designer.
Im folgenden wird beschrieben wie Sie einen BIRT-Report in GMSC-K einbinden.
Eine komplette Beispielreportvorlage findet Sie hier: [[Datei:Stammblatt_Flurstuecke.zip]]
 
===Report-Parameter definieren===
Im ersten Schritt müssen Sie folgende Report-Parameter definieren, die später beim Aufruf des Reports aus GMSC-K übergeben werden:
 
* jdbcDriverClass - Datenbankverbindung
* jdbcDriverUrl - Datenbankverbindung
* jdbcUsername - Datenbankverbindung
* jdbcPassword - Datenbankverbindung
* selectionId - Verweis auf markierte Datensätze, die im Report angezeigt werden sollen
* reportDataId (optional) - Verweis auf zusätzlich Daten, wenn ein Kartenbild eingebunden wird
* karte (optional) - Verweis auf ein Kartenbild, der Name dieses Parameters muss mit dem Namen des Bildes in der Reportdefinition in GMSC-K übereinstimmen
 
:[[Datei:birt_reportparameter.PNG|245px]]
 
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
 
===Datenquelle erstellen===
 
Legen Sie nun eine neue JDBC-Datenquelle an
 
:[[Datei:birt_datasource.PNG|876px]]
 
und verbinden Sie deren Eigenschaften (Properties) mit den entsprechenden Reportparameteren.
 
:[[Datei:birt_datasource_properties.PNG|876px]]
 
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
 
===Daten einbinden===
 
Im nächsten Schritt legen Sie ein Dataset an und verweisen Sie in der SQL-Abfrage durch einen Join mit der Tabelle ''MARKIERUNG'' und dem Parameter ''selectionId'' auf die in GMSC-K selektierten Datensätze:
 
:[[Datei:birt_dataset_query.PNG]]
 
Verbinden Sie den Parameter der SQL-Abfrage mit dem Reportparameter ''selectionId''.
 
:[[Datei:birt_dataset_parameters.PNG]]
 
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
 
===Kartenbild integrieren===
 
Um ein Kartenbild zu integrieren benötigen Sie den Reportparameter ''karte'' (siehe Abschnitt zu Reportparametern). Legen Sie dann in im Report an der gewünschten Stelle ein Bild an und setzen die URI auf den Wert
 
''params["karte"].value + row["FLURSTUECK_ID"] + ".png"''
 
wobei ''FLURSTUECK_ID'' der Verweis auf die ID des aktuellen Datensatzes ist, der wie unten gezeigt angelegt wird.
 
 
:[[Datei:birt_karte_einbinden.PNG|1079px]]
 
<br />
<br />
 
:[[Datei:birt_karte_einbinden_2.PNG|759px]]
 
Der Maßstab des Bildes kann über die Reportdaten angezeigt werden. Legen Sie dazu den Reportparameter ''reportDataId'' und ein Dataset für die Tabelle ''REPORTDATEN'' mit dem Parameter ''reportDataId'' an:
 
:[[Datei:birt_reportdaten_query.PNG|786px]]
 
 
:[[Datei:birt_reportdaten_parameter.PNG|786px]]
 
Im Data Set Parameter-Binding geben Sie für den Parameter ''reportDataId'' den Wert ''params["reportDataId"].value + row["FLURSTUECK_ID"] + "karte"'' an.
Benutzen Sie dann die Spalte ''DATENWERT01'' aus dem Dataset, um den Maßstab einzubinden:
 
:[[Datei:birt_reportdaten_massstab.PNG|1067px]]
 
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


== JasperReports ==
''(ab Version 2016 SP1)''
JasperReports ist eine Open Source Reportsoftware. Der Designer JapserReports Studio kann hier heruntergeladen werden: https://community.jaspersoft.com/community-download.


Hinweis: Im Unterschied zu BIRT oder Crystal Reports können Unterberichte auch als separate Dateien eingebunden werden. Damit GMSC-K alle Reportdateien zur Verfügung hat, müssen Sie alle nötigen jrxml-Dateien in eine Zip-Datei packen und diese in GMSC-K hochladen. Dabei muss die Hauptreportdatei folgender Namenskonvention entsprechen: [GMSC-K-Reportdefinitionname]_main.jrxml. Verwenden Sie für Unterreports eingebettete Tabellen können Sie einfach nur die jrxml-Datei hochladen, deren Name dann beliebig sein kann.


[[File:haltungsbericht.png|600px]]
Eine Beispielreportvorlage, die sowohl Unterberichte aus Dateien als auch aus eingebetteten Tabellen verwendet, findet Sie hier: [[Datei:JasperReports Stammblatt.zip]]


Im folgenden wird beschrieben wie Sie einen JasperReport in GMSC-K einbinden.


===Report-Parameter definieren===
Im ersten Schritt müssen Sie folgende Report-Parameter definieren, die später beim Aufruf des Reports aus GMSC-K übergeben werden:


:7) Die vorherigen Schritte dienten nur dem Erzeugen und Befüllen der SV. Um die SV zu nutzen wird im Hauptbericht eine weitere Formel angelegt, die den Inhalt der SV zurück gibt. Diese Formel kann dan als normales Textfeld beliebig oft im Hauptbericht verwendet werden. Bitte darauf achten das Semikolon in der zweiten Zeile weg zu lassen:
* selectionId - Verweis auf markierte Datensätze, die im Report angezeigt werden sollen
* reportDataId (optional) - Verweis auf zusätzlich Daten, wenn ein Kartenbild eingebunden wird
* karte (optional) - Verweis auf ein Kartenbild, der Name dieses Parameters muss mit dem Namen des Bildes in der Reportdefinition in GMSC-K übereinstimmen


:[[Datei:jasper_reportparameter.PNG|343px]]


[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


[[File:formel editor6.png|600px]]
===Datenquelle erstellen===


Legen Sie nun eine neue JDBC-Datenquelle an:


:[[Datei:jasper_datasource.PNG]]


[[File:haltungsbericht2.png|600px]]
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


===Daten einbinden===


<div id="mainpage-welcome-box" style="margin:0em 0em 0.3em 0em; width=30px ;border:1px solid #cccccc; background-color:#CAE1FF; padding: 0.5em;">
Im nächsten Schritt legen Sie ein Dataset an und verweisen Sie in der SQL-Abfrage durch einen Join mit der Tabelle ''MARKIERUNG'' und dem Parameter ''selectionId'' auf die in GMSC-K selektierten Datensätze:
'''Tip:''' Hier wird eine SV vom Typ String/Text verwendet, für Zahlen gibt es den Variablentyp 'NumberVar'.</div>
Verbinden Sie den Parameter der SQL-Abfrage mit dem Reportparameter ''selectionId''.


:[[Datei:jasper_dataset_query.PNG]]


[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


==MSSQL-Datenbank per ODBC einbinden==
===Kartenbild integrieren===
Die ODBC-Verbindung bezieht sich auf eine Verbindung zu einem Datenbankserver, auf denen sich die eigentlichen Datenbanken befinden. D.h. Schritte 1 bis 7 beziehen sich auf das Einrichten einer Verbindung zu diesem Datenbankserver mit Hilfe von ODBC. Im Schritt 8 wir dann über diese Datenbankserver-Verbindung die eigentliche Datenbank ausgewählt, die man in Crystal Reports verwenden möchte.
 
Um ein Kartenbild zu integrieren benötigen Sie den Reportparameter ''karte'' (siehe Abschnitt zu Reportparametern). Legen Sie dann in im Report an der gewünschten Stelle ein Bild an und setzen die URI auf den Wert
 
''$P{karte} + $F{ID} + ".png"''
 
wobei ''$F{ID}'' der Verweis auf die ID des aktuellen Datensatzes ist, der wie unten gezeigt angelegt wird.
 
:[[Datei:jasper_karte_einbinden.PNG]]
 
Der Maßstab des Bildes kann über die Reportdaten angezeigt werden. Legen Sie dazu den Reportparameter ''reportDataParameter'' und ein Dataset für die Tabelle ''REPORTDATEN'' mit dem Parameter ''reportDataId'' an:


1. Zuerst muss in Windows eine ODBC-Verbindung eingerichtet werden. Dazu die Datenquellenverwaltung öffnen.<br />
:[[Datei:jasper_reportdaten_query.PNG]]
[[Datei:ODBC sys.PNG|643px]]


2. Eine neue Datenquelle hinzufügen<br />
Im Data Set Parameter-Binding geben Sie für den Parameter ''reportDataParameter'' den Wert ''$P{reportDataId} + $F{ID} + "karte"'' an.
[[Datei:Datenquelle.PNG|643px]]


3. SQL-Server auswählen<br />
:[[Datei:jasper_reportdaten_parameter.PNG]]
4. Dann einen Namen vergeben (so taucht diese Verbindung später in Crystal Reports wieder auf) und einen im Netzwerk vorhandenen Server auswählen.<br />
5. Dann auf Weiter klicken und die Anmeldedaten eintragen<br />
6. in den nachfolgenden (per Weiter geklickt) Dialogfenstern entsprechende Einstellungen vornehmen (können auch alle auf den voreingestellten Werten gelassen werden) und im letzten Dialogfenster Fertig stellen klicken.<br />
7. Nun Crystal Reports öffnen und unter dem Menüpunkt Datenbank den Datenbankassistenten aufrufen. Dann das Kreuz links neben dem ODBC-Eintrag
auswählen und dann den Datenbank-Server (den eben erstellten ODBC-Eintrag) auswählen den man verwenden möchte.<br />
8. Im letzten Schritt noch die Benutzerdaten eintragen und die Datenbank auswählen. Die Datenbank kann man erst auswählen, wenn die Anwender-ID und Kennwort richtig eingetragen sind.<br />


Benutzen Sie dann die Spalte ''DATENWERT01'' aus dem Dataset, um den Maßstab einzubinden.


[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]




[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]


=Flächenbilanz=
=Flächenbilanz=


'''Flächenbilanz Einzeln'''
'''Flächenbilanz einzeln:'''
:*Klicken Sie mit der rechten Maustaste auf [[File:Projekte_16.png|16px]] (''Projekt'') > [[File:Exportieren_16.png|16px]] (''Export'') > [[File:neu_16.png|16px]] (''Flächenbilanz (einzeln)'').


Klicken Sie mit der rechten Maustaste auf [[File:Projekte_16.png|16px]] (''Projekt'') > [[File:Exportieren_16.png|16px]] (''Export'') > [[File:neu_16.png|16px]] (''Flächenbilanz (einzeln)'').
:[[File:x53.png|800px]]


[[File:x53.png|800px]]


Es öffnet sich zunächst der schon für den DXF-Export verwendete Dialog zur Markierung von Objekten in der Karte, wobei dieser Dialog nur Sichten mit Geometrietyp „Fläche" oder „beliebig" anzeigt und beachtet. Zeichnen Sie ein oder mehrere Polygone über das Auswahltool des Markierungsdialogs ein. Die getroffenen Objekte werden in der Karte als markiert dargestellt, wobei Objekte markiert werden, die innerhalb der Markierungspolygone liegen oder davon geschnitten werden. Die Anzahl der markierten Objekte pro Sicht wird in der Sichtenliste angezeigt.
Es öffnet sich zunächst der schon für den DXF-Export verwendete Dialog zur Markierung von Objekten in der Karte, wobei dieser Dialog nur Sichten mit Geometrietyp „Fläche" oder „beliebig" anzeigt und beachtet.
:*Zeichnen Sie ein oder mehrere Polygone über das Auswahltool des Markierungsdialogs ein. Die getroffenen Objekte werden in der Karte als markiert dargestellt, wobei Objekte markiert werden, die innerhalb der Markierungspolygone liegen oder davon geschnitten werden.
:*Die Anzahl der markierten Objekte pro Sicht wird in der Sichtenliste angezeigt.


[[File:x54.png|800px]]
:[[File:x54.png|800px]]


Klicken Sie Button [[File:Exportieren_16.png|16px]] (''Export'') in der Toolbar des Markierungsdialoges. Es wird ein modaler Dialog geöffnet der nochmals die Liste der Sichten anzeigt, welche durch die Markierung betroffen sind.


[[File:x55.png|400px]]
:*Klicken Sie auf [[File:Exportieren_16.png|16px]] (''Export'') in der Toolbar des Markierungsdialoges. Es wird ein modaler Dialog geöffnet der nochmals die Liste der Sichten anzeigt, welche durch die Markierung betroffen sind.


Nach dem Sie „OK" geklickt haben, schliessen sich Export- und Markierung-Dialog und die Berechnung startet mit Fortschrittsanzeige. Dabei wird eine CSV-Datei erzeugt. Nach Abschluss der Berechnung wird die CSV zum Client transferiert, dort im temporären Verzeichnis gespeichert und das über das Betriebssystem registrierte Programm für CSV-Dateien (Excel, OpenOffice, etc.) automatisch damit geöffnet:
:[[File:x55.png|400px]]


[[File:x56.png|800px]]


Bei der Flächenbilanz (einzeln) wird eine CSV-Datei nach folgenden Regeln erzeugt:
:*Nachdem Sie „OK" geklickt haben, schliessen sich Export- und Markierung-Dialog und die Berechnung startet mit Fortschrittsanzeige. Dabei wird eine CSV-Datei erzeugt.
:*Nach Abschluss der Berechnung wird die CSV zum Client transferiert, dort im temporären Verzeichnis gespeichert und das über das Betriebssystem registrierte Programm für CSV-Dateien (Excel, OpenOffice, etc.) automatisch damit geöffnet:


1).innenliegende Flächen werden komplett übernommen
:[[File:x56.png|800px]]


2).schneidende Flächen werden mit ihrem Anteil, der innerhalb der Begrenzungsfläche liegt, übernommen. Pro Objekt und Sicht gibt es immer nur eine Flächenausgabe, d.h. entstehen durch die Verschneidung eines Objektes einer Sicht mehrere Teilflächen, geht nur die Gesamtsumme dieser Teilflächen in die Statistik ein.


3).kommt ein Objekt mehrfach in den gewählten Sichten vor, geht das Objekt auch mehrfach, also einmal pro Sicht, in die Statistik ein.
Bei der Flächenbilanz (einzeln) wird eine CSV-Datei nach folgenden Regeln erzeugt:
#Innenliegende Flächen werden komplett übernommen
#Schneidende Flächen werden mit ihrem Anteil, der innerhalb der Begrenzungsfläche liegt, übernommen. Pro Objekt und Sicht gibt es immer nur eine Flächenausgabe, d.h. entstehen durch die Verschneidung eines Objektes einer Sicht mehrere Teilflächen, geht nur die Gesamtsumme dieser Teilflächen in die Statistik ein.
#Kommt ein Objekt mehrfach in den gewählten Sichten vor, geht das Objekt auch mehrfach, also einmal pro Sicht, in die Statistik ein.


Im Modus „Einzeln" wird pro markiertes Objekt eine Zeile in der CSV-Datei unter Angabe von Objekt-ID (Spalte A), Fläche (Spalte B), Sichtenname (Spalte C) und den ggf. im Spaltenaufbau definierten Attributen erzeugt.  
Im Modus „Einzeln" wird pro markiertes Objekt eine Zeile in der CSV-Datei unter Angabe von Objekt-ID (Spalte A), Fläche (Spalte B), Sichtenname (Spalte C) und den ggf. im Spaltenaufbau definierten Attributen erzeugt.  


'''Flächenbilanz Einzeln mit Spaltenaufbau'''
'''Flächenbilanz Einzeln mit Spaltenaufbau:'''
 
:*Klicken Sie mit der rechten Maustaste auf [[File:Projekte_16.png|16px]] (''Projekt'') > [[File:Exportieren_16.png|16px]] (''Export'') > [[File:neu_16.png|16px]] (''Flächenbilanz (einzeln)'').
Klicken Sie mit der rechten Maustaste auf [[File:Projekte_16.png|16px]] (''Projekt'') > [[File:Exportieren_16.png|16px]] (''Export'') > [[File:neu_16.png|16px]] (''Flächenbilanz (einzeln)'').
:*Wählen Sie ein Objekt aus und starten Sie Export. Es öffnet sich ein Dialogfenster, in dem Spaltenaufbauten angegeben werden können, um zu definieren welche Attribute mit ausgegeben werden.
 
:*Öffnen Sie Spalteneditor hinter einer Sicht:
Wählen Sie ein Objekt aus und starten Sie Export. Es öffnet sich ein Dialogfenster, in dem Spaltenaufbauten angegeben werden können, um zu definieren welche Attribute mit ausgegeben werden. Öffnen Sie Spalteneditor hinter einer Sicht:


[[File:x60.png|600px]]
:[[File:x60.png|600px]]


Spalteneditor öffnet sich, kann erstellt und gespeichert werden.
Spalteneditor öffnet sich, kann erstellt und gespeichert werden.
Zeile 643: Zeile 837:
[[File:x61.png|800px]]
[[File:x61.png|800px]]


Klicken Sie "OK".
 
:*Klicken Sie auf "OK".
    
    
[[File:x62.png|600px]]
:[[File:x62.png|600px]]
 


Export startet. CSV datei wird geöffnet. Die im Spaltenaufbau für die Sicht gespeicherten Attribute werden mit ausgegeben.
Export startet. CSV datei wird geöffnet. Die im Spaltenaufbau für die Sicht gespeicherten Attribute werden mit ausgegeben.


'''Flächenbilanz Summe'''
'''Flächenbilanz Summe:'''
:*Klicken Sie mit der rechten Maustaste auf [[File:Projekte_16.png|16px]] (''Projekt'') > [[File:Exportieren_16.png|16px]] (''Export'') > [[File:neu_16.png|16px]] (''Flächenbilanz (Summe)'')
 
:[[File:x57.png|800px]]


Klicken Sie mit der rechten Maustaste auf [[File:Projekte_16.png|16px]] (''Projekt'') > [[File:Exportieren_16.png|16px]] (''Export'') > [[File:neu_16.png|16px]] (''Flächenbilanz (Summe)'')


[[File:x57.png|800px]]
:*Alle Schritte wie bei der Flächebilanz (einzeln).


Alle Schritte wie bei der Flächebilanz (einzeln).
:[[File:x58.png|300px]]


[[File:x58.png|300px]]


Bei der Flächenbilanz (Summe) wird eine CSV-Datei nach folgenden Regeln erzeugt:
Bei der Flächenbilanz (Summe) wird eine CSV-Datei nach folgenden Regeln erzeugt:
#Innenliegende Flächen werden komplett übernommen
#Schneidende Flächen mit ihrem Anteil, der innerhalb der Begrenzungsfläche liegt, übernommen. Pro Objekt und Sicht gibt es immer nur eine Flächenausgabe, d.h. entstehen durch die Verschneidung eines Objektes einer Sicht mehrere Teilflächen, geht nur die Gesamtsumme dieser Teilflächen in die Statistik ein.
#Kommt ein Objekt mehrfach in den gewählten Sichten vor, geht das Objekt auch mehrfach, also einmal pro Sicht, in die Statistik ein.


1).innenliegende Flächen werden komplett übernommen
:[[File:x59.png|800px]]
 
2).schneidende Flächen mit ihrem Anteil, der innerhalb der Begrenzungsfläche liegt, übernommen. Pro Objekt und Sicht gibt es immer nur eine Flächenausgabe, d.h. entstehen durch die Verschneidung eines Objektes einer Sicht mehrere Teilflächen, geht nur die Gesamtsumme dieser Teilflächen in die Statistik ein.
 
3).kommt ein Objekt mehrfach in den gewählten Sichten vor, geht das Objekt auch mehrfach, also einmal pro Sicht, in die Statistik ein.
 
 
[[File:x59.png|800px]]




[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]
[[{{{hochlink|#top}}}|Hoch zum {{{hochtext|Seitenanfang}}}]]

Aktuelle Version vom 30. August 2023, 07:40 Uhr

Suchcenter

Mit dem Suchcenter können Sie in GeoMedia SmartClient Kommunal vorgefertigte Suchanfragen starten. Sie können z.B. nach Adressen oder Flurstücken suchen, indem Sie die entsprechende vordefinierte Suchanfrage auswählen. Ist noch keine Suchanfrage auswählbar oder sollen neue, individuelle Suchanfragen über das Suchcenter bereitgestellt werden, so können diese mithilfe des Filter-Managers konfiguriert werden.

Das Fenster "Suchcenter" öffnen Sie mit einem Klick auf (Suchcenter) in der Statusleiste. Wählen Sie aus der Liste aus, wonach Sie suchen wollen. Im unteren Teil des Fensters erscheinen die Eingabefelder. Tragen Sie Ihre Suchbegriffe dort ein. Sollte Ihnen die genaue Schreibweise nicht bekannt sein, können Sie mit einem Platzhalter (*) die Eingabe abkürzen. Sie können die Suche nun mit der Schaltfläche "Suche starten" initiieren.


Das Ergebnis wird in einer Tabelle angezeigt, die mit der Suchcenter-Abfrage verknüpft ist. In der Statusleiste wird die Anzahl der gefundenen Ergebnisse angezeigt.

Wenn zu viele Ergebnisse in der Tabelle erscheinen, müssen Sie Ihre Suche präzisieren. Das können Sie tun, indem Sie ein weiteres Eingabefeld füllen (falls vorhanden). Nach Eingabe des Wertes starten Sie die Abfrage erneut mit "Suche starten". Das Ergebnis aktualisiert sich in der noch geöffneten Tabelle. Um ein Ergebnis in der Karte anzuzeigen, klicken Sie auf das Symbol neben dem Tabelleneintrag. Um die zu dem Ergebnis zugehörigen Daten anzuzeigen und gegebenenfalls zu ändern, klicken Sie auf das Symbol .

Hinweis: Sind mehrere Sichten auf eine Objektklasse vorhanden, die alle einen Sichtenfilter definiert haben, wird die Funktion (Objekte in der Karte anzeigen) in der Tabellen Toolbar nicht angezeigt. Gibt es nur eine Sicht auf die Objektklasse, die keinen Sichtenfilter beinhaltet, ist die Funktion vorhanden. Wie hier beschrieben, kann eine Sicht die gesamten Datensätze einer Objektklasse darstellen oder eine Teilmenge davon. Die Suche im Suchcenter greift auf die Objektklasse und nicht auf die Sicht zu.
Ist die Funktion nicht vorhanden, gibt es keine ungefilterte Sicht auf die entsprechende Objektklasse. In diesem Fall wird ihnen die Auswahl der Sichten angezeigt, sofern sie die Funktion (Objekte in der Karte anzeigen) eines einzelnen Eintrags öffnen, in deren Objektklasse sich das gesuchte Objekt befindet. Je nachdem welche Sicht Sie dann auswählen, wird das Objekt in dieser Sicht angezeigt. Zum Beispiel entspricht dann die Darstellung der Definition der ausgewählten Sicht. Um die Funktion also dauerhaft angezeigt zu bekommen, muss mindestens eine ungefilterte Sicht auf die Objektklasse vorhanden sein.


Falls keine Suchergebnisse gefunden werden, erscheint eine entsprechende Meldung.

Die Darstellung der Suchergebnisse können Sie über Spalten- und Sortierkonfiguration beeinflussen. Unter "Filterkonfiguration" stehen in der zugehörigen Auswahlliste vordefinierte Filterfunktionen zur Verfügung, um die Suchergebnisse nach beliebigen Kriterien zu filtern. Wenn Sie Filterergebnisse rückgängig machen wollen, sodass wieder alle Datensätze in der Tabelle angezeigt werden, dann müssen Sie nur den Standard-Filter "keine" aus der Filterliste wählen.


Hoch zum Seitenanfang

Abfragen aus der Karte

  • Ein oder mehrere Objekte in der Karte können ausgewählt werden.
  • Je nach Einstellung wird die Auswahl durch eine andere Darstellung hervorgehoben (eine Markierung).
  • Die Markierung ist eine Darstellungsdefinition, die pro Sicht individuell definiert werden kann.
  • Standardmäßig werden Farben in rötlichen Tönen für die Hervorhebung ausgewählter Datensätze verwendet.
  • Für die Auswahl der Objekte in der Karte stehen in der Werkzeugleiste der Karte mehrere Funktionen zur Verfügung:
Funktionen
Symbol Definition
Punktauswahl.

Mit dieser Funktion können Sie sich über Objekte auf der Karte informieren. Durch Mausklick wird die Funktion aktiviert, dann klicken Sie auf der Karte auf das gefragte Objekt.

Rechteckauswahl.

Mit dieser Funktion werden alle Objekte innerhalb eines frei vergrößerbaren Rechtecks ausgewählt. Dafür ziehen Sie mit gedrückter linker Maustaste ein Auswahlrechteck auf und lassen die Maustaste los, sobald sich die gewünschten Objekte in dem Auswahlrechteck befinden.

Kreisauswahl.

Mit dieser Funktion werden alle Objekte innerhalb eines frei vergrößerbaren Kreises ausgewählt. Dafür klicken Sie mit der linken Maustaste auf eine bestimmte Stelle in der Karte und setzen so den Mittelpunkt des Kreises. Anschließend bewegen Sie die Maus weg von diesem Punkt. Der Kreis wird aufgezogen. Ein weiterer Klick mit der linken Maustaste beendet die Auswahl.

Polygonauswahl.

Diese Funktion ermöglicht das Auswählen eines Bereiches in beliebiger Form. Besonders geeignet, wenn nur bestimmte Objekte ausgewählt werden sollen. Mit der linken Maustaste setzen Sie die Punkte des Rahmens. Mit Doppelklick beenden Sie diesen Vorgang und zeichnen somit den Rahmen.

Linienauswahl.

Diese Funktion ermöglicht das Auswählen von Objekten, die eine Linie schneiden. Mit der linken Maustaste setzen Sie die Punkte der Linie. Schließen Sie mit Doppelklick ab.

Markiertes Objekt als Begrenzung

Diese Funktion ermöglicht das Auswählen von Objekten, welche sich innerhalb des ausgewählten Objekts befinden.

Kartenausschnitt

Diese Funktion ermöglicht das Auswählen von Objekten, welche sich innerhalb des aktuellen Kartenausschnitts befinden.


Arbeitsschritte:

  • Klicken Sie die gewünschte Funktion an.
  • Klicken Sie das Objekt in der Karte an oder zeichnen Sie je nach Funktion die Auswahlfläche (als Rechteck oder Kreis o.ä.) in die Karte. Bestätigen Sie mit Linksklick.

Ergebnis:

  • In der Karte erscheint ein Kontextmenü mit einer Auflistung der "gefundenen" Objekte pro Sicht.
  • Die Art des Kontextmenüs hängt von der Anzahl der Objekte unterhalb des Mauszeigers ab. Dabei kann es vorkommen, dass mehrere Objekte einer oder mehrerer Sichten gefunden werden. Im Kontextmenü werden die Sichten, in denen sich die Objekte befinden, aufgelistet. Sie müssen sich dann für ein Objekt (einer Sicht) entscheiden.

In der folgenden Beispiel-Abbildung wurde per Punktauswahl ein Gebäude auf einem Flurstück ausgewählt. Da sich die markierte Stelle mit anderen Objekten auf der Karte (z.B. Flurstücke, Adressen) überschneidet, stehen diese Objekte im Kontextmenü zur Auswahl. Im Beispiel wird das Objekt "Gebäude für Handel- und Dienstleistungen" ausgewählt.


Was können Sie mit den ausgewählten Objekten tun?

Es öffnet sich ein weiteres Kontextmenü. (Im Beispiel das von "Gebäude für Handels- und Dienstleistungen".)


Sie haben in Abhängigkeit des Geometrietyps (Punkt, Linie, Text, Fläche) und Ihrer Nutzer- bzw. Gruppen-Berechtigungen folgende Optionen zur Verfügung:

Funktionen
Symbol Definition
Öffnen der Sicht-Eigenschaften (hier können die graphische Ausprägung, die maßstabsabhängige Darstellung bzw. Filter definiert werden)
Anzeigen der Sicht im Explorer
Auswählen (das Objekt wird graphisch hervorgehoben)
Aktivsetzen der Sicht
Öffnen der zum Datensatz des Objekts zugehörigen Tabelle
Ausblenden der Sicht
Öffnen des Objekt-Datensatzes in der Maskenansicht
Hinzufügen zur aktuellen Objektliste
Öffnen des Dokuments
Erstellen (Digitalisieren) eines neuen Objekts in der ausgewählten Sicht
Bearbeiten (vorhandene Objekte verschieben, Geometriepunkte löschen oder einfügen u.a.)
Übernehmen der Geometrie
Löschen des Objekts
Setzen eines Schwerpunkts


Hoch zum Seitenanfang

Räumliche Untertabellen

In GeoMedia SmartClient Kommunal ist es möglich, räumliche Zuordnungen von Objekten unterschiedlicher Objektklassen zu ermitteln. Diese Informationen können an den Objektklassen mittels räumlicher Untertabellen dargestellt werden.

Überblick

Als Beispiel sollen alle Gebäude auf einem Flurstück angezeigt werden. Das ist die Situation auf der Karte:


Es wurde also ein Flurstück auf der Karte mit darauf liegenden Wohngebäuden ausgewählt und die zugehörige Tabelle mit dem Datensatz geöffnet (siehe Abfragen aus der Karte). Der Datensatz wird über (Öffnen) aufgerufen. Im Maskenexplorer in der linken oberen Ecke wird im Beispiel nun die Registerkarte "Fachobjekte" ausgewählt. Im zugehörigen Fenster werden unterliegende Objekte angezeigt, in diesem Fall also Wohngebäude, die sich mit dem gewählten Flurstück überschneiden. Diese können jeweils über bearbeitet werden oder ggf. auch mit zentriert in der Karte angezeigt werden.



Hinweis: Um eine solche räumliche Untertabelle für überschneidende Objekte einer beliebigen Sicht zu erhalten, muss sie erst konfiguriert werden. Dies wird im Folgenden beschrieben.


Hoch zum Seitenanfang

Konfiguration

Prinzipiell können alle Objekte, die in räumlicher Beziehung zu anderen Objekten stehen, in der räumlichen Untertabelle angezeigt werden. Dazu sind folgende Konfigurationen nötig:

  • Es wird eine Registerkarte mit der räumlichen Untertabelle angelegt. Diese soll im Maskenexplorer erscheinen, wenn der Datensatz geöffnet wird. (Im obigen Beispiel war dies "Fachobjekte" für die Sicht "Flurstücke"). Das Anlegen dieser Registerkarte mit der Untertabelle erfolgt über den Masken-Designer (siehe unten).
  • Es wird eine Spaltenkonfiguration für die Tabelleneinträge der räumlichen Untertabelle erstellt, um festzulegen, welche Datenfelder in der Tabelle dargestellt werden sollen.

Beginnen Sie Ihre Konfiguration mit dem Masken-Designer, indem Sie diesen über Rechtsklick auf eine Sicht (im Beispiel: Flurstücke) > Konfiguration > Masken-Designer aufrufen.

Die räumliche Untertabelle der Beispiel-Sicht "Flurstücke" befindet sich in der Registerkarte "Fachobjekte" (in der Beispielabbildung rechts oben zu erkennen). Ist in Ihrer Sicht noch keine Untertabelle vorhanden, so legen Sie zunächst eine neue Registerkarte an, indem Sie das Symbol anklicken und auf die Registerkartenleiste im rechten Fenster hinüberziehen (siehe auch unter Allgemeine Vorgehensweise bei Maskenkonfigurationen). Unter "Value" in der zugehörigen Einstellungsmaske (im Fenster weiter unten) können Sie die Registerkarte benennen. Ziehen Sie anschließend eine räumliche Untertabelle über das zugehörige Symbol (räumliche Untertabelle) in die erstellte Registerkarte.

Um Konfigurationen an der räumlichen Untertabelle vornehmen zu können, klicken Sie zunächst auf Ihre Tabelle, sodass nun im unteren Abschnitt des Masken-Designers die zugehörige Einstellungsmaske erscheint. Darin lässt sich die Auswahl der Objektklassen für den räumlichen Filter vornehmen. Klicken Sie hierzu auf das Symbol (Objektklasse auswählen).

Es öffnet sich die Objektklassenauswahl. Über Eingabe in das Feld "Filtereingabe" kann nach einer Objektklasse gesucht werden oder die Auswahl durch die Eingabe eines Teilbegriffs eingeschränkt werden. Alternativ kann eine Fachanwendung gewählt und die gewünschte Objektklasse aus der zugehörigen Liste ausgesucht werden.

Die gewählten Objektklassen erscheinen nun im Maskenfeld "Objektklasse". Mit Doppelklick lassen sie sich wieder aus dem Feld entfernen. Rechts neben dem Feld kann der räumliche Filter gesetzt werden (im Beispiel: "schneidet", d.h. alle Objektklassen, die das betreffende Flurstück schneiden, werden aufgelistet - zu weiteren räumlichen Operatoren siehe Topologische Operatoren).

Anschließend wird die Konfiguration über (Speichern) gespeichert. Beim Öffnen des Datensatzes zu einem Objekt der entsprechenden Sicht wird nun die erstellte Registerkarte angezeigt. Öffnen Sie diese, so finden Sie darin die im Masken-Designer definierte räumliche Untertabelle. Nun können Sie noch bestimmen, welche Datenfelder zu den Objekten der Tabelle aufgelistet werden sollen.

Klicken Sie hierzu auf das Symbol (Spalten-Assistent) über der Tabelle, um die Spaltenkonfiguration vorzunehmen. Ziehen Sie die gewünschten Datenfelder von der Liste ins rechte Fenster (siehe hierzu Spaltenkonfiguration) und speichern Sie.

Öffnen Sie nun erneut die räumliche Untertabelle zu einem Objekt der entsprechenden Sicht, so werden dort - falls vorhanden - unterliegende Objekte nach benutzerdefiniertem Spaltenaufbau angezeigt.


Hoch zum Seitenanfang

Räumliche Abfragen

Mit räumlichen Abfragen können Sie räumliche Beziehungen zwischen Objekten analysieren. Die Ergebnisse sind Datensätze, die in einer Tabelle zur weiteren Bearbeitung oder Ausgabe angezeigt werden.

Den Editor zum Erstellen räumlicher Abfragen können Sie in jeder Tabelle über das Symbol (Öffnet den Editor zum Erstellen von räumlichen Abfragen) öffnen.

Sie können im Editor eine benutzerdefinierte räumliche Abfrage anlegen, indem Sie auf (neue räumliche Abfrage erstellen) klicken.

Vergeben Sie einen Namen und ggf. einen Beschreibungstext für die Abfrage. Anschließend wählen Sie die gesuchte Objektklasse aus. Damit legen Sie die Tabelle fest, die sich nach dem Starten der Abfrage mit den Ergebnissen öffnet. Klicken Sie hierzu auf das Symbol (Objektklasse auswählen). Es öffnet sich die Objektklassenauswahl (siehe oben). Dort können Sie nach einem Objektklassen-Namen suchen oder erst die Fachanwendung wählen und dann die gewünschte Objektklasse aus der zugehörigen Liste.

Anschließend können Sie zusätzlich noch einen Filter auswählen. Dieser muss allerdings im Vorfeld schon angelegt worden sein (siehe Filterkonfiguration). In der Beispiel-Abbildung unten wurde der Filter "Gebäudefunktion – Wohngebäude" gewählt.

Neben der gesuchten brauchen Sie anschließend auch eine zu verschneidende Objektklasse. Dazu wählen Sie die gesuchte Objektklasse über das zugehörige Symbol das Symbol aus (im Beispiel: "Flurstück"). Auch bei der zu verschneidenden Objektklasse können Sie einen Filter wählen, der die Datenmenge einschränkt (im Beispiel: "Flurstücke städtisch").

Alternativ gibt es die Möglichkeit, in der Tabelle oder in der Karte markierte Objektklassen auszuwählen. Die Wahl von Objektklassen aus der Tabelle bedeutet, dass Sie die Tabelle der zu verschneidenden Objektklasse öffnen und Datensätze markieren müssen. Bei der Wahl von Objektklassen aus der Karte müssen Sie zuvor Objekte in der Karte markieren. Mit der Schaltfläche aktualisieren Sie die Anzahl der in der Tabelle ausgewählten Datensätze, falls diese sich geändert hat.

Der räumliche Filter entscheidet nun, in welcher Art und Weise (siehe unten) die räumliche Verschneidung durchgeführt wird (im Beispiel: innerhalb, d.h. alle Gebäude, die sich innerhalb von städtischen Flurstücken befinden).

Die Abfrage kann nun über Klick auf (räumliche Abfrage ausführen) gestartet werden. Es öffnet sich die Tabelle mit den gefundenen Objektklassen. In der Statusleiste wird die Anzahl an Ergebnissen (Anzahl der geladenen Datensätze) angezeigt. Die Datensätze der (Ergebnis-)Tabelle können nun eingesehen werden bzw. die Objekte zentriert in der Karte dargestellt werden.

Wenn die Ergebnisse Ihren Erwartungen entsprechen, kann die räumliche Abfrage über gespeichert werden. Die Abfrage erscheint ab jetzt in der Liste links im Editor unter dem Ordner der entsprechenden Fachanwendung. Per Doppelklick kann die Abfrage wieder ausgewählt und bearbeitet werden.

Topologische Operatoren

Es stehen verschiedene topologische Operatoren (räumliche Beziehungen) zur Wahl, die als räumlicher Filter für die Abfrage genutzt werden können. Dazu gehören:

  • Enthält
  • Kreuzt
  • Verschieden
  • IstGleich(Räumlich)
  • Schneidet
  • Überschneidet
  • Berührt
  • Innerhalb
  • im Abstand von

Im Folgenden sollen diese Beziehungen (außer bei Linien-Geometrien) anhand des Beispiels "Wohnhäuser auf Flurstücken" erläutert werden. Hierzu wurde jeweils ein einzelnes Flurstück mit Wohngebäuden per Punktauswahl ausgewählt und die zugehörige Tabelle geöffnet. Der Tabelleneintrag wurde ausgewählt und der Editor zum Erstellen von räumlichen Abfragen geöffnet. Als gesuchte Objektklasse wurden Wohngebäude gewählt, als zu verschneidende Objektklasse Flurstücke, und es wurde über Markierung von "in Tabelle ausgewählte Objekte" der aktuelle Flurstück-Datensatz ausgewählt. Anschließend wurden die zur Verfügung stehenden räumlichen Filter getestet (Gebäude "..." Flurstück):


Enthält:

Es werden alle Objekte herausgefiltert, die Objekte der zu verschneidenden Objektklasse enthalten. Im Beispiel wäre dies ein Gebäude (in der folgenden Abbildung blau dargestellt), das das betreffende Flurstück "enthält", d.h. das so groß ist, dass es das Flurstück überdeckt. In der Abbildung werden die Grenzen des enthaltenen Flurstücks mit grünen Linien angedeutet.


Kreuzt:

Dies betrifft Linien-Geometrien. Es werden alle Objekte herausgefiltert, die sich mit Objekten der zu verschneidenden Objektklasse kreuzen. Im Beispiel kreuzt eine strittige Flurstücksgrenze (rot eingezeichnet) das betreffende Flurstück (grün markiert).


Verschieden:

Es werden alle Objekte herausgefiltert, die von der zu verschneidenden Objektklasse verschieden sind - im Beispiel also alle Wohngebäude außerhalb des gewählten Flurstücks.


IstGleich(Räumlich):

Es werden alle Objekte herausgefiltert, die (räumlich) gleich einem Objekt der zu verschneidenden Objektklasse sind. Im Beispiel wäre dies also ein Wohnhaus (in der folgenden Abbildung blau dargestellt), das genau die Fläche des Flurstücks abdeckt:


Schneidet:

Es werden alle Objekte herausgefiltert, die sich mit der zu verschneidenden Objektklasse schneiden, d.h. es gibt an irgendwelchen Stellen räumliche Schnittpunkte zwischen den verschiedenen Objekten. In der Beispiel-Abbildung schneiden sich fünf Gebäude mit dem grün markierten Flurstück, da sie sich gleiche Flächen teilen. Das blaue Gebäude oben links in der Abbildung gehört nicht mit zu den Ergebnissen, da es sich nicht mit dem betreffenden Flurstück schneidet.


Überschneidet:

Es werden alle Objekte herausgefiltert, die sich mit Objekten der zu verschneidenden Objektklasse überlappen. Dies betrifft im Beispiel also Gebäude, die nur zu einem Teil auf dem entsprechenden Flurstück stehen (in der Abbildung ist dies das markierte Gebäude auf dem grünen Flurstück). Die ermittelten Gebäude würden also sowohl bei "schneidet" als auch bei "überschneidet" gelistet werden.


Berührt:

Es werden alle Objekte herausgefiltert, die sich an den Grenzen mit einem Objekt der zu verschneidenden Objektklasse berühren.


Innerhalb:

Das Gegenteil von "enthält". Es werden nur die Objekte herausgefiltert, die sich komplett innerhalb der zu verschneidenden Objektklasse befinden. In der Beispiel-Abbildung sind dies also nur die markierten Wohngebäude, die sich komplett innerhalb des grünen Flurstücks befinden:


Im Abstand von:

Bei Wahl dieses Filters erscheint ein zusätzliches Textfeld im Editor, in das ein beliebiger Abstand (in Metern) zur zu verschneidenden Objektklasse eingegeben werden kann:

Im Beispiel wird nach Gebäuden gefiltert, die sich in einem Abstand von bis zu 10 Metern zum gewählten (grün markierten) Flurstück befinden. Die ermittelten Wohngebäude sind in der Karte rot markiert:



Hoch zum Seitenanfang

Report erstellen

GMSC-K vefügt ab Version 2016 SP2 über drei verschiedene Reportsoftwareanbindungen: Crystal Reports, Eclipse BIRT und Jasper Reports. Damit können Sie Daten aus GMSC-K unter Angabe einer Vorlage in ein PDF exportieren wobei auch die Möglichkeit besteht ein Kartenbild einzubinden. Zunächst eine kurze Übersicht:

Crystal Reports Eclipse BIRT Jasper Reports
Homepage https://www.crystalreports.com/ https://www.eclipse.org/birt/ https://community.jaspersoft.com/
Lizenz Kommerziell OpenSource OpenSource mit kommerziellen Erweiterungen und Support
Support vom Hersteller Ja Ja, über Mailinglisten Ja
Reportlayout Millimeter genau möglich Automatisches Layout mit Größenvorgaben Millimeter genau möglich
Unterreports Ja, eigene Unterreportvorlage Ja, direkte Einbindung von Untertabellen ohne eigene Unterreportvorlage Ja, direkte Einbindung von Untertabellen oder eigene Unterreportvorlage Skriptsprache Ja Ja Ja
  • Objekte für die man einen Report erstellen möchte in Tabelle markieren
  • mit der Maus auf das Report-Icon in der Tabelle klicken, es öffnet sich der Reportdefinitons-Editor.

Hoch zum Seitenanfang

Aufbau des Reportdefinitons-Editors


  1. Liste der zur Verfügung stehenden Reports
  2. Eine neue Reportdefinition wird angelegt. Dabei wird der Name und Reportpfad aus den entsprechenden darüber liegenden Eingabefeldern verwendet.
  3. Die aktuell ausgewählte Reportdefinition wird mit den aktuellen Daten der Eingabefelder gespeichert.
  4. Die aktuell ausgewählte Reportdefinition wird gelöscht.
  5. Name des aktuell ausgewählten Report bzw. Namen-Eingabefeld für einen neu anzulegenden Report
  6. Auswahl der Reportsoftware (ab Version 2016 SP2)
  7. Optionale Aktion, die vor der Ausführung Reports gestartet werden soll, z.B. ALB-Abrufprotokoll
  8. Format der Reportergebnisdatei (PDF, Word etc.)
  9. Eingabefeld für den Pfad zur Reportvorlagedatei, die für einen neu anzulegenden Report verwendet werden soll. Zur Pfadauswahl dient der Button am rechten Ende des Eingabefeldes
  10. Eingabefeld für den Pfad zur Reportvorlagedatei, welche in der aktuell ausgewählten Reportdefinition gespeichert werden soll. Mit dem Pfadauswahl-Button kann dabei ein externern vorliegender Report ausgewählt werden.
  11. Öffnet die Reportvorlagedatei der aktuellen Reportdefinition lokal in der dafür vorgesehenen Anwendung. Dabei wird der lokale Pfad zu diesem Report in Feld 10 eingetragen.
  12. Ersetzt die Reportvorlage in der aktuellen Reportdefinition mit dem im Feld 10 angegebenen Report.
  13. Speichert die Reportvorlagedatei lokal in einem selbstgewählten Ordner.
  14. Eingabefeld für den Namen des Alternativreports. Der Name muss der einer bereits angelegten Reportdefinition sein. Diese Funktionalität spielt nur bei der Verwendung von Kartenausschnitten als Bild innerhalb des Reports eine Rolle. Der hier angegebene Report wird dann verwendet, wenn die Maßstabsangaben des Hauptreports zu klein für die Erstellung des Kartenausschnittbildes sind. Weiterhin wird dies nur bei der Einzelreporterstellung ausgewertet.
  15. Zugeordnet Reports können verwendet werden, um innerhalb eines Report verschiedene Papierformate zu verwenden. Z.B. kann für dies Ausgabe der Sachdaten das A4-Format verwendet werden, für die Ausgabe der Karte jedoch A3. Reports können durch Drag&Drop aus der Reportliste links in die Tabelle der zugeordneten Reports eingefügt werden. Ein Report mit zugeordneten Reports besitzt selbst keine Reportvorlage sondern für jeden Datensatz werden nacheinander die zugeordneten Reports ausgeführt und das Ergebnis in einer Gesamt-PDF-Datei gespeichert.
  16. Erstellt einen neuen Bilddefinitionseintrag in der darunter liegenden Bilddefinitionstabelle. Dies wird benötigt um Kartenausschnitte als Bild in den Report einzufügen.
  17. Löscht den aktuell ausgewählten Bilddefinitionseintrag.
  18. Kopiert den aktuell ausgewählten Bilddefinitionseintrag.
  19. Zeigt wahlweise nur die Bilddefinitionseinträge des aktuellen Projektes an oder alle. Damit kann ein Bilddefinitionseintrag einfach von einem Projekt in ein anderes kopiert werden.
  20. Name der Bilddefinition. Dies muss sich auf einen entsprechenden Parameter in der Reportvorlagedatei beziehen.
  21. Breite des zu Bildbereichs in der Reportvorlagedatei in Millimeter, d.h. das Bild wird mit dieser Breite von Kartenauschnitt erzeugt. Wird hier ein anderer Betrag angegeben als im Bildbereich, wird das Bild im Report entsprechend skaliert.
  22. Höhe des zu Bildbereichs in der Reportvorlagedatei in Millimeter, d.h. das Bild wird mit dieser Höhe von Kartenauschnitt erzeugt. Wird hier ein anderer Betrag angegeben als im Bildbereich, wird das Bild im Report entsprechend skaliert.
  23. Die Größe des Randbereichs des Bildes um das Fachobjekt in Prozent.
  24. Liste von Attributen, welche eine Verknüpfung zu anderen Objekten darstellen, von denen die Geometrie als Grundlage für die Erstellung des Kartenausschnittes genommen werden soll. Die Angabe erfolgt dabei in der Punktnotation wie sie im Maskeneditor zur Information verwendet wird. Wird hier nichts angegeben, wird automatisch nur die Geometrie des selektierten Objektes verwendet. Sobald hier ein Eintrag vorhanden ist, werden nur noch die hier angegebenen verknüpften Objektgeometrien verwendet. Um dann auch das selektierte (Haupt-)Objekt mit einzubeziehen muss dies durch die Angabe von „position“ als Attributname geschehen. Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
  25. Liste der möglichen Maßstäbe, die diese Bilddefinition unterstützt, z.B. bei 1:1000 Angabe von 1000. Wird kein passender Maßstab gefunden, wird der Alternativreport ausgeführt. Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
  26. Zu verwendete Arbeitssitzung für die Erstellung des Kartenausschnittbildes. Dadurch ist es möglich sich gezielt eine Arbeitssitzung zu definieren, welche den Vorstellungen für den Kartenausschnitt entsprechen und immer wieder verwendet werden kann.
  27. Hier kann optional der Name einer Darstellungsvariante angegeben werden.
  28. Liste der Sichtenfilter. Hier kann man genauer definieren, welche Objekte man in den einzelnen Sichten des Kartenausschnittes haben möchte. Die Syntax ist wie folgt: Objektklassen-ID = Attributpfad. Die Objektklassen-ID erhält man im Eigenschaftsdialog der jeweiligen Sicht. Der Attributpfad entspricht den verknüpften Objekten ausgehend von dem selektierten Hauptobjekt (wie in Punkt 25 beschrieben). Als Trenner ist Komma (,) oder Semikolon (;) möglich. Aber immer nur eins von beiden.
  29. Die ID des Projektes, für die dieser Bilddefinitionseintrag angelegt wurde. Ein Bilddefinitionseintrag ist immer einem Projekt zugeordnet da die Angaben zur Sichtenzuordnung in Punkt 29 immer projektabhängig sind.
  30. Gibt die gewünschte Auslösung für Rasterdaten an, die ggf. im Kartenbild ausgegeben werden.
  31. Erstellt einen Report und öffnet die fertige Datei danach automatisch mit der dafür vorgesehenen Anwendung lokal.
  32. Erstellt einen Report und speichert diesen in einem vom Nutzer definierten Ordner.
  33. Erstellt einen Report und öffnet die fertige Datei danach automatisch mit der dafür vorgesehenen Anwendung lokal. Ausserdem wird für jedes selektierte Objekt ein Dokument in GeoMedia SmartClient Kommunal angelegt, das die eben erstellten Report enthält und damit dauerhaft in GeoMedia SmartClient Kommunal hinterlegt ist.
  34. Erstellt für jedes selektierte Objekt eine einzelnen Report und hinterlegt diesen per Dokument-Objekt in GeoMedia SmartClient Kommunal.
  35. Führt eines Testlauf durch, bei dem kein Report erzeugt wird. Am Ende öffnet sich eine Textdatei mit dem Ergebnis des Testlaufs. Dies ist vor allem sinnvoll, um vorher zu überprüfen, ob der angegebene Maßstab für den Kartenausschnitt ausreicht.

Reportparameter

(ab Version 2020, 23.08.2021)

Für Reports können zusätzliche Parameter definiert werden, die dann im Report ausgewertet werden können. Ein Reportparameter wird wie folgt definiert:

  1. Name: Name, mit welchem im Report auf den Parameter zugegriffen wird
  2. Bezeichner: Bezeichner, welcher dem Nutzer bei Ausführung des Reports angezeigt wird
  3. Typ: der Datentyp - Text, Zahl, Gleitkommazahl, Datum, Auswahlliste
  4. Standardwert: ein Wert entsprechend des Datentyps, welcher beim Ausführen des Reports voreingestellt ist. Für Auswahllisten wird hier eine kommaseparierte Liste von Werten angegeben, welche dann dem Nutzer als Klappbox gezeigt wird. Der Standardwert kann in dieser Liste mit ein '*' markiert werden, z.B. "5,6*,7".
  5. Nutzerdefiniert: der Nutzer kann den Wert des Parameters ändern
  6. Pflichtfeld: der Nutzer muss zwingend einen Wert eingeben

Diese Angaben können durch Doppelklick in die entsprechenden Spalte der Tabelle der Parameter im Reporteditor geändert werden.

(ab Version 2022, 29.08.2023) Es werden außerdem Standardparameter übermittelt, die z.B. Informationen zum Nutzer enthalten, welcher den Report ausführt:

  1. user.login: Loginname des Nutzers
  2. user.name: Name des Nutzers
  3. user.department: Abteilung des Nutzers
  4. user.email: Email-Adresse des Nutzers
  5. user.telefon: Telefonnummer des Nutzers
  6. <Name-des-Kartenbildes>.scale: Maßstab, in dem das Kartebild <Name-des-Kartenbildes> erstellt wurde. Dies stellt eine Alternative zur Tabelle REPORTDATEN dar.


Hoch zum Seitenanfang

Crystal Reports

Installation der Crystal-Reports-Laufzeitumgebung

ACHTUNG: Ab Version 2016 SP2 wird die Crystal-Reports-Laufzeitumgebung nicht mehr mit ausgeliefert sondern muss separat heruntergeladen und installiert werden. Gehen Sie dazu wie folgt vor:

  • Laden Sie die Laufzeitumgebung von hier herunter: https://www.sap.com/cmp/td/sap-crystal-reports-eclipse-trial.html (Download "Runtime libraries").
  • Packen Sie die Zip-Datei aus und kopieren Sie alle Dateien aus dem Order lib in das GMSC-K-Installationsverzeichnis unter C:\Program Files\Intergraph\GeoMedia SmartClient Kommunal\Instances\Default\Server\thirdparty\CrystalReports\.
  • Starten Sie anschliessend den GMSC-K-Server-Dienst neu.

Vorbereiten einer Crystal Report-Datei für die Integration von Kartenausschnitten

  • In der CR-Datei muss ein Bildbereich definiert werden. (Einfügen OLE-Objekt)
  • Per rechte Maustaste im Bild den Grafik-Formatieren Dialog aufrufen und den Haken aus „Kann grösser werden entfernen“



  • Im Reiter „Bild“ kann man die Bildgrösse in Millimeter einsehen. Im selben Tab den Button „Speicherort der“ betätigen, um einen dynamischen Speicherort anzugeben.



  • Im nun geöffneten Formeleditor eingeben, wie sich der Bildpfad zur Laufzeit berechnet:



Dabei wird ein Crystal Report-Parameter verwendet (?bild1) gefolgt von der ID der Objektes welches in diesem Report dargestellt werden soll (KA_Haltung.ID) und die Dateiendung des Bildes (.png). Der Name des Bild-Parameters wird dabei als Name für die Bilddefinition verwendet. Über diesen schreibt GeoMedia SmartClient Kommunal zur Laufzeit einen Teil des Bildpfades in diesen Parameter und Crystal Report vervollständigt diesen mit Hilfe der oben angegebenen Formel.


Hoch zum Seitenanfang

Integration des Massstabes zu einem Kartenauschnitt

  • Für diese Funktion muss ein Parameter mit den Namen „reportdatenid“ erstellt werden. Dieser wird genutzt um zur Laufzeit eine eindeutige ID für jeden Reporterstellungsprozess zu erzeugen.
  • Dies erfolgt mit Hilfe eines Unterberichts in Crystal Report. Also muss zuerst ein Unterbericht erstellt werden ( Einfügen  Unterbericht)
  • Zuerst einen Namen eingeben und dann den Berichtsassistenten aufrufen



  • Dann die Tabelle „Reportdaten“ auswählen.



  • Dann den „Datenwert01“ der Tabelle „Reportdaten“ anzuzeigenden Wert auswählen



  • Danach diesen Dialog per Weiter-Button beenden
  • Im Verknüpfung-Reiter die ID des Hauptobjektes und den Parameter „reportdatenid“ übernehmen.



  • Den Dialog mit OK bestätigen, Unterbericht einfügen und per Doppelklick öffnen.
  • Im Menü Bericht  Auswahl-Assistenz  Datensatz den Auswahl-Assistent öffnen.
  • Hier wird definiert wie der Massstab zur Laufzeit aus der Zwischentabelle Reportdaten ermittelt wird. Die Ermittlung erfolgt dabei auf dem Feld „Datenschlüssel“ dieser Tabelle und der setzt sich in diesem Fall wie folgt zusammen: ID der Reportdaten + ID des Hauptobjektes + Name des Bildparameters/Bilddefinition
  • Die Tabelle der Reportdaten wird zur Laufzeit von GeoMedia SmartClient Kommunal gefüllt und nach der Reporterstellung wieder geleert.


(ab Version 2022, 29.08.2023)

Es kann auch der Reportparameter <Name-des-Kartenbildes>.scale verwendet werden.

Hoch zum Seitenanfang

Nutzen von Shared Variablen

Shared Variablen (SV) werden verwendet um Dateninhalte an verschiedenen Stellen eines Reports gemeinsam zu verwenden. Dies ist besonders für den Informationsaustausch zwischen dem Hauptbericht und den Unterberichten interessant. Dabei kann zum Beispiel ein Unterbericht genutzt werden, um bestimmte Daten aufzubereiten (z.B. Personen die mit einer bestimmten Personenart verknüpft sind oder Summenberechnungen über Datensätze, die mit dem Hauptobjekt verknüpft sind) und das Ergebnis danach in die Shared Variable zu schreiben, so dass das es im Hauptbericht zur Verfügung steht.

Beispiel: Finden der Person mit einer bestimmten Personenrolle (Notar)


1) Shared Variablen werden mit Hilfe von Formeln genutzt. Zuerst wird eine Formel angelegt, die die SV initialisiert:


2) Diese SV muss nun in einen möglichst weit oben liegenden Bereich des Berichtes eingefügt werden. Dieser Bereich muss ein anderer Bereich sein und er muss über dem Bereich angeordnet sein, in dem die SV genutzt werden soll. Dies dient dazu, das die SV erst von CR initialisert werden muss, um dann in den weiter unten liegenden Bereichen verwendbar zu sein. Der Bereich in dem die SV eingefügt wird, kann (oder sollte) dann ausgeblendet werden. (Der passende Screenshot dazu befindet sich weiter unten in Abschnitt 5)
3) Jetzt wird ein Unterbericht erstellt, der die Personen, die dem Hauptobjekt zugewiesen sind nach einer bestimmten Personenart filtert (hier 'NT' für Notar):



4) Zuerst benötigen wir eine Formel, die die SV zurücksetzt. Dies ist notwendig, wenn man einen Report für mehrere Datensätze macht und die SV ansonsten noch den Inhalt des vorherigen Datensatzes enthält. Diese Formel sollte in den Berichtskopf des Unterberichts eingefügt werden:
SHARED StringVar Notar_Nachname;
Notar_Nachname := '';


5) Danach wird die SV in diesem Unterbericht mit einer weiteren Formel mit Inhalt gefüllt (Zeile 2: der Nachname wird zugewiesen). Wichtig ist dabei, das die SV im Unterbericht selber vorkommen (z.B. in den Detailbereich gezogen) muss, damit diese auch ausgeführt wird. Die unten aufgeführte Formel listet alle Notar-Nachnamen komma-separiert auf. Möchten man nur einen Notar anzeigen reicht es den If-The-Else Teil komplett durch die Zeile nach dem Then-Befehl zu nutzen:
if( Notar_Nachname = '' )
then 
    Notar_Nachname := {AX_PERSON.NACHNAMEODERFIRMA}
else
    Notar_Nachname := Notar_Nachname + ", " + {AX_PERSON.NACHNAMEODERFIRMA};


6) Jetzt den Unterbericht ebenso wie die SV zur Initialisierung in einen möglichst weit oben liegenden Detail-Bereich des Hauptberichtes ziehen. Dies sollte aber nicht der Seiten- oder Berichtskopf sein, damit die SV sich nur auf den aktuellen Datensatz bezieht:


7) Die vorherigen Schritte dienten nur dem Erzeugen und Befüllen der SV. Um die SV zu nutzen wird im Hauptbericht eine weitere Formel angelegt, die den Inhalt der SV zurück gibt. Diese Formel kann dan als normales Textfeld beliebig oft im Hauptbericht verwendet werden. Bitte darauf achten das Semikolon in der zweiten Zeile weg zu lassen:



Tip: Hier wird eine SV vom Typ String/Text verwendet, für Zahlen gibt es den Variablentyp 'NumberVar'.


Hoch zum Seitenanfang

MSSQL-Datenbank per ODBC einbinden

Die ODBC-Verbindung bezieht sich auf eine Verbindung zu einem Datenbankserver, auf denen sich die eigentlichen Datenbanken befinden. D.h. Schritte 1 bis 7 beziehen sich auf das Einrichten einer Verbindung zu diesem Datenbankserver mit Hilfe von ODBC. Im Schritt 8 wir dann über diese Datenbankserver-Verbindung die eigentliche Datenbank ausgewählt, die man in Crystal Reports verwenden möchte.

1. Zuerst muss in Windows eine ODBC-Verbindung eingerichtet werden. Dazu die Datenquellenverwaltung öffnen.


2. Eine neue Datenquelle hinzufügen.


3. SQL-Server auswählen.
4. Dann einen Namen vergeben (so taucht diese Verbindung später in Crystal Reports wieder auf) und einen im Netzwerk vorhandenen Server auswählen.
5. Dann auf "Weiter" klicken und die Anmeldedaten eintragen.
6. In den nachfolgenden (per "Weiter" geklickt) Dialogfenstern entsprechende Einstellungen vornehmen (können auch alle auf den voreingestellten Werten gelassen werden) und im letzten Dialogfenster "Fertig stellen" klicken.
7. Nun Crystal Reports öffnen und unter dem Menüpunkt Datenbank den Datenbankassistenten aufrufen. Dann das Kreuz links neben dem ODBC-Eintrag auswählen und dann den Datenbank-Server (den eben erstellten ODBC-Eintrag) auswählen den man verwenden möchte.
8. Im letzten Schritt noch die Benutzerdaten eintragen und die Datenbank auswählen. Die Datenbank kann man erst auswählen, wenn die Anwender-ID und Kennwort richtig eingetragen sind.

Eclipse BIRT

(ab Version 2016 SP2)

Eclipse BIRT ist eine Open Source Reportsoftware. Der BIRT Designer kann hier heruntergeladen werden: http://download.eclipse.org/birt/downloads/#designer. Im folgenden wird beschrieben wie Sie einen BIRT-Report in GMSC-K einbinden. Eine komplette Beispielreportvorlage findet Sie hier: Datei:Stammblatt Flurstuecke.zip

Report-Parameter definieren

Im ersten Schritt müssen Sie folgende Report-Parameter definieren, die später beim Aufruf des Reports aus GMSC-K übergeben werden:

  • jdbcDriverClass - Datenbankverbindung
  • jdbcDriverUrl - Datenbankverbindung
  • jdbcUsername - Datenbankverbindung
  • jdbcPassword - Datenbankverbindung
  • selectionId - Verweis auf markierte Datensätze, die im Report angezeigt werden sollen
  • reportDataId (optional) - Verweis auf zusätzlich Daten, wenn ein Kartenbild eingebunden wird
  • karte (optional) - Verweis auf ein Kartenbild, der Name dieses Parameters muss mit dem Namen des Bildes in der Reportdefinition in GMSC-K übereinstimmen

Hoch zum Seitenanfang

Datenquelle erstellen

Legen Sie nun eine neue JDBC-Datenquelle an

und verbinden Sie deren Eigenschaften (Properties) mit den entsprechenden Reportparameteren.

Hoch zum Seitenanfang

Daten einbinden

Im nächsten Schritt legen Sie ein Dataset an und verweisen Sie in der SQL-Abfrage durch einen Join mit der Tabelle MARKIERUNG und dem Parameter selectionId auf die in GMSC-K selektierten Datensätze:

Verbinden Sie den Parameter der SQL-Abfrage mit dem Reportparameter selectionId.

Hoch zum Seitenanfang

Kartenbild integrieren

Um ein Kartenbild zu integrieren benötigen Sie den Reportparameter karte (siehe Abschnitt zu Reportparametern). Legen Sie dann in im Report an der gewünschten Stelle ein Bild an und setzen die URI auf den Wert

params["karte"].value + row["FLURSTUECK_ID"] + ".png"

wobei FLURSTUECK_ID der Verweis auf die ID des aktuellen Datensatzes ist, der wie unten gezeigt angelegt wird.




Der Maßstab des Bildes kann über die Reportdaten angezeigt werden. Legen Sie dazu den Reportparameter reportDataId und ein Dataset für die Tabelle REPORTDATEN mit dem Parameter reportDataId an:


Im Data Set Parameter-Binding geben Sie für den Parameter reportDataId den Wert params["reportDataId"].value + row["FLURSTUECK_ID"] + "karte" an. Benutzen Sie dann die Spalte DATENWERT01 aus dem Dataset, um den Maßstab einzubinden:

Hoch zum Seitenanfang

JasperReports

(ab Version 2016 SP1) JasperReports ist eine Open Source Reportsoftware. Der Designer JapserReports Studio kann hier heruntergeladen werden: https://community.jaspersoft.com/community-download.

Hinweis: Im Unterschied zu BIRT oder Crystal Reports können Unterberichte auch als separate Dateien eingebunden werden. Damit GMSC-K alle Reportdateien zur Verfügung hat, müssen Sie alle nötigen jrxml-Dateien in eine Zip-Datei packen und diese in GMSC-K hochladen. Dabei muss die Hauptreportdatei folgender Namenskonvention entsprechen: [GMSC-K-Reportdefinitionname]_main.jrxml. Verwenden Sie für Unterreports eingebettete Tabellen können Sie einfach nur die jrxml-Datei hochladen, deren Name dann beliebig sein kann.

Eine Beispielreportvorlage, die sowohl Unterberichte aus Dateien als auch aus eingebetteten Tabellen verwendet, findet Sie hier: Datei:JasperReports Stammblatt.zip

Im folgenden wird beschrieben wie Sie einen JasperReport in GMSC-K einbinden.

Report-Parameter definieren

Im ersten Schritt müssen Sie folgende Report-Parameter definieren, die später beim Aufruf des Reports aus GMSC-K übergeben werden:

  • selectionId - Verweis auf markierte Datensätze, die im Report angezeigt werden sollen
  • reportDataId (optional) - Verweis auf zusätzlich Daten, wenn ein Kartenbild eingebunden wird
  • karte (optional) - Verweis auf ein Kartenbild, der Name dieses Parameters muss mit dem Namen des Bildes in der Reportdefinition in GMSC-K übereinstimmen

Hoch zum Seitenanfang

Datenquelle erstellen

Legen Sie nun eine neue JDBC-Datenquelle an:

Hoch zum Seitenanfang

Daten einbinden

Im nächsten Schritt legen Sie ein Dataset an und verweisen Sie in der SQL-Abfrage durch einen Join mit der Tabelle MARKIERUNG und dem Parameter selectionId auf die in GMSC-K selektierten Datensätze: Verbinden Sie den Parameter der SQL-Abfrage mit dem Reportparameter selectionId.

Hoch zum Seitenanfang

Kartenbild integrieren

Um ein Kartenbild zu integrieren benötigen Sie den Reportparameter karte (siehe Abschnitt zu Reportparametern). Legen Sie dann in im Report an der gewünschten Stelle ein Bild an und setzen die URI auf den Wert

$P{karte} + $F{ID} + ".png"

wobei $F{ID} der Verweis auf die ID des aktuellen Datensatzes ist, der wie unten gezeigt angelegt wird.

Der Maßstab des Bildes kann über die Reportdaten angezeigt werden. Legen Sie dazu den Reportparameter reportDataParameter und ein Dataset für die Tabelle REPORTDATEN mit dem Parameter reportDataId an:

Im Data Set Parameter-Binding geben Sie für den Parameter reportDataParameter den Wert $P{reportDataId} + $F{ID} + "karte" an.

Benutzen Sie dann die Spalte DATENWERT01 aus dem Dataset, um den Maßstab einzubinden.

Hoch zum Seitenanfang


Hoch zum Seitenanfang

Flächenbilanz

Flächenbilanz einzeln:

  • Klicken Sie mit der rechten Maustaste auf (Projekt) > (Export) > (Flächenbilanz (einzeln)).


Es öffnet sich zunächst der schon für den DXF-Export verwendete Dialog zur Markierung von Objekten in der Karte, wobei dieser Dialog nur Sichten mit Geometrietyp „Fläche" oder „beliebig" anzeigt und beachtet.

  • Zeichnen Sie ein oder mehrere Polygone über das Auswahltool des Markierungsdialogs ein. Die getroffenen Objekte werden in der Karte als markiert dargestellt, wobei Objekte markiert werden, die innerhalb der Markierungspolygone liegen oder davon geschnitten werden.
  • Die Anzahl der markierten Objekte pro Sicht wird in der Sichtenliste angezeigt.


  • Klicken Sie auf (Export) in der Toolbar des Markierungsdialoges. Es wird ein modaler Dialog geöffnet der nochmals die Liste der Sichten anzeigt, welche durch die Markierung betroffen sind.


  • Nachdem Sie „OK" geklickt haben, schliessen sich Export- und Markierung-Dialog und die Berechnung startet mit Fortschrittsanzeige. Dabei wird eine CSV-Datei erzeugt.
  • Nach Abschluss der Berechnung wird die CSV zum Client transferiert, dort im temporären Verzeichnis gespeichert und das über das Betriebssystem registrierte Programm für CSV-Dateien (Excel, OpenOffice, etc.) automatisch damit geöffnet:


Bei der Flächenbilanz (einzeln) wird eine CSV-Datei nach folgenden Regeln erzeugt:

  1. Innenliegende Flächen werden komplett übernommen
  2. Schneidende Flächen werden mit ihrem Anteil, der innerhalb der Begrenzungsfläche liegt, übernommen. Pro Objekt und Sicht gibt es immer nur eine Flächenausgabe, d.h. entstehen durch die Verschneidung eines Objektes einer Sicht mehrere Teilflächen, geht nur die Gesamtsumme dieser Teilflächen in die Statistik ein.
  3. Kommt ein Objekt mehrfach in den gewählten Sichten vor, geht das Objekt auch mehrfach, also einmal pro Sicht, in die Statistik ein.

Im Modus „Einzeln" wird pro markiertes Objekt eine Zeile in der CSV-Datei unter Angabe von Objekt-ID (Spalte A), Fläche (Spalte B), Sichtenname (Spalte C) und den ggf. im Spaltenaufbau definierten Attributen erzeugt.

Flächenbilanz Einzeln mit Spaltenaufbau:

  • Klicken Sie mit der rechten Maustaste auf (Projekt) > (Export) > (Flächenbilanz (einzeln)).
  • Wählen Sie ein Objekt aus und starten Sie Export. Es öffnet sich ein Dialogfenster, in dem Spaltenaufbauten angegeben werden können, um zu definieren welche Attribute mit ausgegeben werden.
  • Öffnen Sie Spalteneditor hinter einer Sicht:

Spalteneditor öffnet sich, kann erstellt und gespeichert werden.


  • Klicken Sie auf "OK".


Export startet. CSV datei wird geöffnet. Die im Spaltenaufbau für die Sicht gespeicherten Attribute werden mit ausgegeben.

Flächenbilanz Summe:

  • Klicken Sie mit der rechten Maustaste auf (Projekt) > (Export) > (Flächenbilanz (Summe))


  • Alle Schritte wie bei der Flächebilanz (einzeln).


Bei der Flächenbilanz (Summe) wird eine CSV-Datei nach folgenden Regeln erzeugt:

  1. Innenliegende Flächen werden komplett übernommen
  2. Schneidende Flächen mit ihrem Anteil, der innerhalb der Begrenzungsfläche liegt, übernommen. Pro Objekt und Sicht gibt es immer nur eine Flächenausgabe, d.h. entstehen durch die Verschneidung eines Objektes einer Sicht mehrere Teilflächen, geht nur die Gesamtsumme dieser Teilflächen in die Statistik ein.
  3. Kommt ein Objekt mehrfach in den gewählten Sichten vor, geht das Objekt auch mehrfach, also einmal pro Sicht, in die Statistik ein.


Hoch zum Seitenanfang