Wie Bundesland automatisch aus PLZ generieren
Moin,
wir legen für unsere Kund*innen Profilseiten bei Ninox an die unter anderem so aussehen:
Wir haben in unserem Kontaktformular jedoch nur die Frage nach der PLZ und nicht nach dem Bundesland, weshalb dieses Feld in 99% der Fällen nicht ausgefüllt ist.
PLZ ist in ca 50% der Profile befüllt.
Wie kann ich jetzt für alle Kund*innen die eine PLZ eingetragen haben automatisch das Bundesland ergänzen lassen?
Mir wurde bereits vom Ninox Team zugesichert, dass das geht, und dass ich am besten hier im Forum nachfrage wie am besten.
Vielen Dank im Vorraus
Beste Grüße
Lucas
17 Antworten
-
Hallo Lucas, ich habe dir mal eine CSV-Tabelle mit PLZ-Bereichen und zugeordneten Bundesländern angehängt, die du komplett in deine Datenbank importieren und dort umbenennen kannst (zumindest das ".csv" entfernen). Mit einem Änderungstrigger im Feld PLZ lässt sich dann automatisch das Bundesland (BL) zuweisen:
BL := if PLZ then let myPLZ := PLZ; first(select 'PLZ-Bereiche' where VonPLZ <= myPLZ and BisPLZ >= myPLZ).Bundesland else null end
-
Ach so, um die bereits vorhandenen Datensätze zuzuordnen, die eine PLZ, aber noch kein Bundesland enthalten, kannst du einfach irgendwo einen Button mit bspw. folgendem Code erstellen:
for i in select Kunden where not Bundesland do i.(Bundesland := if i.PLZ then first(select 'PLZ-Bereiche' where VonPLZ <= i.PLZ and BisPLZ >= i.PLZ).Bundesland else null end) end
-
Ich hab vor einiger Zeit mal folgenden Code bei mir eingebaut. Sollte das tun, was du brauchst:
let response := http("GET", "https://openplzapi.org/de/Localities?postalCode=" + PLZ); if response.error then "!!ERROR!!" else let data := parseJSON(text(response.result)); text(item(data, 0).federalState.name) end
...vielleicht kann da noch optimiert werden, aber grundsätzlich tut es das was es soll :-)
-
mega cool!
Danke schonmal für die beiden Antworten.könntet ihr ein bisschen vorher ansetzen und erklären wie ich das dann implementiere?
Ich mache sowas zum 1. mal.Ein Link zum nachlesen würde auch funktionieren.
-
Danke schonmal an alle für die ganzen Antworten!
Ich war bis heute krankgeschrieben und gucke jetzt mal ob ich das mit dem geschriebenen Umsetzen kann! :) -
Habs getestet und gehe jetzt den Weg mit der API von
Das ist zukunftssicherer.
Deine Anleitung war aber auch super.. die hat mir nämlich sehr dabei geholfen die andere Lösung umzusetzen!
-
said:
Und dann wenn das Aktualisierungsskript durch ist, kann ich ja den Button einfach wieder rausnehmen, weil es ja in Zukunft eh automatisch passiert, richtig?Genau, wobei ich mir den Button bzw. den Code irgendwo aufbewahren würde. Vielleicht braucht man ihn doch irgendwann noch mal. Oder etws ähnliches.
-
said:
Genau, wobei ich mir den Button bzw. den Code irgendwo aufbewahren würde. Vielleicht braucht man ihn doch irgendwann noch mal.Würde ich als versteckte Seite oder versteckte Tabelle anlegen, dann sieht das nur der Admin im Adminmodus. Die Rechte kann man bei Bedarf noch weiter auf Rollenenbene einschränken.
Content aside
- Status Answered
-
1
„Gefällt mir“ Klicks
- vor 12 TagenZuletzt aktiv
- 17Antworten
- 104Ansichten
-
4
Folge bereits