StandardKopplung: Unterschied zwischen den Versionen
(19 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 9: | Zeile 9: | ||
javaws http://gmsckserver:8081/gmsck/gmsck.jnlp?username=xxx&password=xxx&workspace=Mappenname&bookmark=Arbeitssitzungsname | javaws http://gmsckserver:8081/gmsck/gmsck.jnlp?username=xxx&password=xxx&workspace=Mappenname&bookmark=Arbeitssitzungsname | ||
Die URL-Parameter sind optional, d.h. mit http://gmsckserver.de: | (ab Version 2018: hnlp://gmsckserver:18091/gmsck.hnlp?username=xxx&password=xxx&workspace=Mappenname&bookmark=Arbeitssitzungsname) | ||
Die URL-Parameter sind optional, d.h. mit http://gmsckserver.de:8081/gmsck/gmsck.jnlp bzw. hnlp://gmsckserver:18091/gmsck.hnlp erhält man die normale GMSC Kommunal -Anmeldung. | |||
Folgende URL-Parameter können angegeben werden: | Folgende URL-Parameter können angegeben werden: | ||
username Nutzername | {| class="wikitable" border="1" | ||
password Passwort | |- | ||
workspace Name der Mappe | |username | ||
bookmark Name der Arbeitssitzung | |Nutzername | ||
showExplorer True oder false – Explorer anzeigen oder nicht | |- | ||
showSearchCenter True oder false – Suchcenter anzeigen oder nicht | |password | ||
showMap | |Passwort | ||
|- | |||
|workspace | |||
|Name der Mappe | |||
True oder false – Übersichtskarte anzeigen oder nicht, ab Version 2014.1 | |- | ||
remoteControlPort Gibt den Port an, auf dem diese Kopplungsschnittstelle bedient werden kann, Standard ist 18092 | |bookmark | ||
|Name der Arbeitssitzung | |||
|- | |||
|showExplorer | |||
|True oder false – Explorer anzeigen oder nicht | |||
|- | |||
|showSearchCenter | |||
|True oder false – Suchcenter anzeigen oder nicht | |||
|- | |||
|showMap | |||
|True oder false – Karte anzeigen oder nicht | |||
|- | |||
|showOverviewMap | |||
|True oder false – Übersichtskarte anzeigen oder nicht, ab Version 2014.1 | |||
|- | |||
|remoteControlPort | |||
|Gibt den Port an, auf dem diese Kopplungsschnittstelle bedient werden kann, Standard ist 18092 | |||
|} | |||
Zur Prüfung, ob der Client läuft, kann die URL http://localhost:18092/remote aufgerufen werden. Wenn ein Verbindungsaufbau möglich ist, dann läuft GMSC Kommunal. | Zur Prüfung, ob der Client läuft, kann die URL http://localhost:18092/remote (ab Version 2018: http://localhost:18091/remote) aufgerufen werden. Wenn ein Verbindungsaufbau möglich ist, dann läuft GMSC Kommunal. | ||
Ab Version 10.6.1 steht ausserdem ein Hilfsprogramm zur Verfügung, welches Fremdprogramme aufrufen können, um GMSC Kommunal zu starten. Dieses Programm prüft ob der Client schon läuft, falls nicht, wird der Client gestartet und solange gewartet bis GMSC Kommunal vollständig gestartet ist. Dieses Programm kann wie folgt aufgerufen werden: | Ab Version 10.6.1 steht ausserdem ein Hilfsprogramm zur Verfügung, welches Fremdprogramme aufrufen können, um GMSC Kommunal zu starten. Dieses Programm prüft ob der Client schon läuft, falls nicht, wird der Client gestartet und solange gewartet bis GMSC Kommunal vollständig gestartet ist. Dieses Programm kann wie folgt aufgerufen werden: | ||
Zeile 45: | Zeile 63: | ||
Markiert eine Liste von Objekten in der Karte und zoomt ggf. dorthin. Wird nur ein Objekt angegeben und dieses Objekt exisitiert noch nicht, so kann das Objekt digitalisiert werden. Dazu muss der Nutzer in der Kartentoolbar auf den Reiter „Werkzeuge“ gehen und dort den letzten Button (Objekt digitalisieren) klicken. Die ID des neuen Objektes wird nach dem Digitalisieren automatisch übernommen. | Markiert eine Liste von Objekten in der Karte und zoomt ggf. dorthin. Wird nur ein Objekt angegeben und dieses Objekt exisitiert noch nicht, so kann das Objekt digitalisiert werden. Dazu muss der Nutzer in der Kartentoolbar auf den Reiter „Werkzeuge“ gehen und dort den letzten Button (Objekt digitalisieren) klicken. Die ID des neuen Objektes wird nach dem Digitalisieren automatisch übernommen. | ||
{| class="wikitable" border="1" | |||
URL-Parameter Wert Beschreibung | |- | ||
command showElements | !URL-Parameter | ||
theme FL, BP etc. Das Themenkürzel der Objekte, die angezeigt werden sollen | !Wert | ||
ids ID1,ID2,... Komma getrennte Liste der Objekt-IDs | !Beschreibung | ||
zoom true, false Gibt neben der Markierung an ob auch zu den Objekten gezoomt werden soll. | |- | ||
markMode REPLACE, ADD, SUBSTRACT Gibt an ob die bestehende Markierung ersetzt, erweitert oder verringert werden soll. Standardverhalten ist REPLACE | |command | ||
createIfNotExists true, false Falls true, wird automatisch in den Digitalisiermodus gewechselt, wenn das Objekt nicht vorhanden ist. | |showElements | ||
| | |||
|- | |||
|theme | |||
|FL, BP etc. | |||
|Das Themenkürzel der Objekte, die angezeigt werden sollen | |||
|- | |||
|ids | |||
|ID1,ID2,... | |||
|Komma getrennte Liste der Objekt-IDs | |||
|- | |||
|zoom | |||
|true, false | |||
|Gibt neben der Markierung an ob auch zu den Objekten gezoomt werden soll. | |||
|- | |||
|markMode | |||
|REPLACE, ADD, SUBSTRACT | |||
|Gibt an ob die bestehende Markierung ersetzt, erweitert oder verringert werden soll. Standardverhalten ist REPLACE | |||
|- | |||
|createIfNotExists | |||
|true, false | |||
|Falls true, wird automatisch in den Digitalisiermodus gewechselt, wenn das Objekt nicht vorhanden ist. | |||
(Seit Version 10.6.1) | (Seit Version 10.6.1) | ||
|} | |||
Zeile 88: | Zeile 128: | ||
|- | |- | ||
|... | |... | ||
| | |... | ||
| Eine offene Parameterliste der Felder, die geändert werden sollen (mit ihrem neuen Wert). Der Feldname entspricht dem Feldnamen der Tabelle in GMSC-K, z.B. KEY01 | | Eine offene Parameterliste der Felder, die geändert werden sollen (mit ihrem neuen Wert). Der Feldname entspricht dem Feldnamen der Tabelle in GMSC-K, z.B. KEY01 | ||
|} | |} | ||
Zeile 142: | Zeile 182: | ||
Setzt Werte am gegebenen Objekt. | Setzt Werte am gegebenen Objekt. | ||
URL-Parameter Wert Beschreibung | {| class="wikitable" border="1" | ||
|- | |||
! URL-Parameter | |||
! Wert | |||
! Beschreibung | |||
|- | |||
| command | |||
| updateElement | |||
| | |||
|- | |||
command updateElement | command updateElement | ||
theme FL, BP etc. Themenkürzel der Objekte, die geändert werden sollen. | |- | ||
id ID1 Objekt-ID des zu ändernden Objektes | |theme | ||
Feldname1 | |FL, BP etc. | ||
Feldname2 | |Themenkürzel der Objekte, die geändert werden sollen. | ||
... | |- | ||
|id | |||
... Eine offene Parameterliste der Felder, die geändert werden sollen (mit ihrem neuen Wert). Der Feldname entspricht dem Feldnamen der Tabelle in GMSC-K, z.B. KEY01 | |ID1 | ||
|Objekt-ID des zu ändernden Objektes | |||
|- | |||
|Feldname1 | |||
|Wert1 | |||
| | |||
|- | |||
|Feldname2 | |||
|Wert2 | |||
| | |||
|- | |||
|... | |||
|... | |||
|Eine offene Parameterliste der Felder, die geändert werden sollen (mit ihrem neuen Wert). Der Feldname entspricht dem Feldnamen der Tabelle in GMSC-K, z.B. KEY01 | |||
|} | |||
Beispiel: | Beispiel: | ||
Zeile 158: | Zeile 221: | ||
Mit diesem Kommando kann man unter Angabe eines Maßstabes zu eine bestimmten Koordinate zoomen. | Mit diesem Kommando kann man unter Angabe eines Maßstabes zu eine bestimmten Koordinate zoomen. | ||
{| class="wikitable" border="1" | |||
URL-Parameter Wert Beschreibung | |- | ||
action zoomToCoordinate | !URL-Parameter | ||
x 500.00 Rechtswert | !Wert | ||
y 500.00 Hochwert | !Beschreibung | ||
scale 2000 Maßstab | |- | ||
|action | |||
|zoomToCoordinate | |||
| | |||
|- | |||
|x | |||
|500.00 | |||
|Rechtswert | |||
|- | |||
|y | |||
|500.00 | |||
|Hochwert | |||
|- | |||
|scale | |||
|2000 | |||
|Maßstab | |||
|} | |||
Beispiel: | Beispiel: | ||
http://localhost:18092/invoke?action=zoomToCoordinate&x=2349.01&y=34788.9&scale=2000 | http://localhost:18092/invoke?action=zoomToCoordinate&x=2349.01&y=34788.9&scale=2000 | ||
== ping == | == ping == | ||
Mit diesem Kommando kann geprüft werden, ob der GMSC-K-Client gestartet ist. Wenn er noch nicht gestartet ist, schlägt der Verbindungsaufbau grundsätzlich fehl, ansonsten liefert das Kommando 'true' als Antwort. | Mit diesem Kommando kann geprüft werden, ob der GMSC-K-Client gestartet ist. Wenn er noch nicht gestartet ist, schlägt der Verbindungsaufbau grundsätzlich fehl, ansonsten liefert das Kommando 'true' als Antwort. | ||
{| class="wikitable" border="1" | |||
URL-Parameter Wert Beschreibung | |- | ||
action ping | !URL-Parameter | ||
!Wert | |||
!Beschreibung | |||
|- | |||
|action | |||
|ping | |||
| | |||
|} | |||
Beispiel: | Beispiel: | ||
http://localhost:18092/invoke?action=ping | http://localhost:18092/invoke?action=ping | ||
= Standardkopplung | = Standardkopplung = | ||
== Dateiaustausch == | |||
GMSC Kommunal verfügt über eine Standardkopplung zu Fremdprogrammen, bei der die Kopplung über den Austausch von Textdateien arbeitet. Dabei schreiben sowohl GMSC Kommunal als auch das Fremdprogramm Objektschlüssel in eine Datei, und die jeweilige Gegenseite bringt die zugehörigen Objekte zu Anzeige. | GMSC Kommunal verfügt über eine Standardkopplung zu Fremdprogrammen, bei der die Kopplung über den Austausch von Textdateien arbeitet. Dabei schreiben sowohl GMSC Kommunal als auch das Fremdprogramm Objektschlüssel in eine Datei, und die jeweilige Gegenseite bringt die zugehörigen Objekte zu Anzeige. | ||
Um diese Kopplung einzurichten öffnet man im GMSC Kommunal den Adminer und öffnet dort das Kontextmenü des Punktes „Kopplungen“. Dort wählt man „Neu->Datensatz“. Im Editor rechts trägt man folgendes ein: | Um diese Kopplung einzurichten öffnet man im GMSC Kommunal den Adminer und öffnet dort das Kontextmenü des Punktes „Kopplungen“. Dort wählt man „Neu->Datensatz“. Im Editor rechts trägt man folgendes ein: | ||
* Bezeichnung: ein Name | |||
* Typ: „Standard“ | |||
* Programmaufruf: ggf. ein ausführbares Programm inkl. Parameter, mit welchem das Fremdprogramm gesteuert werden kann | |||
* GIS -> Programm-Datei: Ein Datei auf dem Client-Rechner, in welche GMSC Kommunal die Objektschlüssel schreibt, welche im Fremdprogramm angezeigt werden sollen, z.B. c:\temp\gis2app.txt | |||
* Programm-Datei -> GIS: Ein Datei auf dem Client-Rechner, in welche das Fremdprogramm die Objektschlüssel schreibt, welche in der Karte angezeigt werden sollen, z.B. c:\temp\app2gis.txt | |||
(''ab Version 2022, 14.11.2024'') Im Programmaufruf können folgende Platzhalter benutzt werden: | |||
* {theme} -> Das Thema bzw. die Objektklasse der Fremdanwendung | |||
* {ids} -> die IDs der in GMSC-K gewählten Objekte. Welches Feld die ID für das Fremdprogramm enthält, wird in der Sichtenzuordnung der Kopplung definiert. | |||
* {APPDATA} -> Windows-APPDATA-Ordner | |||
* {user.home} -> Windows-Nutzer-Ordner | |||
* {user.name} -> Windows-Nutzername | |||
* {user.profile} -> Windows-USERPROFILE-Ordner | |||
* {userId} -> GMSC-K-Nutzername | |||
* {sessionid} -> Citrix-Session-ID | |||
* {TEMP} -> Windows-Temp-Ordner | |||
In den Pfadangaben der Dateien werden folgende Platzhalter unterstützt: | |||
* %APPDATA% -> Windows-APPDATA-Ordner | |||
* %user.home% -> Windows-Nutzer-Ordner | |||
* %user.name% -> Windows-Nutzername | |||
* %user.profile% -> Windows-USERPROFILE-Ordner | |||
* %userId% -> GMSC-K-Nutzername | |||
* %sessionid% -> Citrix-Session-ID | |||
* %TEMP% -> Windows-Temp-Ordner | |||
GMSC Kommunal prüft ständig, ob sich die Textdatei „Programm-Datei -> GIS“ geändert hat und wenn das der Fall ist, wird zu den Objekten gezoomt. | GMSC Kommunal prüft ständig, ob sich die Textdatei „Programm-Datei -> GIS“ geändert hat und wenn das der Fall ist, wird zu den Objekten gezoomt. | ||
Anschließend wählt man im Explorerbaum eines Projektes eine Sicht aus, die gekoppelt werden soll und zieht sie per Drag&Drop auf den Editor der Kopplung. Es öffnet sich ein neuer Editor „Sichtenzuordnung“, in dem man folgendes einträgt: | Anschließend wählt man im Explorerbaum eines Projektes eine Sicht aus, die gekoppelt werden soll und zieht sie per Drag&Drop auf den Editor der Kopplung. Es öffnet sich ein neuer Editor „Sichtenzuordnung“, in dem man folgendes einträgt: | ||
* Keyfeldname: Das Feld der Objektklasse, in welchem der Objektschlüssel steht, auf dessen Basis die Kopplung mit dem Fremdprogramm stattfindet, z.B. der Flurstücksschlüssel. | |||
* Themen: Hier trägt man ein Themenkürzel ein, welches innerhalb der Kopplung als Objekttypkennzeichen verwendet wird, z.B. „FS“ oder „Flurstuecke“. | |||
Damit ist das Einrichten der Kopplung beendet. Man kann nun aus GMSC Kommunal heraus in der Fremdprogramm verzweigen, in dem man ein Objekt in der Karte oder Tabelle auswählt und dann „Datensatz öffnen“ wählt. Hier hat man dann die Auswahl, ob man die GMSC Kommunal-interne Datensatzanzeige oder das Fremdprogramm verwenden möchte. | Damit ist das Einrichten der Kopplung beendet. Man kann nun aus GMSC Kommunal heraus in der Fremdprogramm verzweigen, in dem man ein Objekt in der Karte oder Tabelle auswählt und dann „Datensatz öffnen“ wählt. Hier hat man dann die Auswahl, ob man die GMSC Kommunal-interne Datensatzanzeige oder das Fremdprogramm verwenden möchte. | ||
Zeile 200: | Zeile 306: | ||
Das Format der Austauschdateien sieht wie folgt aus: | Das Format der Austauschdateien sieht wie folgt aus: | ||
<Themenkürzel> | <Themenkürzel><br /> | ||
Objektschlüssel_1 | Objektschlüssel_1<br /> | ||
… | …<br /> | ||
Objektschlüssel_n | Objektschlüssel_n<br /> | ||
Also eine Kopfzeile mit dem Themenkürzel und dann durch Zeilenumbruch getrennt eine Liste von Objektschlüsseln. | Also eine Kopfzeile mit dem Themenkürzel und dann durch Zeilenumbruch getrennt eine Liste von Objektschlüsseln. | ||
== URL-Aufruf == | |||
''(ab Version 2020/2022 von 09.03.2023)'' | |||
Es besteht auch die Möglichkeit ein Fremdprogramm über einen URL-Aufruf zu steuern. Um diese Kopplung einzurichten öffnet man im GMSC Kommunal den Adminer und öffnet dort das Kontextmenü des Punktes „Kopplungen“. Dort wählt man „Neu->Datensatz“. Im Editor rechts trägt man folgendes ein: | |||
* Bezeichnung: ein Name | |||
* Typ: „URL“ | |||
* URL: die vom Fremdprogramm vorgegebene URL. | |||
In der URL können folgende Platzhalter benutzt werden: | |||
* {theme} -> Das Thema bzw. die Objektklasse der Fremdanwendung | |||
* {ids} -> die IDs der in GMSC-K gewählten Objekte. Welches Feld die ID für das Fremdprogramm enthält, wird in der Sichtenzuordnung der Kopplung definiert. | |||
* {APPDATA} -> Windows-APPDATA-Ordner | |||
* {user.home} -> Windows-Nutzer-Ordner | |||
* {user.name} -> Windows-Nutzername | |||
* {user.profile} -> Windows-USERPROFILE-Ordner | |||
* {userId} -> GMSC-K-Nutzername | |||
* {sessionid} -> Citrix-Session-ID | |||
* {TEMP} -> Windows-Temp-Ordner | |||
= Kopplung XMLAutomate = | |||
''(ab Version 2020/2022 vom 20.02.2023)'' | |||
Die Kopplung kann auch durch den Austausch von XML-Dateien anstelle von Textdateien wie bei der Standard-Kopplung durchgeführt werden. Dazu richtet man im Adminer eine Kopplung vom Typ "XMLAutomate" ein. Hier können zusätzlich zu den Ein- und Ausgabedateien auch XSLT-Dateien (https://www.w3.org/TR/xslt-30/) angegeben werden. Diese ermöglichen es beim Export das von GMSC-K produzierte XML in ein für das Fremdprogramm passendes XML umzuwandeln bzw. beim Import das XML-Dokument des Fremdprogramms in das GMSC-K-XML umzuwandeln. Im Folgenden wird das XML für Export und Import beschrieben: | |||
== Export == | |||
<pre> | |||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |||
<xmlAutomateExport> | |||
<feature theme="FL" id="001dbac9-1af8-4387-a967-c0c76d5b6949"/> | |||
</xmlAutomateExport> | |||
</pre> | |||
== Import == | |||
<pre> | |||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | |||
<xmlAutomateImport> | |||
<!-- auf ein Objekt in der Karte zoomen --> | |||
<zoom> | |||
<feature theme="X" id="Z" /> | |||
</zoom> | |||
<!-- ein neues Objekt anlegen --> | |||
<insert> | |||
<feature theme="X" id="Y"> | |||
<attributes> | |||
<entry> | |||
<key>key</key> | |||
<value>value</value> | |||
</entry> | |||
</attributes> | |||
</feature> | |||
</insert> | |||
<!-- ein Objekt aktualisieren --> | |||
<update> | |||
<feature theme="X" id="Y"> | |||
<attributes> | |||
<entry> | |||
<key>key</key> | |||
<value>value</value> | |||
</entry> | |||
</attributes> | |||
</feature> | |||
</update> | |||
<!-- ein Objekt löschen --> | |||
<delete> | |||
<feature theme="X" id="Y" /> | |||
</delete> | |||
</xmlAutomateImport> | |||
</pre> | |||
= Spezielle Kopplungen = | = Spezielle Kopplungen = |
Aktuelle Version vom 14. November 2024, 15:10 Uhr
Einführung
Dieses Dokument beschreibt wie Fremdprogramme mit GMSC Kommunal gekoppelt werden können, d.h. wie Fremdprogramme GMSC Kommunal steuern können.
Start des GMSC Kommunal-Clients
Der GMSC Kommunal-Client wird mittels Java-Webstart gestartet. Das kann über die Kommandozeile mit Hilfe des Programms „javaws“ gemacht werden, welches bei jeder Java-Installation dabei ist. Alternativ kann die Start-URL auch im Web-Browser eingegeben werden. Der Start bei javaws sieht wie folgt aus:
(ab Version 2018: hnlp://gmsckserver:18091/gmsck.hnlp?username=xxx&password=xxx&workspace=Mappenname&bookmark=Arbeitssitzungsname)
Die URL-Parameter sind optional, d.h. mit http://gmsckserver.de:8081/gmsck/gmsck.jnlp bzw. hnlp://gmsckserver:18091/gmsck.hnlp erhält man die normale GMSC Kommunal -Anmeldung.
Folgende URL-Parameter können angegeben werden:
username | Nutzername |
password | Passwort |
workspace | Name der Mappe |
bookmark | Name der Arbeitssitzung |
showExplorer | True oder false – Explorer anzeigen oder nicht |
showSearchCenter | True oder false – Suchcenter anzeigen oder nicht |
showMap | True oder false – Karte anzeigen oder nicht |
showOverviewMap | True oder false – Übersichtskarte anzeigen oder nicht, ab Version 2014.1 |
remoteControlPort | Gibt den Port an, auf dem diese Kopplungsschnittstelle bedient werden kann, Standard ist 18092 |
Zur Prüfung, ob der Client läuft, kann die URL http://localhost:18092/remote (ab Version 2018: http://localhost:18091/remote) aufgerufen werden. Wenn ein Verbindungsaufbau möglich ist, dann läuft GMSC Kommunal.
Ab Version 10.6.1 steht ausserdem ein Hilfsprogramm zur Verfügung, welches Fremdprogramme aufrufen können, um GMSC Kommunal zu starten. Dieses Programm prüft ob der Client schon läuft, falls nicht, wird der Client gestartet und solange gewartet bis GMSC Kommunal vollständig gestartet ist. Dieses Programm kann wie folgt aufgerufen werden:
javaw –jar <GMSC Kommunal Verzeichnis>\Tools\GMKStarter.jar <GMSC Kommunal Client URL>
Voraussetzung ist, dass sich die Datei GMKStarter.jar in einem für die Client-Rechner zugänglichen Verzeichnis befindet. Bei der Installation vom GMSC Kommunal wird die Datei unter <GMSC Kommunal Installations Verzeichnis>\Tools abgelegt, also z.B. unter c:\Program Files\Intergraph\GeoMedia Kommunal\Tools\.
Steuerung des GMSC Kommunal Clients
Der Client kann über eine HTTP-Schnittstelle gesteuert werden, d.h. durch den Aufruf einer URL. Die URL folgt grundsätzlich folgendem Schema:
http://localhost:18092/remote?command=<command>&<parameter>=...
Folgende Kommandos sind möglich:
showElements
Markiert eine Liste von Objekten in der Karte und zoomt ggf. dorthin. Wird nur ein Objekt angegeben und dieses Objekt exisitiert noch nicht, so kann das Objekt digitalisiert werden. Dazu muss der Nutzer in der Kartentoolbar auf den Reiter „Werkzeuge“ gehen und dort den letzten Button (Objekt digitalisieren) klicken. Die ID des neuen Objektes wird nach dem Digitalisieren automatisch übernommen.
URL-Parameter | Wert | Beschreibung |
---|---|---|
command | showElements | |
theme | FL, BP etc. | Das Themenkürzel der Objekte, die angezeigt werden sollen |
ids | ID1,ID2,... | Komma getrennte Liste der Objekt-IDs |
zoom | true, false | Gibt neben der Markierung an ob auch zu den Objekten gezoomt werden soll. |
markMode | REPLACE, ADD, SUBSTRACT | Gibt an ob die bestehende Markierung ersetzt, erweitert oder verringert werden soll. Standardverhalten ist REPLACE |
createIfNotExists | true, false | Falls true, wird automatisch in den Digitalisiermodus gewechselt, wenn das Objekt nicht vorhanden ist.
(Seit Version 10.6.1) |
Beispiel:
http://localhost:18092/remote?command=showElements&theme=FL&ids=FL2001,FL2002&zoom=true&markMode=ADD
insertElement
Mit diesem Kommando kann man einen neues Objekt in GMSC-K anlegen. Dabei wird GMSC-K automatisch in den Konstruktionsmodus versetzt und die Kartegröße maximiert. Die übergebene ID und die Datenfelder werden dem Objekt zugewiesen.
URL-Parameter | Wert | Beschreibung |
---|---|---|
Command | insertElement | |
Theme | FL, BP etc. | Das Themenkürzel der Objekte, die angezeigt werden sollen |
Id | ID1 | Wert des ID-Feldes des neuen Objektes |
Feldname1 | Wert1 | |
Feldname2 | Wert2 | |
... | ... | Eine offene Parameterliste der Felder, die geändert werden sollen (mit ihrem neuen Wert). Der Feldname entspricht dem Feldnamen der Tabelle in GMSC-K, z.B. KEY01 |
Beispiel: http://localhost:18092/remote?command=insertElement&theme=FL&id=FL2001&KEY01=Wert&KEY02=Wert
unmarkAllElements
Löscht alle Markierungen in der Karte.
URL-Parameter | Wert | Beschreibung |
---|---|---|
Command | unmarkAllElements |
Beispiel: http://localhost:18092/remote?command=unmarkAllElements
deleteElements
Löscht die gegebenen Objekte.
URL-Parameter | Wert | Beschreibung |
---|---|---|
command | deleteElements | |
theme | FL, BP etc. | Das Themenkürzel der Objekte, die gelöscht werden sollen |
ids | ID1,ID2,... | Komma getrennte Liste der Objekt-IDs |
Beispiel: http://localhost:18092/remote?command=deleteElements&theme=FL&ids=FL2001,FL2002
updateElement
Setzt Werte am gegebenen Objekt.
command updateElementURL-Parameter | Wert | Beschreibung |
---|---|---|
command | updateElement | |
theme | FL, BP etc. | Themenkürzel der Objekte, die geändert werden sollen. |
id | ID1 | Objekt-ID des zu ändernden Objektes |
Feldname1 | Wert1 | |
Feldname2 | Wert2 | |
... | ... | Eine offene Parameterliste der Felder, die geändert werden sollen (mit ihrem neuen Wert). Der Feldname entspricht dem Feldnamen der Tabelle in GMSC-K, z.B. KEY01 |
Beispiel: http://localhost:18092/remote?command=updateElement&theme=FL&id=FL2001&KEY01=Wert&KEY02=Wert
zoomToCoordinate
Mit diesem Kommando kann man unter Angabe eines Maßstabes zu eine bestimmten Koordinate zoomen.
URL-Parameter | Wert | Beschreibung |
---|---|---|
action | zoomToCoordinate | |
x | 500.00 | Rechtswert |
y | 500.00 | Hochwert |
scale | 2000 | Maßstab |
Beispiel: http://localhost:18092/invoke?action=zoomToCoordinate&x=2349.01&y=34788.9&scale=2000
ping
Mit diesem Kommando kann geprüft werden, ob der GMSC-K-Client gestartet ist. Wenn er noch nicht gestartet ist, schlägt der Verbindungsaufbau grundsätzlich fehl, ansonsten liefert das Kommando 'true' als Antwort.
URL-Parameter | Wert | Beschreibung |
---|---|---|
action | ping |
Beispiel: http://localhost:18092/invoke?action=ping
Standardkopplung
Dateiaustausch
GMSC Kommunal verfügt über eine Standardkopplung zu Fremdprogrammen, bei der die Kopplung über den Austausch von Textdateien arbeitet. Dabei schreiben sowohl GMSC Kommunal als auch das Fremdprogramm Objektschlüssel in eine Datei, und die jeweilige Gegenseite bringt die zugehörigen Objekte zu Anzeige.
Um diese Kopplung einzurichten öffnet man im GMSC Kommunal den Adminer und öffnet dort das Kontextmenü des Punktes „Kopplungen“. Dort wählt man „Neu->Datensatz“. Im Editor rechts trägt man folgendes ein:
- Bezeichnung: ein Name
- Typ: „Standard“
- Programmaufruf: ggf. ein ausführbares Programm inkl. Parameter, mit welchem das Fremdprogramm gesteuert werden kann
- GIS -> Programm-Datei: Ein Datei auf dem Client-Rechner, in welche GMSC Kommunal die Objektschlüssel schreibt, welche im Fremdprogramm angezeigt werden sollen, z.B. c:\temp\gis2app.txt
- Programm-Datei -> GIS: Ein Datei auf dem Client-Rechner, in welche das Fremdprogramm die Objektschlüssel schreibt, welche in der Karte angezeigt werden sollen, z.B. c:\temp\app2gis.txt
(ab Version 2022, 14.11.2024) Im Programmaufruf können folgende Platzhalter benutzt werden:
- {theme} -> Das Thema bzw. die Objektklasse der Fremdanwendung
- {ids} -> die IDs der in GMSC-K gewählten Objekte. Welches Feld die ID für das Fremdprogramm enthält, wird in der Sichtenzuordnung der Kopplung definiert.
- {APPDATA} -> Windows-APPDATA-Ordner
- {user.home} -> Windows-Nutzer-Ordner
- {user.name} -> Windows-Nutzername
- {user.profile} -> Windows-USERPROFILE-Ordner
- {userId} -> GMSC-K-Nutzername
- {sessionid} -> Citrix-Session-ID
- {TEMP} -> Windows-Temp-Ordner
In den Pfadangaben der Dateien werden folgende Platzhalter unterstützt:
- %APPDATA% -> Windows-APPDATA-Ordner
- %user.home% -> Windows-Nutzer-Ordner
- %user.name% -> Windows-Nutzername
- %user.profile% -> Windows-USERPROFILE-Ordner
- %userId% -> GMSC-K-Nutzername
- %sessionid% -> Citrix-Session-ID
- %TEMP% -> Windows-Temp-Ordner
GMSC Kommunal prüft ständig, ob sich die Textdatei „Programm-Datei -> GIS“ geändert hat und wenn das der Fall ist, wird zu den Objekten gezoomt.
Anschließend wählt man im Explorerbaum eines Projektes eine Sicht aus, die gekoppelt werden soll und zieht sie per Drag&Drop auf den Editor der Kopplung. Es öffnet sich ein neuer Editor „Sichtenzuordnung“, in dem man folgendes einträgt:
- Keyfeldname: Das Feld der Objektklasse, in welchem der Objektschlüssel steht, auf dessen Basis die Kopplung mit dem Fremdprogramm stattfindet, z.B. der Flurstücksschlüssel.
- Themen: Hier trägt man ein Themenkürzel ein, welches innerhalb der Kopplung als Objekttypkennzeichen verwendet wird, z.B. „FS“ oder „Flurstuecke“.
Damit ist das Einrichten der Kopplung beendet. Man kann nun aus GMSC Kommunal heraus in der Fremdprogramm verzweigen, in dem man ein Objekt in der Karte oder Tabelle auswählt und dann „Datensatz öffnen“ wählt. Hier hat man dann die Auswahl, ob man die GMSC Kommunal-interne Datensatzanzeige oder das Fremdprogramm verwenden möchte.
Das Format der Austauschdateien sieht wie folgt aus:
<Themenkürzel>
Objektschlüssel_1
…
Objektschlüssel_n
Also eine Kopfzeile mit dem Themenkürzel und dann durch Zeilenumbruch getrennt eine Liste von Objektschlüsseln.
URL-Aufruf
(ab Version 2020/2022 von 09.03.2023)
Es besteht auch die Möglichkeit ein Fremdprogramm über einen URL-Aufruf zu steuern. Um diese Kopplung einzurichten öffnet man im GMSC Kommunal den Adminer und öffnet dort das Kontextmenü des Punktes „Kopplungen“. Dort wählt man „Neu->Datensatz“. Im Editor rechts trägt man folgendes ein:
- Bezeichnung: ein Name
- Typ: „URL“
- URL: die vom Fremdprogramm vorgegebene URL.
In der URL können folgende Platzhalter benutzt werden:
- {theme} -> Das Thema bzw. die Objektklasse der Fremdanwendung
- {ids} -> die IDs der in GMSC-K gewählten Objekte. Welches Feld die ID für das Fremdprogramm enthält, wird in der Sichtenzuordnung der Kopplung definiert.
- {APPDATA} -> Windows-APPDATA-Ordner
- {user.home} -> Windows-Nutzer-Ordner
- {user.name} -> Windows-Nutzername
- {user.profile} -> Windows-USERPROFILE-Ordner
- {userId} -> GMSC-K-Nutzername
- {sessionid} -> Citrix-Session-ID
- {TEMP} -> Windows-Temp-Ordner
Kopplung XMLAutomate
(ab Version 2020/2022 vom 20.02.2023)
Die Kopplung kann auch durch den Austausch von XML-Dateien anstelle von Textdateien wie bei der Standard-Kopplung durchgeführt werden. Dazu richtet man im Adminer eine Kopplung vom Typ "XMLAutomate" ein. Hier können zusätzlich zu den Ein- und Ausgabedateien auch XSLT-Dateien (https://www.w3.org/TR/xslt-30/) angegeben werden. Diese ermöglichen es beim Export das von GMSC-K produzierte XML in ein für das Fremdprogramm passendes XML umzuwandeln bzw. beim Import das XML-Dokument des Fremdprogramms in das GMSC-K-XML umzuwandeln. Im Folgenden wird das XML für Export und Import beschrieben:
Export
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <xmlAutomateExport> <feature theme="FL" id="001dbac9-1af8-4387-a967-c0c76d5b6949"/> </xmlAutomateExport>
Import
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <xmlAutomateImport> <!-- auf ein Objekt in der Karte zoomen --> <zoom> <feature theme="X" id="Z" /> </zoom> <!-- ein neues Objekt anlegen --> <insert> <feature theme="X" id="Y"> <attributes> <entry> <key>key</key> <value>value</value> </entry> </attributes> </feature> </insert> <!-- ein Objekt aktualisieren --> <update> <feature theme="X" id="Y"> <attributes> <entry> <key>key</key> <value>value</value> </entry> </attributes> </feature> </update> <!-- ein Objekt löschen --> <delete> <feature theme="X" id="Y" /> </delete> </xmlAutomateImport>
Spezielle Kopplungen
Neben der Standard-Kopplung gibt es derzeit spezielle Kopplungen zu folgenden Anwendungen:
- BEC
- adKomm (KOB)
- AFH
- WebFlur
- TeraWin
- TeraFri
- Kolibri
Die Einrichtung dieser Kopplungen erfolgt analog dem oben beschrieben Schema.