Samstag, 2. September 2023

Gambas Programm: Essensbestellung

Heute will ich euch mal ein Programm von mir vorstellen, welches ich ebenfalls mit der Programmiersprache Gambas entwickelt habe. Es nennt sich Essensbestellung und diente eigentlich dazu beim Metzger um die Ecke am Freitag die Brotzeit für unsere Halle zu organisieren. 

Da wir freitags nur bis 12 Uhr arbeiten und 9:00 bis 9:15 Uhr Frühstück ist, so wurde es bisher so gehandhabt, das ein Lehrling mit Zettel und Stift durch die Maschinenhalle streifte und aufschrieb, wer, was zur Brotzeit möchte. Ab acht Uhr wurde das Ganze eingescannt, dann an den Metzger per E-Mail gesandt und vorher telefonisch bei ihm bekannt gegeben. Später, kurz vor 9, wurde das "Fr...paket" dann abgeholt. Soweit, so gut. 

Leider passierte es öfters, dass das eine oder andere Produkt falsch, zu wenig, oder gar nicht dabei war, was immer für Ärger unter den Mitarbeitern führte. So dachte ich mir, ein Programm wäre doch nicht schlecht, da so vielleicht alles viel leserlicher in einer Liste aufgeführt wäre und so eventuell die "Fehler" bei den Bestellungen vermieden werden könnten. So begann ich mit der Programmerstellung und die erste Version war im September 2021 fertig.

Natürlich zeigten sich ein paar Fehler im Programm und längst waren auch nicht alle Produkte enthalten. Es tauchte später ein zweites Papier auf, wo auch die Kleinigkeiten, wie z.B. Brezn, Semmeln, Wurstsalat usw., aufgelistet waren. Also schrieb ich weiter und nahm auch diese Dinge auf.

Nach dem ersten Praxiseinsatz stellte sich die Bedienung als noch etwas umständlich heraus. Die Tabulatorsprünge waren nicht ganz korrekt und man musste viel hin und her klicken. Auf einem Touchpad eines alten Laptop ist das nicht ganz so bequem wie mit einer extra Maus. Auch fehlte noch eine optische Markierung, wer schon bezahlt hatte und wer nicht. 

Das alles hatte ich später noch nachgeliefert und im zweiten Praxistest sollte sich das Programm nun beweisen. Die Bestellung und Übermittlung funktionierten einwandfrei, doch leider ist der Metzger (und dessen Mitarbeiter) manchmal heillos überfordert mit den ganzen Essensbestellungen. Deshalb fehlte auch diesmal ein Produkt. Meine Hoffnung, eine Liste in wirklich lesbarer Schrift würden helfen die Fehlbestellungen zu minimieren, löste sich in Luft auf.

Es kamen plötzliche Preisänderungen dazu und diese mussten alle von mir händisch in's Programm eingepflegt werden. Aber kein Ding, ein Wochenende danach waren die Preise korrigiert. Und später ...

Später, also seit diesem Jahr 2023, hat unsere Firma sich eine App zugelegt, mit der nun jeder Mitarbeiter damit bestellen kann. Natürlich nicht die ganze Palette, aber ein bestimmtes Angebot vom Metzger. Und überraschender Weise funktionierte das Ganze ziemlich gut, zumindest die ersten paar Monate. Bis ...

Bis es eben nicht mehr so gut klappte. Wieder Fehllieferungen, verschwundene Essen, kaltes Essen und zu guter Letzt noch eine massive Preissteigerung, die dem Ganzen den Rest gaben. Schade, aber Tag heute ist der Nutzen der App massiv zurückgegangen. 

Aber nun zurück zum Programm. Hier ein paar Screenshots dessen. Das Programmfenster zeigt sich mit zwei Buttons, aktuellem Datum und den Firmenlogos (diese habe ich natürlich unkenntlich gemacht). Mit einem Doppelklick auf das obere Logo bekommt man ein verstecktes Einstellungsmenü, in welchem man die E-Mail Adresse des Empfänger und die Betreff und Text Zeile der E-Mail angeben kann, damit dies alles voreingestellt ausgefüllt wird. Beim Versenden öffnet sich nämlich das Standard Mailprogramm Thunderbird, mit eben diesen Voreinstellungen und der angehängten PDF Bestellübersicht.

Hauptfenster

 
Eigentlich ist es total einfach gehalten. Mit einem Klick auf das Produkt wird es ausgewählt, mit jedem weiteren Klick kann man die Anzahl erhöhen und mit Rechtsklick wieder reduzieren. Im Feld Menü und Preis kann man mit dem Klick auf das Plus ein weiteres Produkt auswählen, z.B. wenn man zwei Semmeln noch dazu möchte. Bei den Produkten mit Beilage wurde automatisch ein a, b oder c - je nach gewählter Beilage dazu geschrieben. Die Beilagenmenüs waren laut Preisliste nummeriert. Sieht man in der Übersicht 7a, so ist dies Krustenbraten mit Kartoffelsalat. Die Preisliste des Metzgers ist über einen Button als PDF hinterlegt. Die Produktpreise sind aber auch als Tool-tip angegeben.

Bestellauswahl


Die Bestell-Liste und die Möglichkeit die Daten nochmals manuell vor dem Versenden zu bearbeiten ist hier möglich. Es ist nur auf die richtige Schreibweise zu achten. Beim Betrag muss man strikt den . statt des , verwenden, soll es fehlerfrei funktionieren. Jedenfalls kann man so noch manuell z.B. eine Person hinzufügen, die vielleicht gar keine Personalnummer hat (Fremdarbeiter, Leiharbeiter, Sonstige). Es ist möglich die Bestellübersicht auszudrucken, oder man wählt hier Drucken in PDF und versenden. Dann wird quasi in ein PDF gedruckt und Thunderbird öffnet sich mit den oben konfigurierten Daten einer neuen E-Mail, so dass man eigentlich nur noch auf den Versenden-Button klicken muss.   

Bestellübersicht  

 

Die erstellte PDF Datei sieht so aus. Es wird automatisch das aktuelle Datum eingetragen und natürlich wird der Gesamtpreis entsprechend berechnet und angegeben. Etwaige Zuschüsse, die von unserer Firma gewährt werden, wurden bei der Berechnung schon in der Bestellauswahl berücksichtigt. Die Schriftgröße orientiert sich an der Systemeinstellung von Linux, deshalb wirkt dies hier vielleicht etwas klein. Vorgabe ist eben 1 bzw. Größe 10. Jedenfalls ist die Liste deutlich lesbarer als die mit Hand geschriebenen, kopierten Schmierzettel.

PDF-Dokument

Wie ich ja bereits erwähnte, geht es heute mit einer App und meine Anwendung ist so überflüssig geworden. Auch haben wir sie nur 2, 3 mal benutzt. Dennoch war dies eine gute Programmierübung für mich. Ich habe das erste mal mit der DrawArea, dem GridView und anderen Dingen unter Gambas zu tun gehabt. Thunderbird E-Mail's über das Terminal zu konfigurieren war auch nicht so leicht raus zu finden. Jedenfalls hat es Spaß gemacht mit Gambas dieses kleine Programm zu verwirklichen und die nächste Anwendung befindet sich ebenfalls schon in Arbeit. 

Also, bis dahin. Einen schönen Tag noch allen Lesern meines Blog's.

Keine Kommentare:

Kommentar veröffentlichen

Vielen Dank für Ihren Kommentar. Die Veröffentlichung erfolgt umgehend nach meiner Prüfung. Ich bitte um etwas Geduld. MfG Mintnix