[PostNAS Suite] Änderung der Spalte "anlass" bei Fortführungen

Peter Korduan peter.korduan at gdi-service.de
Mi Aug 3 09:39:00 PDT 2016


Am 02.08.16 um 15:28 schrieb Jürgen E. Fischer:
> Moin Peter,
>
> On Tue, 02. Aug 2016 at 11:02:32 +0200, Peter Korduan wrote:
>> Beispiel (gekürzte NAS Fortführungsdatei):
>>        <wfs:Update typeName="AX_PunktortAU">
>>          <wfs:Property>
>>            <wfs:Name>adv:lebenszeitintervall/adv:AA_Lebenszeitintervall/adv:endet</wfs:Name>
>>            <wfs:Value>2015-08-31T09:51:28Z</wfs:Value>
>>          </wfs:Property
>>          <wfs:Property>
>>            <wfs:Name>adv:anlass</wfs:Name>
>>            <wfs:Value>000000</wfs:Value>
>>          </wfs:Property>
>>          <wfs:Property>
>>            <wfs:Name>adv:anlass</wfs:Name>
>>            <wfs:Value>200000</wfs:Value>
>>          </wfs:Property>
>>          <ogc:Filter>
>>            <ogc:FeatureId fid="DEBBAL620005ZcOO20130202T144107Z" />
>>          </ogc:Filter>
>>        </wfs:Update>
>>      </wfs:Transaction>
>>    </geaenderteObjekte>
> Produziert hier zwar auch einen Fehler, allerdings nur weil ich obiges Objekt
> nicht habe:
>
> 2016-08-02T15:19:11 > PG: PQexecParams(INSERT INTO "delete" ("typename", "featureid", "context", "anlass", "endet") VALUES ('AX_PunktortAU', 'DEBBAL620005ZcOO20130202T144107Z', 'Update', ARRAY['000000','200000'], '2015-08-31T09:51:28Z') RETURNING "ogc_fid") = PGRES_FATAL_ERROR|
>
> einen Crash gibt es allerdings nicht (nightly build aus osgeo4w;
> gdal-dev-2.2.0-34854).
>
>
> Jürgen
Moin Jürgen,
Welche Fehlermeldung liefert denn Dein
> INSERT INTO "delete" ("typename", "featureid", "context", "anlass", "endet") VALUES ('AX_PunktortAU', 'DEBBAL620005ZcOO20130202T144107Z', 'Update', ARRAY['000000','200000'], '2015-08-31T09:51:28Z') RETURNING "ogc_fid"

Müsste ja eine Exception aus der Triggerfunktion delete_feature_hist() sein.

osgeo4w kann ich leider nicht verwenden, weil ich kein Windows nutze. 
Aber ich mach mir auch noch mal ein build aus der letzten Version von 
branch 2.1.


Mir ist noch was aufgefallen heute beim Einlesen einer Fortführung mit 
GDAL 2.0.0dev, released 2014/04/16

Flurstücke, welche mit Replace in der NAS-Datei stehen, wurden in 
Tabelle ax_flurstueck nicht ersetzt, sondern hinzugefügt und sind damit 
zwei mal mit der gleichen gml_id und gleichem flurstueckskennzeichen und 
unterschiedlichen beginnt und beide mit endet=NULL vorhanden und tauchen 
nicht in delete auf.

Ich vermute die Flurstücke werden in ax_flurstueck nicht überschrieben, 
weil sie ein anderes beginnt haben als die, die zu replacen sind.

Der Grund warum die replaced werden sollten ist dass sie eine andere 
Anlassart 60200 (Teilung) und eine andere Buchungsstelle (istgebucht) 
bekommen sollten.

Die neue Buchung, die das Flurstück bekommen soll ist richtig 
eingetragen. Die kamen aber auch mit update und insert.

Grundausstattung

<wfs:Insert>
  <AX_Flurstueck gml:id="DEMV0074Z0000wpQ">
    <gml:identifier 
codeSpace="http://www.adv-online.de/">urn:adv:oid:DEMV0074Z0000wpQ</gml:identifier>
    <lebenszeitintervall>
      <AA_Lebenszeitintervall>
        <beginnt>2014-12-11T23:56:13Z</beginnt>
      </AA_Lebenszeitintervall>
    </lebenszeitintervall>
<modellart><AA_Modellart><advStandardModell>DLKM</advStandardModell></AA_Modellart></modellart>
    <anlass>000000</anlass>
    <zeigtAufExternes>
...
<flurstueckskennzeichen>130016001001470001__</flurstueckskennzeichen>
    <istGebucht xlink:href="urn:adv:oid:DEMV007400bcCzqz"/>
...

Fortführung

<wfsext:Replace vendorId="AdV" safeToIgnore="false">
  <AX_Flurstueck gml:id="DEMV0074Z0000wpQ">
    <gml:identifier 
codeSpace="http://www.adv-online.de/">urn:adv:oid:DEMV0074Z0000wpQ</gml:identifier>
    <lebenszeitintervall>
      <AA_Lebenszeitintervall>
        <beginnt>2015-06-30T12:04:09Z</beginnt>
      </AA_Lebenszeitintervall>
    </lebenszeitintervall>
<modellart><AA_Modellart><advStandardModell>DLKM</advStandardModell></AA_Modellart></modellart>
    <anlass>060200</anlass>
    <zeigtAufExternes>
...
<flurstueckskennzeichen>130016001001470001__</flurstueckskennzeichen
    <istGebucht xlink:href="urn:adv:oid:DEMV0074Z0001mMm"/>
...

Müsste da nicht ein Update mit gml_id erfolgen? Statt einem Insert.

Gruß Peter

-- 
GDI-Service Rostock
Dr. Peter Korduan
Joachim-Jungius-Str. 9
18059 Rostock
Tel: 0381 40344444
Mobil: 0175 5446411
E-Mail: peter.korduan at gdi-service.de



Mehr Informationen über die Mailingliste NAS