|
|
(107 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| + | |
| + | |
| + | '''! Diese Anleitung bezieht sich auf das alte, unvollständige PostNAS-Schema aus dem PostNAS-Projekt. Ab kvwmap Version 2.8 wird ein anderes, vollständiges Schema verwendet.''' |
| + | |
| + | |
| Auf dieser Seite wird beschrieben, wie man PostNAS installiert, eine PostNAS-Datenbank einrichtet, NAS-Daten einspielt und mit kvwmap darauf zugreifen kann. | | Auf dieser Seite wird beschrieben, wie man PostNAS installiert, eine PostNAS-Datenbank einrichtet, NAS-Daten einspielt und mit kvwmap darauf zugreifen kann. |
− | Die PostNAS-Anleitung entspricht dabei im Großen und Ganzen der [http://trac.wheregroup.com/PostNAS/wiki/SchrittfuerSchritt Anleitung der PostNAS-Entwickler] und unterscheidet sich nur in wenigen Anpassungen, die z.B. das in MV benutzte Koordinatensystem und den Zugriff von kvwmap betreffen. | + | Die PostNAS-Anleitung entspricht dabei im Großen und Ganzen der [http://trac.wheregroup.com/PostNAS/wiki/SchrittfuerSchritt Anleitung der PostNAS-Entwickler] und unterscheidet sich aber doch in einigen Punkten, z.B. die Abbildung der Nutzungsarten, und die konsequente Auslegung auf Vollhistorie. |
| | | |
| ==PostNAS installieren== | | ==PostNAS installieren== |
Zeile 11: |
Zeile 16: |
| '''GDAL/OGR bauen und installieren''' | | '''GDAL/OGR bauen und installieren''' |
| | | |
− | *Code beziehen (mit normalen Benutzerrechten z.B. in /home/fgs/fgs): | + | *Code beziehen: |
| + | |
| + | Den aktuellen Code kann man über svn herunterladen. Dazu benötigt man aber subversion. Das Clientprogramm kann man unter Debian mit folgendem Befehl installieren. |
| + | |
| + | <nowiki>apt-get install subversion</nowiki> |
| + | |
| + | Das Verzeichnis mit der aktuellen Version von gdal bekommt man schließlich mit folgendem Befehl heruntergeladen (ausgechecked) |
| | | |
| <nowiki> | | <nowiki> |
− | mkdir postnas | + | svn checkout http://svn.osgeo.org/gdal/trunk/gdal</nowiki> |
− | cd postnas
| + | |
− | wget http://download.osgeo.org/gdal/gdal-1.9.2.tar.gz
| + | |
− | tar -xzf gdal-1.9.2.tar.gz</nowiki>
| + | |
| | | |
− | *Konfigurieren und kompilieren (hier wird gdal in /home/fgs/fgs/postnas/gdal-1.9.2 installiert)
| + | Wer kein svn hat bzw. Schwierigkeiten mit subversion das Verzeichnis auszuchecken, kann das auch auf einem beliebigen anderen Rechner machen. Das erhaltene Verzeichnis packen und auf seinen eigenen Server übertragen. SVN macht nichts weiter als die Dateien runterholen und für eine Versionsverwaltung vorbereiten. Wenn man nichts entwickeln will, also nichts am Code ändern will, braucht man die Versionsverwaltung nicht. Mit anderen Worten, wenn man das Verzeichnis mit svn ausgecheckt hat, kann man anschließend das versteckte Verzeichnis ".svn" löschen und ".gitignore" gleich mit. |
| | | |
− | cd gdal-1.9.2 | + | <nowiki>rm .svn .gitignore</nowiki> |
− | ./configure --prefix=/home/fgs/fgs/postnas/gdal-1.9.2 --with-xerces | + | |
| + | *Konfigurieren und kompilieren |
| + | |
| + | ./configure --with-xerces=yes --with-xerces-inc=/usr/include/xercesc/ --with-static-proj4 --with-xerces-lib="-L/usr/include/xercesc -lxerces-c -lpthread" |
| make | | make |
| | | |
Zeile 28: |
Zeile 39: |
| | | |
| sudo make install | | sudo make install |
| + | |
| + | *Installationsverzeichnis bereinigen |
| + | |
| + | sudo make clean |
| | | |
| == Erstellung eines PostNAS-Schemas == | | == Erstellung eines PostNAS-Schemas == |
Zeile 35: |
Zeile 50: |
| | | |
| '''Datenbankschema erstellen''' | | '''Datenbankschema erstellen''' |
− | *Das Schema "alkis" muss nicht vorher angelegt werden. Man führt einfach folgende SQL-Dateien nacheinander in der Datenbank aus: | + | * Ein Datenbankschema für ALKIS-Daten setzt sich derzeit aus verschiedenen Komponenten zusammen. Die Bestandteile des Schemas sind nachfolgend in SQL-Dateien aufgeführt. Diese sind in der nachstehenden Reihenfolge auszuführen. Ggf. kann man Sichten weglassen, wenn man nicht an den Daten oder einer Historie interessiert ist. |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/alkis_PostNAS_0.7_schema.sql alkis_PostNAS_0.7_schema.sql]
| + | * Für einen schnellen Einstieg kann die zusammengefasste Datei [http://www.kvwmap.de/alkis/alkis_schema.sql alkis_schema.sql] verwendet werden. Sie ist derzeit für EPSG:25832 ausgelegt, beinhaltet nicht alles was nachstehend aufgeführt ist, aber die wesentlichen Teile, damit man NAS einlesen und in kvwmap schon mal benutzen kann. |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/alkis_PostNAS_0.7_keytables.sql alkis_PostNAS_0.7_keytables.sql]
| + | |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/pp_definition.sql pp_definition.sql]
| + | |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/nutzungsart_definition.sql nutzungsart_definition.sql]
| + | |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/nutzungsart_metadaten.sql nutzungsart_metadaten.sql] | + | |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/sichten.sql sichten.sql]
| + | |
| | | |
− | Der Unterschied zu den SQL-Skripten, die unter http://trac.wheregroup.com/PostNAS/browser/trunk/data/konvert/postnas_0.7 zu finden sind, besteht nur darin, dass alles im Schema "alkis" angelegt wird, dass das Koordiantensystem EPSG:25833 statt EPSG:25832 verwendet wird und alle Tabellen mit oids angelegt werden.
| + | *Das Schema "alkis" muss nicht vorher angelegt werden. Bitte bei Bedarf vor der Ausführung der SQL-Dateien den EPSG-Code von 25833 auf 25832 ändern oder umgekehrt. |
| + | <!--Man führt einfach einer der folgenden SQL-Dateien aus. Je nach dem welche Zone man unterstützen möchte. Beide Zonen in einem Schema geht derzeit nicht. |
| + | :*[http://www.kvwmap.de/alkis/alkis-schema_epsg_25832.sql alkis-schema_epsg_25832] für UTM Zone 32 Stand: 23.05.2014 |
| + | :*[http://www.kvwmap.de/alkis/alkis-schema_epsg_25833.sql alkis-schema_epsg_25833] für UTM Zone 33 Stand: 04.07.2014 |
| | | |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/weitere_keytables.sql weitere_keytables.sql]
| + | Das SQL-Script alkis-schema_epsg_25833.sql setzt sich aus folgenden Teil-Skripten zusammen: |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/weitere_sichten.sql weitere_sichten.sql] | + | --> |
| + | :Das Datenbank-Grundschema entspricht dem NorBIT-Schema bzw. PostNAS 0.8: |
| | | |
− | Dies sind weitere Skripte, die von kvwmap-Nutzern erstellt wurden. Diese Tabellen und Sichten haben den Prefix "lk_".
| + | :*[http://www.kvwmap.de/alkis/alkis-Norbit_0.7_schema.sql alkis-Norbit_0.7_schema.sql] Stand: 28.06.2016 |
| + | :Tabellen der Antragsverwaltung AA_xxx (optional): |
| | | |
− | == Einspielen der NAS-Daten ==
| + | :*[http://www.kvwmap.de/alkis/alkis-aaa_projektsteuerung.sql alkis-aaa_projektsteuerung.sql] Stand: 20.05.2016 |
| | | |
− | Um die NAS-Daten in die PostNAS-DB einzuspielen wird das Programm ogr2ogr des zu Beginn installierten GDALs verwendet.
| + | :Die nachfolgenden Skripte vervollständigen das DB-Schema und stammen aus dem PostNAS-Projekt. Einige davon verwenden noch die Tabelle alkis_beziehungen, und müssen in Zukunft noch umgestellt werden. |
− | Man wechselt dazu nach
| + | |
− | /home/fgs/fgs/postnas/gdal-1.9.2/bin
| + | |
− | und führt folgenden Befehl aus: | + | |
− | ./ogr2ogr -f "PostgreSQL" -skipfailures -append PG:"dbname=<POSTNASDB> active_schema=alkis user=<DBUSER> host=localhost port=5432" -a_srs EPSG:25833 /PFAD/ZU/DEN/NASDATEN.XML 2>> postnas_err.log
| + | |
− | wobei <POSTNASDB> durch den Datenbanknamen, <DBUSER> durch den Datenbanknutzer und /PFAD/ZU/DEN/NASDATEN durch den Pfad zu den NAS-Daten ersetzt werden muss.
| + | |
| | | |
− | '''Achtung''': Falls es auf dem Server bereits ein anderes gdal gibt, kann es beim Ausführen von ogr2ogr zu Fehlern kommen. Ist auf dem Server z.B FGS installiert, so kann es sein, dass das gdal von FGS benutzt wird, was dann natürlich nicht funktioniert. Man kann das auch nachprüfen, indem man
| + | :*[http://www.kvwmap.de/alkis/alkis_PostNAS_0.7_keytables.sql alkis_PostNAS_0.7_keytables.sql] Stand: 24.02.2015 |
− | ldd /home/fgs/fgs/postnas/gdal-1.9.2/bin/ogr2ogr
| + | :*[http://www.kvwmap.de/alkis/pp_definition.sql pp_definition.sql] Stand: 21.10.2015 |
− | ausführt und sich anschaut, auf welches gdal gelinkt wird. Falls dort nicht auf das PostNAS-gdal gelinkt wird, muss man, bevor man ogr2ogr aufruft, den Library-Path entsprechend setzen:
| + | :*[http://www.kvwmap.de/alkis/nutzungsart_definition.sql nutzungsart_definition.sql] Stand: 02.10.2015 |
− | export LD_LIBRARY_PATH=/home/fgs/fgs/postnas/gdal-1.9.2/lib
| + | :*[http://www.kvwmap.de/alkis/sichten.sql sichten.sql] Stand: 20.05.2014 - muss noch angepasst werden, ist aber auch nicht unbedingt erforderlich |
| + | :*[http://www.kvwmap.de/alkis/sichten_wms.sql sichten_wms.sql] Stand: 04.12.2014 - ist auf das Norbit-Schema angepasst |
| | | |
− | Nach dem Einlesen der Daten müssen die folgenden beiden Skripte ausgeführt werden:
| + | :Diese beiden Skripte legen Funktionen, Triggerfunktionen und Trigger an, die u.a. für das korrekte Einlesen von NAS-Fortführungen erforderlich sind. Sie sind für die Verwendung einer Vollhistorie gedacht. |
| | | |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/pp_laden.sql pp_laden.sql] | + | :*[http://www.kvwmap.de/alkis/alkis-functions.sql alkis-functions.sql] Stand: 20.07.2016 |
− | :*[http://kvwmap.geoinformatik.uni-rostock.de/alkis/nutzungsart_laden.sql nutzungsart_laden.sql] | + | :*[http://www.kvwmap.de/alkis/alkis-trigger.sql alkis-trigger.sql] Stand: 07.08.2014 |
| | | |
− | == Zugriff mit kvwmap ==
| + | :In diesem Skript sind alle Anpassungen von kvwmap-Nutzern zu finden, die das Schema verändern: |
| + | :*[http://www.kvwmap.de/alkis/schema_anpassungen.sql schema_anpassungen.sql] Stand: 18.09.2015 |
| | | |
− | '''Umstellung von ALB/ALK auf ALKIS'''
| + | :Dies sind Tabellen und Sichten, die von kvwmap-Nutzern erstellt wurden. Sie haben den Prefix "lk_": |
| | | |
− | Um in kvwmap alle katasterbezogenen Komponenten von ALK/ALB auf ALKIS umzustellen, muss man nur einige Parameter in der config.php setzen:
| + | :*[http://www.kvwmap.de/alkis/weitere_keytables.sql weitere_keytables.sql] Stand: 04.04.2016 |
| + | :*[http://www.kvwmap.de/alkis/weitere_sichten.sql weitere_sichten.sql] Stand: 03.12.2014 |
| | | |
− | <nowiki>
| |
− | $pgdbname='kvwmapsp'; // muss auf die DB gesetzt werden, die das Schema "alkis" enthält
| |
− | define('ALKIS', true); // muss auf true gesetzt werden
| |
− | define("LAYERNAME_FLURSTUECKE",'Flurstuecke_Alkis'); // muss auf den neuen ALKIS-Flurstückslayer gesetzt werden
| |
− | define('EPSGCODE_ALKIS','25833'); // muss auf 25833 gesetzt werden</nowiki>
| |
| | | |
| + | '''!!! ACHTUNG !!!''' |
| | | |
− | '''Anlegen eines Flurstückslayers''' | + | '''Alle hier aufgeführten Sichten berücksichtigen bisher nicht den Zeitbezug über die Spalten beginnt und endet. Damit in den darauf aufsetzenden Layern in kvwmap der vom Nutzer gewählte historische Zeitpunkt berücksichtigt werden kann, müssen diese Sichten angepasst werden. Die Wiki-Seite [[PostNAS-Sichten für Vollhistorie]] soll zur Bearbeitung der Sichten dienen.''' |
| | | |
− | <nowiki> | + | '''!!! ACHTUNG !!!''' |
− | SET @group_id = 1;
| + | |
− | SET @connection = 'user=xxxx password=xxxx dbname=kvwmapsp';
| + | == Einspielen der NAS-Daten == |
| + | Beim Einspielen der NAS-Daten ist zu beachten, dass unter Linux ein aktuelles GDAL (derzeit Version 2.0dev) nach dieser Anleitung http://trac.wheregroup.com/PostNAS/wiki/BuildingOgrPostNASDriver selbst kompiliert werden muss. Alternativ kann man auch das OGR aus dem osgeo4w-Projekt unter Windows verwenden. |
| + | Um die NAS-Daten in die PostNAS-DB einzuspielen wird das aktuelle Programm ogr2ogr aus dem GDAL Trunk verwendet. |
| + | Man wechselt dazu nach |
| + | /pfad_zu_meinem_gdal/gdal-trunk/bin |
| + | und führt folgenden Befehl aus: |
| + | ./ogr2ogr -f "PostgreSQL" --config PG_USE_COPY YES -skipfailures -nlt CONVERT_TO_LINEAR -append PG:"dbname=<POSTNASDB> active_schema=alkis user=<DBUSER> host=localhost port=5432" -a_srs EPSG:25833 /PFAD/ZU/DEN/NASDATEN.XML 2>> postnas_err.log |
| + | wobei <POSTNASDB> durch den Datenbanknamen, <DBUSER> durch den Datenbanknutzer und /PFAD/ZU/DEN/NASDATEN durch den Pfad zu den NAS-Daten ersetzt werden muss, die Option PG_USE_COPY YES bringt erhebliche Performance Vorteile durch Verwendung von copy stattt insert-Kommandos. |
| + | |
| + | Läuft kvwmap im docker Container wird ogr2ogr auch in einem separaten Container ausgeführt. Das erspart die aufwendige Nachinstallation von ogr2ogr mit den neuesten Bibliotheken. Verwendet wird hier das Image geodata/gdal |
| + | Das Image wird beim installieren des kvwmap containers mit runtergeladen und steht, wenn das Datenverzeichnis gemountet und die Datenbank gelinkt ist direkt zur Verfügung. |
| + | ogr2ogr im Container wird wie folgt aufgerufen: |
| + | docker run --rm --volumes-from wwwdata --link pgsql-server:pgsql geodata/gdal /bin/bash -c "ogr2ogr -f PostgreSQL --config PG_USE_COPY YES -skipfailures -nlt CONVERT_TO_LINEAR -append PG:\"dbname=<POSTNASDB> active_schema=alkis user=<DBUSER> host=pgsql\" -a_srs EPSG:25833 /PFAD/ZU/DEN/NASDATEN.XML 2>> /var/www/logs/postnas_err.log" |
| + | Der ogr-Befehl ist identisch, nur dass alle doppelten Anführungsstrichte mit Backslash escaped werden müssen, weil der ganze Befehl ja schon in doppelten Anführungsstrichen ist. |
| + | |
| + | Damit Bogen-Geometrien (<gml:Arc>) in lineare Geometrien umgewandelt werden, ist auf manchen Servern der Paramter "-nlt CONVERT_TO_LINEAR" notwendig, auf anderen Servern macht ogr2ogr das offenbar standardmäßig. Bei der Umwandlung wird der Bogen durch einen Linienzug approximiert. Leider geht dadurch aber die Topologie verloren, d.h. 2 angrenzende Objekte haben nun kleine Lücken und überlappen sich teilweise... |
| + | |
| + | '''Achtung''': Falls es auf dem Server bereits ein anderes gdal gibt, kann es beim Ausführen von ogr2ogr zu Fehlern kommen. Ist auf dem Server z.B FGS installiert, so kann es sein, dass das gdal von FGS benutzt wird, was dann natürlich nicht funktioniert. Man kann das auch nachprüfen, indem man |
| + | ldd /pfad_zu_meinem_gdal/gdal-trunk/bin/ogr2ogr |
| + | ausführt und sich anschaut, auf welches gdal gelinkt wird. Falls dort nicht auf das PostNAS-gdal gelinkt wird, muss man, bevor man ogr2ogr aufruft, den Library-Path entsprechend setzen: |
| + | export LD_LIBRARY_PATH=/pfad_zu_meinem_gdal/gdal-trunk/lib64 |
| + | |
| + | '''Prüfung von NAS-Dateien auf Validität mit xmllint'''<br> |
| + | Vor dem Einlesen der Daten ist eine Prüfung der NAS-Dateien mit '''xmllint''' auf Validität gegen das Schema NAS 6.0.1 der ADV zu empfehlen.<br> |
| + | Beispiel: |
| + | |
| + | xmllint --nowarning --noout --schema pfad_zum_schema/NAS_6.0.1/schema/NAS-Operationen.xsd pfad_zu_nas/beispiel.xml |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Flurstuecke_Alkis','2',@group_id,'SELECT wkb_geometry, f.flurstueckskennzeichen as flurstkennz, \'\' as flurnr, \'\' AS entsteh, \'\' AS letzff, \'\' AS status, \'\' AS flaeche, \'\' AS karte, \'\' AS kreisid, \'\' AS kreisname, \'\' as gemkgschl, \'\' AS gemkgname, \'\' AS gemeinde, \'\' AS gemeindename,\'\' AS finanzamt,\'\' AS finanzamtname, \'\' AS forstschluessel, \'\' AS forstname, \'\' AS lagebezeichnung, \'\' AS nutzung, \'\' AS ausfstelle,\'\' AS verfahren, \'\' AS vorgaenger, \'\' AS nachfolger, \'\' AS bestandsnr,\'\' AS eigentuemer, \'\' AS freitext, \'\' AS hinweis,\'\' AS baulasten, \'\' AS amtsgerichtname, \'\' AS amtsgerichtnr,\'\' AS grundbuchbezirkname, \'\' AS grundbuchbezirkschl, \'\' AS klassifizierung FROM ax_flurstueck AS f WHERE 1=1','the_geom from (select wkb_geometry as the_geom, ogc_fid from alkis.ax_flurstueck) as foo using unique ogc_fid using srid=25833','alkis','','','','','',NULL,NULL,'',@connection,'','6','ogc_fid','ogc_fid','3','pixels','25833','Flurstuecke_customALKIS.php','1',NULL,'1000',NULL,NULL,'','EPSG:25833','ALK-Flurstücke','1.1.0','image/png','60','','','','','1','0','','','');
| + | Das Tool '''xmllint''' wird über das Paket libxml2-utils unter linux zur Verfügung gestellt. Es ist eine aktuelle Version ab 2.9 erforderlich.<br> |
− | SET @last_layer_id582=LAST_INSERT_ID();
| + | Das Ergebnis der Prüfung wird mit "validates" oder eine detailierte Fehlermeldung und "fails to validate" ausgegeben.<br> |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('alle',@last_layer_id582,'','0','');
| + | Das notwendige Schema kann auf den Seiten der ADV als ZIP heruntergeladen und dann lokal entpackt installiert werden.<br> |
− | SET @last_class_id=LAST_INSERT_ID();
| + | Link zum Schema: [http://www.adv-online.de/icc/extdeu/med/704/70425220-0746-2210-3ca0-c0608a438ad1,11111111-1111-1111-1111-111111111111 NAS 6.0.1] |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES(NULL,'','1','-1 -1 -1',' ','0 0 0',NULL,NULL,NULL,'',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);</nowiki>
| + | |
| | | |
| + | Wichtig: Es sollten nur valide Daten eingespielt werden! |
| | | |
− | '''Anlegen von Layern für Punktobjekte'''
| |
| | | |
| + | Zur Batchverarbeitung mehrer NAS-Dateien in einem Verzeichnis kann folgendes Script eingesetzt werden: |
| <nowiki> | | <nowiki> |
− | SET @group_id = 1;
| + | #!/bin/sh |
− | SET @connection = 'user=xxxx password=xxxx dbname=kvwmapsp';
| + | liste=`find /pfad_zu_nas_dateien/*.xml` |
| + | set $liste |
| + | >xml_batch.sh |
| + | for i do : |
| + | string='/pfad_zu_gdal/ogr2ogr -f PostgreSQL --config PG_USE_COPY YES -skipfailures -append PG:"dbname=kvwmapsp active_schema=alkis user=kvwmap host=localhost port=5432" -a_srs EPSG:25833 '${i}' ' |
| + | echo $string |
| + | echo $string >>xml_batch.sh |
| + | done</nowiki> |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis AP','0',@group_id,'select * from lk_ap where 1 = 1','the_geom from (select oid, punktkennung, wkb_geometry as the_geom from alkis.lk_ap) as foo using unique oid using srid=25833','alkis','','','','','punktkennung','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000786','0','25001','255 255 255','EPSG:2398','','1.1.0','image/png','60','','','','','0','0','','Qualität der Grenz- und Gebäudepunkte. Ableitung aus der ALK.','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| + | Anschließend die Datei xml_bath.sh ausführbar machen und ausführen. |
− | SET @last_layer_id1147=LAST_INSERT_ID();
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'koord','koord','lk_ap','lk_ap','text','','','1',NULL,'Text','','','','7');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'oid','oid','lk_ap','lk_ap','oid','','','1',NULL,'Text','','','','0');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'punktkennung','punktkennung','lk_ap','lk_ap','varchar','','','1',NULL,'Text','','','','1');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'sonstigeeigenschaft','sonstigeeigenschaft','lk_ap','lk_ap','_varchar','','','1',NULL,'Text','','','','2');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'vermarkung_marke','vermarkung_marke','lk_ap','lk_ap','int4','','','1','32','Text','','','','3');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'verm_bedeutung','verm_bedeutung','lk_ap','lk_ap','varchar','','','1','100','Text','','','','5');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'vertrauenswuerdigkeit','vertrauenswuerdigkeit','lk_ap','lk_ap','int4','','','1','32','Text','','','','4');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1147,'wkb_geometry','wkb_geometry','lk_ap','lk_ap','geometry','POINT','','1',NULL,'Text','','','','6');
| + | |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('AP',@last_layer_id1147,'','1','');
| + | |
− | SET @last_class_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES('34','','30','36 0 118','','0 255 0','7','8',NULL,'',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| + | |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| + | |
− | SET @last_label_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);
| + | |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis bes.Bauwerkspunkte','0',@group_id,'select * from lk_bes_bauwerkspunkte where 1 = 1','the_geom from (select oid, punktkennung, wkb_geometry as the_geom from alkis.lk_bes_bauwerkspunkte) as foo using unique oid using srid=25833','alkis','','','','','punktkennung','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000787','0','25001','255 255 255','EPSG:2398','','1.1.0','image/png','60','','','','','0','0','','Qualität der Grenz- und Gebäudepunkte. Ableitung aus der ALK.','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| + | Die Verarbeitung des Grunddatenbestandes ist sehr zeitaufwändig und rechenintensiv. Es ist ratsam vorher die postgres DB zu "tunen", falls das noch nicht erfolgt ist. |
− | SET @last_layer_id1151=LAST_INSERT_ID();
| + | Hinweise dazu finden sich zahlreich im Netz. |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'attributinhalt','attributinhalt','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','int4','','','1','32','Text','','','','2');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'genauigkeitsstufe','genauigkeitsstufe','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','int4','','','1','32','Text','','','','5');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'koord','koord','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','text','','','1',NULL,'Text','','','','7');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'oid','oid','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','oid','','','1',NULL,'Text','','','','0');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'punktgenauigkeit','punktgenauigkeit','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','varchar','','','1','50','Text','','','','3');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'punktkennung','punktkennung','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','varchar','','','1',NULL,'Text','','','','1');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'vertrauenswuerdigkeit','vertrauenswuerdigkeit','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','int4','','','1','32','Text','','','','4');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1151,'wkb_geometry','wkb_geometry','lk_bes_bauwerkspunkte','lk_bes_bauwerkspunkte','geometry','POINT','','1',NULL,'Text','','','','6');
| + | |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('BP',@last_layer_id1151,'','1','');
| + | |
− | SET @last_class_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES('23','','30','36 0 118','','0 255 0','7','8',NULL,'',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| + | |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| + | |
− | SET @last_label_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);
| + | |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis Gebäudepunkte','0',@group_id,'select * from lk_gebaeudepunkte where 1 = 1','the_geom from (select oid, punktkennung, wkb_geometry as the_geom from alkis.lk_gebaeudepunkte) as foo using unique oid using srid=25833','alkis','','','','','punktkennung','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000788','0','25001','255 255 255','EPSG:2398','','1.1.0','image/png','60','','','','','0','0','','Qualität der Grenz- und Gebäudepunkte. Ableitung aus der ALK.','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| + | Der Grunddatenbestand eines ganzen Landkreises (hier LUP) kann durchaus ein Datenvolumen von 20 GB NAS ergeben. Bei einer Verarbeitungsgeschwindigkeit von ca. 400 bis 500 MB pro Stunde ist der Server schon mal zwei ganze Tage beschäftigt. |
− | SET @last_layer_id1146=LAST_INSERT_ID();
| + | Bei einem Test mit vier OGR2OGR Prozessen parallel sind keine Probleme aufgetreten und die Verarbeitung lief etwa in der Hälfte der Zeit, wobei der Server aber schon deutlich belastet war. |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'attributinhalt','attributinhalt','lk_gebaeudepunkte','lk_gebaeudepunkte','int4','','','1','32','Text','','','','2');
| + | Die Parallelverarbeitung sollte noch eingehend gestestet werden. |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'genauigkeitsstufe','genauigkeitsstufe','lk_gebaeudepunkte','lk_gebaeudepunkte','int4','','','1','32','Text','','','','5');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'koord','koord','lk_gebaeudepunkte','lk_gebaeudepunkte','text','','','1',NULL,'Text','','','','7');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'oid','oid','lk_gebaeudepunkte','lk_gebaeudepunkte','oid','','','1',NULL,'Text','','','','0');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'punktgenauigkeit','punktgenauigkeit','lk_gebaeudepunkte','lk_gebaeudepunkte','varchar','','','1','50','Text','','','','3');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'punktkennung','punktkennung','lk_gebaeudepunkte','lk_gebaeudepunkte','varchar','','','1',NULL,'Text','','','','1');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'vertrauenswuerdigkeit','vertrauenswuerdigkeit','lk_gebaeudepunkte','lk_gebaeudepunkte','int4','','','1','32','Text','','','','4');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1146,'wkb_geometry','wkb_geometry','lk_gebaeudepunkte','lk_gebaeudepunkte','geometry','POINT','','1',NULL,'Text','','','','6');
| + | |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('GP',@last_layer_id1146,'','1','');
| + | |
− | SET @last_class_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES('23','','30','36 0 118','','0 255 0','7','8',NULL,'',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| + | |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| + | |
− | SET @last_label_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);
| + | |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis Grenzpunkte','0',@group_id,'select * from lk_grenzpunkte where 1 = 1','the_geom from (select oid, punktkennung, wkb_geometry as the_geom from alkis.lk_grenzpunkte) as foo using unique oid using srid=25833','alkis','','','','','punktkennung','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000790','0','25001','255 255 255','EPSG:2398','','1.1.0','image/png','60','','','','','0','0','','Qualität der Grenz- und Gebäudepunkte. Ableitung aus der ALK.','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| + | Es ist wichtig die Log-Dateien nach der Verarbeitung eingehend zu prüfen! |
− | SET @last_layer_id1145=LAST_INSERT_ID();
| + | Die zahlreichen Warnungen wie z.B.: |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'abmarkung_marke','abmarkung_marke','lk_grenzpunkte','lk_grenzpunkte','int4','','','1','32','Text','','','','2');
| + | "Warning 1: NAS: Overwriting other geometry (DEMVAL76000EjGty)" |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'bemerkungzurabmarkung','bemerkungzurabmarkung','lk_grenzpunkte','lk_grenzpunkte','int4','','','1','32','Text','','','','5');
| + | sind wohl nicht relevant (???). |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'bezeichner','bezeichner','lk_grenzpunkte','lk_grenzpunkte','varchar','','','1',NULL,'Text','','Entstehung','','6');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'koord','koord','lk_grenzpunkte','lk_grenzpunkte','text','','','1',NULL,'Text','','','','10');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'oid','oid','lk_grenzpunkte','lk_grenzpunkte','oid','','','1',NULL,'Text','','','','0');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'punktgenauigkeit','punktgenauigkeit','lk_grenzpunkte','lk_grenzpunkte','varchar','','','1','50','Text','','Punktgenauigkeit','','8');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'punktkennung','punktkennung','lk_grenzpunkte','lk_grenzpunkte','varchar','','','1',NULL,'Text','','Pkt. Nummer','','1');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'punktvertrauenswuerdigkeit','punktvertrauenswuerdigkeit','lk_grenzpunkte','lk_grenzpunkte','varchar','','','1','200','Text','','Punktzuverlässigkeit','','9');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'sonstigeeigenschaft','sonstigeeigenschaft','lk_grenzpunkte','lk_grenzpunkte','_varchar','','','1',NULL,'Text','','','','3');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'verm_bedeutung','verm_bedeutung','lk_grenzpunkte','lk_grenzpunkte','varchar','','','1','100','Text','','Vermarkung','','7');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1145,'wkb_geometry','wkb_geometry','lk_grenzpunkte','lk_grenzpunkte','geometry','POINT','','1',NULL,'Geometrie','','','','4');
| + | |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('GP',@last_layer_id1145,'','1','');
| + | |
− | SET @last_class_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES('25','','30','0 255 0','','0 255 0','7','8',NULL,'',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| + | |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| + | |
− | SET @last_label_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);
| + | |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis sonstiger PKT','0',@group_id,'select * from lk_so_punkte where 1 = 1','the_geom from (select oid, punktkennung, wkb_geometry as the_geom from alkis.lk_so_punkte) as foo using unique oid using srid=25833','alkis','','','','','punktkennung','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000782','0','25001','255 255 255','EPSG:2398','','1.1.0','image/png','60','','','','','0','0','','Qualität der Grenz- und Gebäudepunkte. Ableitung aus der ALK.','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| |
− | SET @last_layer_id1149=LAST_INSERT_ID();
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'koord','koord','lk_so_punkte','lk_so_punkte','text','','','1',NULL,'Text','','','','7');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'oid','oid','lk_so_punkte','lk_so_punkte','oid','','','1',NULL,'Text','','','','0');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'punktkennung','punktkennung','lk_so_punkte','lk_so_punkte','varchar','','','1',NULL,'Text','','','','1');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'sonstigeeigenschaft','sonstigeeigenschaft','lk_so_punkte','lk_so_punkte','_varchar','','','1',NULL,'Text','','','','2');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'vermarkung_marke','vermarkung_marke','lk_so_punkte','lk_so_punkte','int4','','','1','32','Text','','','','3');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'verm_bedeutung','verm_bedeutung','lk_so_punkte','lk_so_punkte','varchar','','','1','100','Text','','','','5');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'vertrauenswuerdigkeit','vertrauenswuerdigkeit','lk_so_punkte','lk_so_punkte','int4','','','1','32','Text','','','','4');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1149,'wkb_geometry','wkb_geometry','lk_so_punkte','lk_so_punkte','geometry','POINT','','1',NULL,'Text','','','','6');
| |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('sonst.PKT',@last_layer_id1149,'','1','');
| |
− | SET @last_class_id=LAST_INSERT_ID();
| |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES('25','','30','255 0 0','','0 255 0','7','8',NULL,'',NULL,NULL,NULL,NULL,'');
| |
− | SET @last_style_id=LAST_INSERT_ID();
| |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| |
− | SET @last_label_id=LAST_INSERT_ID();
| |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);
| |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis SP','0',@group_id,'select * from lk_sp where 1 = 1','the_geom from (select oid, punktkennung, wkb_geometry as the_geom from alkis.lk_sp) as foo using unique oid using srid=25833','alkis','','','','','punktkennung','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000784','0','25001','255 255 255','EPSG:2398','','1.1.0','image/png','60','','','','','0','0','','Qualität der Grenz- und Gebäudepunkte. Ableitung aus der ALK.','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| + | Nach dem Einlesen der Daten müssen die folgenden beiden Skripte ausgeführt werden: |
− | SET @last_layer_id1148=LAST_INSERT_ID();
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'koord','koord','lk_sp','lk_sp','text','','','1',NULL,'Text','','','','7');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'oid','oid','lk_sp','lk_sp','oid','','','1',NULL,'Text','','','','0');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'punktkennung','punktkennung','lk_sp','lk_sp','varchar','','','1',NULL,'Text','','','','1');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'sonstigeeigenschaft','sonstigeeigenschaft','lk_sp','lk_sp','varchar','','','1',NULL,'Text','','','','2');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'vermarkung_marke','vermarkung_marke','lk_sp','lk_sp','int4','','','1','32','Text','','','','3');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'verm_bedeutung','verm_bedeutung','lk_sp','lk_sp','varchar','','','1','100','Text','','','','5');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'vertrauenswuerdigkeit','vertrauenswuerdigkeit','lk_sp','lk_sp','int4','','','1','32','Text','','','','4');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1148,'wkb_geometry','wkb_geometry','lk_sp','lk_sp','geometry','POINT','','1',NULL,'Text','','','','6');
| + | |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('SP',@last_layer_id1148,'','1','');
| + | |
− | SET @last_class_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES('35','','30','164 152 255','','0 255 0','7','8',NULL,'',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| + | |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| + | |
− | SET @last_label_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);
| + | |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis Topo PKT','0',@group_id,'select * from lk_topo_punkte where 1 = 1','the_geom from (select oid, punktkennung, wkb_geometry as the_geom from alkis.lk_topo_punkte) as foo using unique oid using srid=25833','alkis','','','','','punktkennung','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000780','0','25001','255 255 255','EPSG:2398','','1.1.0','image/png','60','','','','','0','0','','Qualität der Grenz- und Gebäudepunkte. Ableitung aus der ALK.','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| + | :*[http://www.kvwmap.de/alkis/pp_laden_ohne_alkis_beziehungen.sql pp_laden_ohne_alkis_beziehungen.sql] Stand 10.03.2016 |
− | SET @last_layer_id1150=LAST_INSERT_ID();
| + | :*[http://www.kvwmap.de/alkis/nutzungsart_laden.sql nutzungsart_laden.sql] Stand 02.10.2015 |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1150,'koord','koord','lk_topo_punkte','lk_topo_punkte','text','','','1',NULL,'Text','','','','4');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1150,'oid','oid','lk_topo_punkte','lk_topo_punkte','oid','','','1',NULL,'Text','','','','0');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1150,'punktkennung','punktkennung','lk_topo_punkte','lk_topo_punkte','varchar','','','1',NULL,'Text','','','','1');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1150,'vertrauenswuerdigkeit','vertrauenswuerdigkeit','lk_topo_punkte','lk_topo_punkte','int4','','','1','32','Text','','','','2');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1150,'wkb_geometry','wkb_geometry','lk_topo_punkte','lk_topo_punkte','geometry','POINT','','1',NULL,'Text','','','','3');
| + | |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('Topo',@last_layer_id1150,'','1','');
| + | |
− | SET @last_class_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES('24','','30','235 58 0','','0 255 0','7','8',NULL,'',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| + | |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| + | |
− | SET @last_label_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);</nowiki>
| + | |
| | | |
− | '''Anlegen eines Gebäudelayers''' | + | == Zugriff mit kvwmap == |
| + | |
| + | '''Umstellung von ALB/ALK auf ALKIS''' |
| + | |
| + | Um in kvwmap alle katasterbezogenen Komponenten von ALK/ALB auf ALKIS umzustellen, muss man nur einige Parameter in der config.php setzen: |
| | | |
| <nowiki> | | <nowiki> |
− | SET @group_id = 1;
| + | $pgdbname='kvwmapsp'; // muss auf die DB gesetzt werden, die das Schema "alkis" enthält |
− | SET @connection = 'user=xxxx password=xxxx dbname=kvwmapsp';
| + | define('ALKIS', true); // muss auf true gesetzt werden |
| + | define("LAYERNAME_FLURSTUECKE",'Flurstuecke_Alkis'); // muss auf den neuen ALKIS-Flurstückslayer gesetzt werden |
| + | define('EPSGCODE_ALKIS','25833'); // muss auf 25833 gesetzt werden</nowiki> |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis Gebäude','2',@group_id,'SELECT * FROM lk_gebaeude WHERE 1=1','the_geom from (select oid, wkb_geometry as the_geom from alkis.lk_gebaeude) as foo using unique oid using srid=25833','alkis','','','','','',NULL,NULL,'',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000695','1','100000','','EPSG:25833','ALK-Flure','1.1.0','image/png','60','','','','','1','0','','Gebäude in ALKIS','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| |
− | SET @last_layer_id1152=LAST_INSERT_ID();
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'ax_datenerhebung','ax_datenerhebung','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','14');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'bezeichner','bezeichner','lk_gebaeude','lk_gebaeude','varchar','','','1',NULL,'Text','','','','4');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'dachform','dachform','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','11');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'dach_bezeichner','dach_bezeichner','lk_gebaeude','lk_gebaeude','varchar','','','1',NULL,'Text','','','','12');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'gebaeudefunktion','gebaeudefunktion','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','3');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'gebaeudezustand','gebaeudezustand','lk_gebaeude','lk_gebaeude','varchar','','','1',NULL,'Text','','','','8');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'gml_id','gml_id','lk_gebaeude','lk_gebaeude','bpchar','','','1','16','Text','','','','2');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'hochhaus','hochhaus','lk_gebaeude','lk_gebaeude','varchar','','','1',NULL,'Text','','','','13');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'lagezurerdoberflaeche','lagezurerdoberflaeche','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','10');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'name','name','lk_gebaeude','lk_gebaeude','varchar','','','1',NULL,'Text','','','','6');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'objekthoehe','objekthoehe','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','9');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'ogc_fid','ogc_fid','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','1');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'oid','oid','lk_gebaeude','lk_gebaeude','oid','','','1',NULL,'Text','','','','0');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'weiterefunktion','weiterefunktion','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','5');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'wkb_geometry','wkb_geometry','lk_gebaeude','lk_gebaeude','geometry','POLYGON','','1',NULL,'Text','','','','15');
| |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1152,'zustand','zustand','lk_gebaeude','lk_gebaeude','int4','','','1','32','Text','','','','7');
| |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('alle',@last_layer_id1152,'','0','');
| |
− | SET @last_class_id=LAST_INSERT_ID();
| |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES(NULL,'','1','-1 -1 -1',' ','0 0 0',NULL,NULL,NULL,'',NULL,NULL,NULL,NULL,'');
| |
− | SET @last_style_id=LAST_INSERT_ID();
| |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'240 0 19','255 255 255','',NULL,NULL,'255 255 255','',NULL,NULL,'8','6','10',NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| |
− | SET @last_label_id=LAST_INSERT_ID();
| |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);</nowiki>
| |
| | | |
− | '''Anlegen eines Nutzungsartenlayers'''
| + | == Layerdefinitionen == |
| | | |
− | <nowiki>
| + | [[Gruppen_und_Themen_für_ALKIS|Hier findet man die Gruppen und Themen für ALKIS]] |
− | SET @group_id = 1;
| + | |
− | SET @connection = 'user=xxxx password=xxxx dbname=kvwmapsp';
| + | |
| | | |
− | INSERT INTO layer (`Name`,`Datentyp`,`Gruppe`,`pfad`,`Data`,`schema`,`document_path`,`tileindex`,`tileitem`,`labelangleitem`,`labelitem`,`labelmaxscale`,`labelminscale`,`labelrequires`,`connection`,`printconnection`,`connectiontype`,`classitem`,`filteritem`,`tolerance`,`toleranceunits`,`epsg_code`,`template`,`queryable`,`transparency`,`drawingorder`,`minscale`,`maxscale`,`offsite`,`ows_srs`,`wms_name`,`wms_server_version`,`wms_format`,`wms_connectiontimeout`,`wms_auth_username`,`wms_auth_password`,`wfs_geom`,`selectiontype`,`querymap`,`logconsume`,`processing`,`kurzbeschreibung`,`datenherr`) VALUES('Alkis Nutzungen','2',@group_id,'select *,gml_id as oid from lk_nutzungen where 1=1','the_geom FROM (SELECT the_geom, gml_id as oid FROM alkis.lk_nutzungen) as foo using unique oid using srid=25833','alkis','','','','','','1000','50','',@connection,'','6','','','3','pixels','25833','','1',NULL,'30000770','0','25001','255 255 255','EPSG:25833','','1.1.0','image/png','60','','','','','0','0','','Nutzungen in ALKIS','Vermessungs- und Geoinformationsbehörde LWL-PCH');
| + | == Mapdatei == |
− | SET @last_layer_id1156=LAST_INSERT_ID();
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'bezeichnung','bezeichnung','lk_nutzungen','lk_nutzungen','varchar','','','1',NULL,'Text','','','','13');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'blabla','blabla','lk_nutzungen','lk_nutzungen','varchar','','','1','1000','Text','','','','5');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'class','class','lk_nutzungen','lk_nutzungen','int4','','','1','32','Text','','','','3');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'fldclass','fldclass','lk_nutzungen','lk_nutzungen','varchar','','','1','30','Text','','','','8');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'fldinfo','fldinfo','lk_nutzungen','lk_nutzungen','varchar','','','1','30','Text','','','','9');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'gml_id','gml_id','lk_nutzungen','lk_nutzungen','bpchar','','','1','16','Text','','','','0');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'gruppe','gruppe','lk_nutzungen','lk_nutzungen','varchar','','','1','30','Text','','','','2');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'info','info','lk_nutzungen','lk_nutzungen','int4','','','1','32','Text','','','','10');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'label','label','lk_nutzungen','lk_nutzungen','varchar','','','1','100','Text','','','','4');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'name','name','lk_nutzungen','lk_nutzungen','varchar','','','1',NULL,'Text','','','','12');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'nutz_id','nutz_id','lk_nutzungen','lk_nutzungen','int4','','','1','32','Text','','','','1');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'oid','gml_id','lk_nutzungen','lk_nutzungen','bpchar','','','1','16','Text','','','','15');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'source_table','source_table','lk_nutzungen','lk_nutzungen','varchar','','','1','50','Text','','','','6');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'the_geom','the_geom','lk_nutzungen','lk_nutzungen','geometry','POLYGON','','1',NULL,'Geometrie','','','','14');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'title','title','lk_nutzungen','lk_nutzungen','varchar','','','1','50','Text','','','','7');
| + | |
− | INSERT INTO layer_attributes (`layer_id`,`name`,`real_name`,`tablename`,`table_alias_name`,`type`,`geometrytype`,`constraints`,`nullable`,`length`,`form_element_type`,`options`,`alias`,`tooltip`,`order`) VALUES(@last_layer_id1156,'zustand','zustand','lk_nutzungen','lk_nutzungen','int4','','','1','32','Text','','','','11');
| + | |
− | INSERT INTO classes (`Name`,`Layer_ID`,`Expression`,`drawingorder`,`text`) VALUES('Nutzung',@last_layer_id1156,'','1','');
| + | |
− | SET @last_class_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO styles (`symbol`,`symbolname`,`size`,`color`,`backgroundcolor`,`outlinecolor`,`minsize`,`maxsize`,`angle`,`angleitem`,`antialias`,`width`,`minwidth`,`maxwidth`,`sizeitem`) VALUES(NULL,'','1','-1 -1 -1','','228 0 244',NULL,'1','360','',NULL,NULL,NULL,NULL,'');
| + | |
− | SET @last_style_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_styles2classes (style_id, class_id, drawingorder) VALUES (@last_style_id, @last_class_id, 0);
| + | |
− | INSERT INTO labels (`font`,`type`,`color`,`outlinecolor`,`shadowcolor`,`shadowsizex`,`shadowsizey`,`backgroundcolor`,`backgroundshadowcolor`,`backgroundshadowsizex`,`backgroundshadowsizey`,`size`,`minsize`,`maxsize`,`position`,`offsetx`,`offsety`,`angle`,`autoangle`,`buffer`,`antialias`,`minfeaturesize`,`maxfeaturesize`,`partials`,`wrap`,`the_force`) VALUES('arial',NULL,'30 30 30','255 255 255','',NULL,NULL,'','',NULL,NULL,'7','7','18','9',NULL,NULL,NULL,NULL,NULL,'1',NULL,NULL,'1',NULL,NULL);
| + | |
− | SET @last_label_id=LAST_INSERT_ID();
| + | |
− | INSERT INTO u_labels2classes (label_id, class_id) VALUES (@last_label_id, @last_class_id);</nowiki>
| + | |
| | | |
| + | :*[http://www.kvwmap.de/alkis/alkis.map alkis.map] Stand 15.08.2014 |
| | | |
| == Testdaten == | | == Testdaten == |
Zeile 309: |
Zeile 190: |
| '''Testdaten:''' | | '''Testdaten:''' |
| *ALKIS®-Beispieldaten Brandenburg: [http://www.geobasis-bb.de/GeoPortal1/produkte/aaa-testdaten.html] | | *ALKIS®-Beispieldaten Brandenburg: [http://www.geobasis-bb.de/GeoPortal1/produkte/aaa-testdaten.html] |
− | :Beim Einlesen werden Fehlermeldungen folgender Form ausgegeben:
| |
− | ...
| |
− | ERROR 1: Did not get 2+ values in <gml:pos>23.1600</gml:pos> tuple.
| |
− | ERROR 1: Did not get 2+ values in <gml:pos>31.3500</gml:pos> tuple.
| |
− | ERROR 1: Did not get 2+ values in <gml:pos>25.8700</gml:pos> tuple.
| |
− | ...
| |
− |
| |
− | *ALKIS®-Beispieldaten Mecklenburg-Vorpommern vom LAiV: [http://www.laiv-mv.de/land-mv/LAiV_prod/LAiV/AfGVK/AAA-Projekt/ALKIS/index.jsp]
| |
− | : Hier scheint es Probleme mit den Geometrietypen zu geben. Es werden Fehlermeldungen folgender Form ausgegeben:
| |
− | ...
| |
− | Command: INSERT INTO "ax_transportanlage" ("wkb_geometry" , "gml_id", "identifier", "beginnt", "advstandardmodell", "anlass", "bauwerksfunktion") VALUES ('0101000020E9640000F6285C8F6CDC0D412506813D4FCC5641'::GEOMETRY, 'DEMV000000138982', 'urn:adv:oid:DEMV000000138982', '2012-06-04T06:31:41Z', 'DLKM', 0, 1103) RETURNING "ogc_fid"
| |
− | Warning 1: Geometry to be inserted is of type 3D Line String, whereas the layer geometry type is 3D Point.
| |
− | Insertion is likely to fail
| |
− | ERROR 1: INSERT command for new feature failed.
| |
− | ERROR: new row for relation "ax_einrichtunginoeffentlichenbereichen" violates check constraint "enforce_geotype_wkb_geometry"
| |
− |
| |
− | Command: INSERT INTO "ax_einrichtunginoeffentlichenbereichen" ("wkb_geometry" , "gml_id", "identifier", "beginnt", "anlass", "art") VALUES ('0102000020E96400000200000052B81E8540D50D416ABC742366CD56419A99999944D50D415EBA49A460CD5641'::GEOMETRY, 'DEMV000000040186', 'urn:adv:oid:DEMV000000040186', '2012-06-04T06:26:22Z', 0, 1500) RETURNING "ogc_fid"
| |
− | ERROR 1: INSERT command for new feature failed.
| |
− | ERROR: new row for relation "ax_einrichtunginoeffentlichenbereichen" violates check constraint "enforce_geotype_wkb_geometry"
| |
− | ...
| |
| | | |
− | Trotz der Fehlermeldungen beim Einlesen funktioniert bei beiden Testdatensätzen die Kartendarstellung als auch die Katasterrecherche in kvwmap.
| + | *ALKIS®-Beispieldaten Mecklenburg-Vorpommern vom LAiV: [http://www.laiv-mv.de/land-mv/LAiV_prod/LAiV/AfGVK/Projekt_AAA/ALKIS/index.jsp] |
| + | : Hier findet man Beispieldaten zum Testen (kostenlos). |
Den aktuellen Code kann man über svn herunterladen. Dazu benötigt man aber subversion. Das Clientprogramm kann man unter Debian mit folgendem Befehl installieren.
Das Verzeichnis mit der aktuellen Version von gdal bekommt man schließlich mit folgendem Befehl heruntergeladen (ausgechecked)
Wer kein svn hat bzw. Schwierigkeiten mit subversion das Verzeichnis auszuchecken, kann das auch auf einem beliebigen anderen Rechner machen. Das erhaltene Verzeichnis packen und auf seinen eigenen Server übertragen. SVN macht nichts weiter als die Dateien runterholen und für eine Versionsverwaltung vorbereiten. Wenn man nichts entwickeln will, also nichts am Code ändern will, braucht man die Versionsverwaltung nicht. Mit anderen Worten, wenn man das Verzeichnis mit svn ausgecheckt hat, kann man anschließend das versteckte Verzeichnis ".svn" löschen und ".gitignore" gleich mit.
Beim Einspielen der NAS-Daten ist zu beachten, dass unter Linux ein aktuelles GDAL (derzeit Version 2.0dev) nach dieser Anleitung http://trac.wheregroup.com/PostNAS/wiki/BuildingOgrPostNASDriver selbst kompiliert werden muss. Alternativ kann man auch das OGR aus dem osgeo4w-Projekt unter Windows verwenden.
Um die NAS-Daten in die PostNAS-DB einzuspielen wird das aktuelle Programm ogr2ogr aus dem GDAL Trunk verwendet.
Man wechselt dazu nach
wobei <POSTNASDB> durch den Datenbanknamen, <DBUSER> durch den Datenbanknutzer und /PFAD/ZU/DEN/NASDATEN durch den Pfad zu den NAS-Daten ersetzt werden muss, die Option PG_USE_COPY YES bringt erhebliche Performance Vorteile durch Verwendung von copy stattt insert-Kommandos.
Läuft kvwmap im docker Container wird ogr2ogr auch in einem separaten Container ausgeführt. Das erspart die aufwendige Nachinstallation von ogr2ogr mit den neuesten Bibliotheken. Verwendet wird hier das Image geodata/gdal
Das Image wird beim installieren des kvwmap containers mit runtergeladen und steht, wenn das Datenverzeichnis gemountet und die Datenbank gelinkt ist direkt zur Verfügung.
ogr2ogr im Container wird wie folgt aufgerufen:
Der ogr-Befehl ist identisch, nur dass alle doppelten Anführungsstrichte mit Backslash escaped werden müssen, weil der ganze Befehl ja schon in doppelten Anführungsstrichen ist.
Damit Bogen-Geometrien (<gml:Arc>) in lineare Geometrien umgewandelt werden, ist auf manchen Servern der Paramter "-nlt CONVERT_TO_LINEAR" notwendig, auf anderen Servern macht ogr2ogr das offenbar standardmäßig. Bei der Umwandlung wird der Bogen durch einen Linienzug approximiert. Leider geht dadurch aber die Topologie verloren, d.h. 2 angrenzende Objekte haben nun kleine Lücken und überlappen sich teilweise...
ausführt und sich anschaut, auf welches gdal gelinkt wird. Falls dort nicht auf das PostNAS-gdal gelinkt wird, muss man, bevor man ogr2ogr aufruft, den Library-Path entsprechend setzen:
Anschließend die Datei xml_bath.sh ausführbar machen und ausführen.
Die Verarbeitung des Grunddatenbestandes ist sehr zeitaufwändig und rechenintensiv. Es ist ratsam vorher die postgres DB zu "tunen", falls das noch nicht erfolgt ist.
Hinweise dazu finden sich zahlreich im Netz.
Der Grunddatenbestand eines ganzen Landkreises (hier LUP) kann durchaus ein Datenvolumen von 20 GB NAS ergeben. Bei einer Verarbeitungsgeschwindigkeit von ca. 400 bis 500 MB pro Stunde ist der Server schon mal zwei ganze Tage beschäftigt.
Bei einem Test mit vier OGR2OGR Prozessen parallel sind keine Probleme aufgetreten und die Verarbeitung lief etwa in der Hälfte der Zeit, wobei der Server aber schon deutlich belastet war.
Die Parallelverarbeitung sollte noch eingehend gestestet werden.
Es ist wichtig die Log-Dateien nach der Verarbeitung eingehend zu prüfen!
Die zahlreichen Warnungen wie z.B.:
sind wohl nicht relevant (???).
Um in kvwmap alle katasterbezogenen Komponenten von ALK/ALB auf ALKIS umzustellen, muss man nur einige Parameter in der config.php setzen:
Zum Testen eigenen sich NAS-Daten aus der DHK, die aus einem NBA-Verfahren stammen. Wer noch keine eigenen NBA-Daten hat, kann zunächst mit Testdaten arbeiten. Erfolgreich getestet wurden Daten aus MV vom LAiV und Daten aus Brandenburg, die auch in EPSG 25833 liegen.