wfsSearch Paramter "usesId" deaktiviert andere Auswahllisten ("options")

Issue #826 resolved
Michael Cronen created an issue

Über das Werkzeug “wfsSearch” soll ein Suchdialog für eine Flurstückssuche realisiert werden.

Hierbei sollen drei Felder zur Verfügung stehen: Gemarkung (Auswahlliste), Flur (Auswahlliste), Flurstück (Eingabefeld).

Bei dem zugehörige WFS wurde eine StoredQuerie für diese drei Eingaben definiert.

Bei der Gemarkung soll der Name angezeigt werden, aber über die Nummer mit dem WFS kommuniziert werden.

Hierfür wurde der Parameter “usesID” = true gesetzt. Dies funktioniert (erkennbar an der WFS Anfrage) allerdings wird die Auswahlliste für die Flur deaktiviert, sodass keine Eingabe mehr möglich ist. Wird der Parameter “usesID” wieder auf false gesetzt, ist die Auswahlliste wieder verfügbar, allerdings wird in der WFS Anfrage der Gemarkungsname übergeben.

Hier der zugehörige Part der config.json

                "wfsSearch":{
                    "instances": [
                        {
                            "requestConfig": {
                                "restLayerId": "6",
                                "storedQueryId": "flurStuecke"                              
                            },
                            "selectSource": "flurstuecksuche/flurstuecke.json",
                            "title": "neue Suchfunktion",
                            "literals": [
                                {
                                    "clause": {
                                        "type": "and",
                                        "literals": [
                                            {
                                                "field": {
                                                    "type": "equal",
                                                    "fieldName": "gemarkung",
                                                    "inputLabel": "Gemarkung",
                                                    "options": "",
                                                    "usesId": true
                                                }
                                            },
                                            {
                                                "field": {
                                                    "type": "equal",
                                                    "fieldName": "flur",
                                                    "inputLabel": "Flur",
                                                    "options": "flur"

                                                }
                                            },
                                            {
                                                "field": {
                                                    "type": "equal",
                                                    "fieldName": "flurstueck",
                                                    "inputLabel": "Flurstücksnummer"
                                                }
                                            }
                                        ]
                                    }
                                }
                            ]
                        }
                    ]
                }

Die Datei flurstuecke.json befindet sich im Anhang.

Abhilfe wurde versucht mit Hilfe der Parameter
"displayName":

und
"fieldValue":

Hier gab es allerdings die Probleme, dass die Parameter scheinbar nicht als Array aus einer Datei benutzt werden können und somit alle Werte in die config.json geschrieben werden müsste. Wünschenswert wäre hier ein Verweis auf eine Datei.

Zudem funktioniert auch hierbei (Test mit zwei Gemarkungen durchgeführt) das Auswahlfeld für die Flur nicht.

                                            {
                                                "field": {
                                                    "type": "equal",
                                                    "fieldName": "gemarkung",
                                                    "inputLabel": "Gemarkung",
                                                    "options": [
                                                        {
                                                            "displayName": "Allrath",
                                                            "fieldValue": "3214"
                                                        },
                                                        {
                                                            "displayName": "Barrenstein",
                                                            "fieldValue": "3215"
                                                        }
                                                    ]
                                                }
                                            },

Comments (9)

  1. Dennis Sen

    Hallo Herr Cronen,

    ist der konfigurierte WFS im Internet verfügbar? Wenn ja, würde die vollständige Konfiguration beim Nachstellen des Szenarios helfen, dann kann ich direkt debuggen.

    Viele Grüße

  2. Dennis Sen

    Hallo Herr Cronen,

    danke dafür! Ich denke es handelt sich um einen Bug im Masterportal. Ich bin gerade dabei das zu lösen und ein paar Tests zu schreiben, damit keine anderen Nutzungen kaputt gehen. Aktuell ist es soweit repariert, dass ich diese URL aus dem Masterportal abfragen konnte: https://maps.rhein-kreis-neuss.de/services/wfs?service=wfs&version=2.0.0&request=GetFeature&maxFeatures=8&version=2.0.0&StoredQuery_ID=flurStuecke&gemarkung=3359&flur=7&flurstueck=664

    Laut https://www.rhein-kreis-neuss.de/fileadmin/user_upload/redaktionsgruppen/katasteramt/formulare-publikationen/muster-liegenschaftskarte.pdf sollte das einen Treffer ergeben (falls das keine Beispielzahlen im Muster sind). Sehen Sie da noch einen Fehler in der Anfrage, oder ist die StoredQuery noch nicht so weit?

    Viele Grüße

  3. Michael Cronen reporter

    Hallo Herr Sen,

    die Abfrage muss

    https://maps.rhein-kreis-neuss.de/services/wfs?service=wfs&version=2.0.0&request=GetFeature&maxFeatures=8&version=2.0.0&StoredQuery_ID=flurStuecke&gemarkung=3359&flur=7&flurstuecksnummer=664

    lauten.

    Vermutlich habe ich beim vielen Ausprobieren den falschen Feldnamen zum Schluss herauskopiert. In der Config.json muss das dritte ‘field’ folgendermaßen aussehen, damit es zum WFS passt.

                                                {
                                                    "field": {
                                                        "type": "equal",
                                                        "fieldName": "flurstuecksnummer",
                                                        "inputLabel": "Flurstücksnummer"
                                                    }
                                                }
    

    Viele Grüße

  4. Log in to comment