Bereits beim letzten Stammtisch demonstrierte Marcus Diederich seinen Ansatz, mit Hilfe von ChatGPT und dem bzPython Modul von beezwax eigene Python Scripte zu erstellen. Diesmal gab es ein kurzes Update dazu mit weiteren Ergebnissen.

Marcus hat ChatGPT genutzt, um die Aufgabenstellung zur Ermittlung der Arbeitstage und Feiertage in einem beliebigen Zeitraum in Python neu zu implementieren (siehe “Working Days Demo” vom November Stammtisch).

Zunächst stieß er dabei auf die Python Library “holidays” welche in der Lage ist, für alle Länder, Bundesländer und Gebiete, die gesetzlichen Feiertage zu ermitteln. In weiteren Schritten konnte er die Ausgabe so anpassen und erweitern, dass die ermittelten Daten genau in dem Ausgabeformat erzeugt werden, wie seine existierende Lösung sie verwendet. Um das Potential voll auszuschöpfen setze er erfolgreich auch noch eine Ausgabe als CSV oder in eine SQLite Datenbank um. ChatGPT lieferte ihm dazu jeweils die erforderlichen Python Kommandos und die benötigten Library Packages.

Das Besondere an dieser Lösung ist, dass die Daten ausschließlich lokal berechnet werden. Ein Online-Zugriff auf die WorkingDays-API ist also nicht mehr erforderlich. Das angepasst Beispiel berechnet die Feiertage für Baden-Württemberg. Laut Aussage von Marcus kommen exakt die gleichen Ergebnisse dabei heraus, wie bei Verwendung der WorkingDays-API.

Fazit: Obwohl Marcus vorher noch keine einzige Zeile Python erstellt hat, konnte er mit Hilfe von ChatGPT ein lauffähiges Python-Script entwickeln, das direkt in seiner FileMaker Lösung eine komplexe Funktion bereit stellt. Wirklich beeindruckend.

Python library: holidays 0.42
https://pypi.org/project/holidays/

beezwax: bBox Plugin
https://www.beezwax.net/products/bbox