Befund aus dem QGIS-Test: Die Bildschirmwahl wirkte nicht, das Fenster
erschien immer auf dem Hauptbildschirm. Im Vollbild ließ es sich weder
verschieben noch schließen und verdeckte QGIS; nur ein hartes Beenden
von QGIS half.
Bildschirmwahl und Vollbild entfallen. Das Anzeigefenster öffnet als
normales Fenster mit Rahmen; der Bearbeiter schiebt es auf den Bildschirm
des Eigentümers und kann es dort maximieren. Größe und Lage werden beim
Beenden gemerkt und in der nächsten Sitzung wiederhergestellt (bis zum
Neustart von QGIS).
Unter den Knöpfen steht jetzt Pfad und Name der Korrektur-Datei, mit
Hinweis, solange sie noch nicht angelegt ist oder erst abgefragt wird.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
„Daten anzeigen“ in der Trefferliste zeigt Name, Anschrift und E-Mail der
gewählten Einträge in einem eigenen Fenster: auf einem zweiten Bildschirm
im Vollbild, auf dem QGIS-Bildschirm als normales Fenster. Die Sitzung
wird von Hand begonnen und beendet; „Anzeige leeren“ entfernt die Daten,
ohne das Fenster zu schließen. Konten, IDs und Kennzeichen erscheinen dort
nicht, alle Werte werden maskiert.
„Korrigieren …“ ändert angezeigte Daten. Die Eigentümerdatei bleibt
unverändert; jede Änderung wird mit Zeitpunkt, Konto, Personen-ID, altem
und neuem Wert an <Eigentümerdatei>_korrekturen.csv angehängt und sofort
angezeigt. Ohne beschreibbaren Ordner wird nach dem Speicherort gefragt.
In test_eigentuemer_tab.py sind die beim letzten Mal zusammengezogenen
with-Zeilen wieder umbrochen; die Trefferliste bekommt jetzt den
Anzeige-Rückruf, der Test dazu ist angepasst.
Dritter und letzter Schritt von #56.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PER_RECHTSPERSON kennt die Werte 0, 1, 5 und 9 und ist kein Ja/Nein-Feld.
Die Trefferliste bekommt dafür eine eigene Spalte mit dem unveränderten
Wert; abweichende Werte einer Person werden gesammelt. Die Entschlüsselung
folgt später. „verstorben“ (PER_VERSTORBEN 0/1) bleibt als Hinweis.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Eigentümerdatei (CSV-Layer mit Nachname/Vorname) wählen, Name und/oder
Vorname eingeben: Eine nicht modale Trefferliste zeigt Name, Anschrift,
E-Mail und die Kennzeichen „verstorben“/„Rechtsperson“. Gleiche Personen
mit gleicher Anschrift werden zusammengefasst; Groß-/Kleinschreibung und
Umlautschreibweise spielen keine Rolle. Von QGIS als Zahl gelesene PLZ
bekommen ihre führende Null zurück. Meldungen enthalten keine Namen.
Die Auswahltabelle aus „Verfahrensgebiete aus Landkreis laden“ ist als
baue_auswahltabelle herausgelöst und wird von der Trefferliste mitgenutzt.
Zweiter Schritt von #56; Anzeigefenster und Korrekturen folgen.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Gemarkung (Name oder Nummer) und Flurstücksnummer eingeben, die Treffer
werden im Layer „Flurstücke“ ausgewählt, angezoomt und kurz hervorgehoben.
Verglichen wird das flurstueckskennzeichen, Gemarkungsnamen werden über
den Layer „Gemarkungen“ aufgelöst. Ohne Layer „Flurstücke“ weist ein
Dialog darauf hin, zuerst Verfahrensgebiet und Flurstücke zu laden.
Erster Schritt von #56; Eigentümersuche und Anzeigefenster folgen.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Nach dem Laden aus ALKIS oder Shape wurde mit layer.extent() im
Layer-KBS gezoomt; bei anderem Projekt-KBS sprang die Karte an die
falsche Stelle. Beide Stellen nutzen jetzt zoom_auf_layer aus sn_basis.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
handle_flurst_aus_gemarkungen() hatte eine eigene Kopie des
"Layer bereits vorhanden"-Dialogs und rief lade_flurstuecke_per_gemarkung
direkt auf, statt die bereits vorhandene, getestete Logik in
flurstueck_alkis() wiederzuverwenden. Grund war, dass ohne_dialog=True
zwei unabhaengige Dinge zugleich abschaltete: die Schluessel-Abfrage per
ask_text UND den Existenz-Dialog samt Anhaengen-Dedup.
Neuer Parameter ohne_schluessel_abfrage trennt beides: er ueberspringt
nur die Schluessel-Abfrage (Schluessel kommen bereits aus der
Gemarkungen-Layer-Auswahl), der Existenz-Dialog mit Dedup bleibt aktiv.
ohne_dialog bleibt fuer die automatischen Pipelines unveraendert.
handle_flurst_alkis() und handle_flurst_aus_gemarkungen() teilen sich
jetzt zusaetzlich die Nachbehandlung des Ladeergebnisses
(_uebernimm_flurstuecke_ergebnis). lade_flurstuecke_per_gemarkung() wird
wieder nur noch von einer Stelle aus aufgerufen.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
handle_flurst_aus_gemarkungen in working_tab.py hatte eine eigene,
von flurstueck_alkis() unabhaengige Anhaengen-Logik, die
lade_flurstuecke_per_gemarkung direkt aufrief und ungefiltert
anhaengte. Nutzt jetzt dieselbe flurstueckskennzeichen-Pruefung wie
der Fix im vorigen Commit; dafuer vorhandene_kennzeichen() in
flurstueck_alkis.py oeffentlich gemacht.
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>
Portiert aus origin/unstable (Feature "Beteiligung prüfen": Abgleich einer
BI-Server-CSV-Exportliste mit dem ALKIS-Flurstücksbestand des
Verfahrensgebiets), bewusst OHNE den dortigen silent-Modus für
verfahrensgebiet_alkis()/verfahrensgebiet_alkis_komplett():
- try1 (Verfahrensgebiet-Layer mit Kennzeichen vorhanden) bleibt unverändert
– schneller Mengenvergleich ohne WFS-Zugriff.
- try2 (Layer vorhanden, aber ohne verwertbare Kennzeichen) und try3 (kein
Layer vorhanden) laden nicht mehr automatisch/silent über die komplette
ALKIS-Pipeline, sondern fordern den Nutzer per Meldung auf, das
Verfahrensgebiet zunächst regulär über "Aus ALKIS laden" zu laden und die
Beteiligungsprüfung danach erneut zu starten (landet dann automatisch bei
try1). Grund: ein automatischer Durchlauf ohne Nutzerinteraktion
(mehrdeutige BROR-Treffer, Flächenabweichungen) hat sich in der Praxis
nicht als zuverlässig genug erwiesen.
- verfahrensgebiet_alkis.py/verfahrensgebiet_alkis_komplett.py bleiben dadurch
unangetastet – kein silent-Parameter, kein Konflikt mit dem heutigen
Zwei-Dialog-Split und dem Landkreis-Fallback.
- Neuer Button "Beteiligung prüfen" in working_tab.py, delegiert an
beteiligung_pruefen().
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Ist weder Verfahrensnummer noch Landkreis in den Projekteigenschaften
gesetzt, wird jetzt per Dialog ein Landkreis abgefragt (inkl. "Alle
Landkreise") statt direkt abzubrechen.
- Verfahrensgebiet-spezifische ALKIS-Dialoge aus sn_basis hierher verschoben:
neue Datei functions/verfahrensgebiet_dialoge.py
(ask_bror_kombinationen, ask_landkreis_objekte, ask_landkreis_auswahl).
- Bugfix: BROR-Layer bekommt seinen Style (BauRaumOderBodenordnungsrecht.qml)
jetzt direkt beim Laden in verfahrensgebiet_alkis_komplett(), unabhängig
vom weiteren Ablauf. working_tab.py überspringt bei "Nur Objekte laden"
jetzt den gesamten VG-Nachbehandlungsblock (Style/Extent/Haken/Combobox/
Erfolgsmeldung), da dort kein echter VG-Layer entsteht. Detailprüfung/
Verifikation im echten QGIS (nicht nur per Unittest) steht noch aus.
- Bugfix: Erfolgsmeldung "Layer wurde ... geladen (inkl.
Flurstücksverschneidung)" erscheint nicht mehr bei "Nur Objekte laden".
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>