Shape-Ladevorgang: Mehrfachauswahl, ZIP-Temp-Entpacken, FBSchl-Prüfung
- Dateidialog erlaubt Mehrfachauswahl von .zip/.shp; ZIPs werden in ein
temporäres Verzeichnis entpackt statt dauerhaft neben der ZIP-Datei
(Cleanup nach dem Einlesen)
- Je Shapefile wird das Feld FBSchl geprüft und in Neuordnungs- bzw.
Neuvermessungsgebiet unterschieden; Geometrien gleichen Typs werden über
alle Dateien hinweg zu je einem Layer verschmolzen und entsprechend
benannt ("Neuordnungsgebiet (NoBIS)" / "Neuvermessungsgebiet (NoBIS)")
- Fehler einzelner Dateien/Shapefiles brechen den Vorgang nicht mehr ab,
sondern werden gesammelt und am Ende in einer Meldung ausgegeben
- Fortschrittsdialog erscheint erst nach dem Stop nach dem Laden, nicht
mehr schon vor dem Dateidialog
- Vorprüfung auf gesetzte Verfahrensnummer vorerst auskommentiert
- Ablauf-Dokumentation aufgeteilt in aus_alkis_laden.md und
aus_shape_laden.md (+ technische Ergänzung aus_shape_laden_technisch.md)
Löst #36, #37, #38
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
8447a2615c
commit
b4f2222b50
@@ -0,0 +1,69 @@
|
||||
# Ablauf: Aus ALKIS laden
|
||||
|
||||
Betrachteter Teilablauf: nur bis zum Erzeugen des Layers
|
||||
"BauRaumOderBodenordnungsrecht (ALKIS)". Die anschließenden Schritte des
|
||||
vollständigen Workflows (Gemarkungen, Flurstücke, Flächenvergleich,
|
||||
Detailprüfung) sind hier bewusst nicht dargestellt.
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
Start(["Aus ALKIS laden"])
|
||||
B0{"Verfahrensnummer oder Landkreis in Projekteigenschaften gesetzt?"}
|
||||
LKAUSW["Landkreis auswählen (Dialog)"]
|
||||
Abbruch(["Abbruch"])
|
||||
MODUS{"Verfahrensnummer gesetzt?"}
|
||||
EXIST1{"Layer 'Verfahrensgebiet' bereits vorhanden?"}
|
||||
EXIST2{"Layer 'Verfahrensgebiet' bereits vorhanden?"}
|
||||
Keep[("Verfahrensgebiet (bestehender Layer)")]
|
||||
WFS1["WFS-Suche per Verfahrensnummer"]
|
||||
WFS2["WFS-Suche per Landkreis"]
|
||||
C1{"Mehrere Objekt-Kombinationen gefunden?"}
|
||||
AUSW1["Objektauswahl"]
|
||||
AUSW2["Objektauswahl"]
|
||||
BUILD["Layer erzeugen"]
|
||||
Ende[("BauRaumOderBodenordnungsrecht (ALKIS)")]
|
||||
|
||||
Start --> B0
|
||||
B0 -- Nein --> LKAUSW
|
||||
LKAUSW -- Abbruch --> Abbruch
|
||||
LKAUSW -- OK --> MODUS
|
||||
B0 -- Ja --> MODUS
|
||||
|
||||
MODUS -- Ja --> EXIST1
|
||||
MODUS -- Nein --> EXIST2
|
||||
|
||||
EXIST1 -- "Ja, behalten" --> Keep
|
||||
EXIST2 -- "Ja, behalten" --> Keep
|
||||
|
||||
EXIST1 -- "Nein / neu laden" --> WFS1
|
||||
EXIST2 -- "Nein / neu laden" --> WFS2
|
||||
|
||||
WFS1 --> C1
|
||||
C1 -- Ja --> AUSW1
|
||||
C1 -- Nein --> BUILD
|
||||
AUSW1 --> BUILD
|
||||
|
||||
WFS2 --> AUSW2
|
||||
AUSW2 --> BUILD
|
||||
|
||||
BUILD --> Ende
|
||||
```
|
||||
|
||||
Hinweise zu den Entscheidungsknoten:
|
||||
|
||||
- **B0**: Es werden die Projektvariablen `verfahrensnummer` und
|
||||
`landkreis_kennzahl` gemeinsam geprüft. Nur wenn **beide** fehlen, wird der
|
||||
Landkreis per Dialog abgefragt.
|
||||
- **MODUS**: Ist eine Verfahrensnummer gesetzt, wird über die Verfahrensnummer
|
||||
gesucht (auch wenn zusätzlich ein Landkreis gesetzt ist); andernfalls über
|
||||
den Landkreis.
|
||||
- **EXIST1/EXIST2**: Existiert bereits ein Layer "Verfahrensgebiet" und lehnt
|
||||
der Nutzer das Neuladen ab, wird direkt dieser vorhandene Layer verwendet –
|
||||
ohne erneute WFS-Suche oder Objektauswahl.
|
||||
- **C1 (nur im Verfahrensnummer-Zweig)**: Die Objektauswahl erscheint nur,
|
||||
wenn der WFS mehrere unterschiedliche (adv_name, bezeichnung)-Kombinationen
|
||||
liefert. Bei genau einem Treffer wird der Layer ohne Nutzerinteraktion
|
||||
erzeugt.
|
||||
- **Landkreis-Zweig**: Hier erscheint die Objektauswahl immer (inkl.
|
||||
"Alle auswählen"-Option), da hier potenziell deutlich mehr Treffer als bei
|
||||
der Verfahrensnummer-Suche auftreten.
|
||||
Reference in New Issue
Block a user