Manche Shape-Exporte liefern das Feld "FBSchl" mit angehängtem Punkt
(z.B. "FBSchl.") oder abweichender Groß-/Kleinschreibung. Der bisherige
exakte Namensvergleich (fields().indexFromName) erkannte das Feld dann
nicht und meldete fälschlich "Feld fehlt", die Datei wurde nicht
eingelesen.
- _normalisiere_feldname(): entfernt alle Nicht-alphanumerischen Zeichen
und normalisiert auf Kleinbuchstaben
- _finde_fbschl_index(): exakter Namensabgleich zuerst, sonst Fallback auf
normalisierten Vergleich über alle Felder
Fixes#44
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- 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>
- verfahrensgebiet_shape_komplett.py: TEMPORÄRER STOPP (wieder entfernen)
zur Zwischenkontrolle nach dem ZIP-Import. Layer wird dafür schon an
dieser Stelle sichtbar ins Projekt eingefügt statt erst nach Schritt 2;
bei "Nein" bleibt der Layer zur Inspektion erhalten (abgeschlossen=True),
der spätere reguläre addMapLayer-Aufruf prüft auf Duplikat.
- docs/ablauf_verfahrensgebiet_laden.md: Mermaid-Diagramm der Lade-Abläufe
(ALKIS/Shape) bis zu den jeweiligen frühen Stopps.
Lokaler Debug-Branch, bewusst nicht für unstable vorgesehen.