LazDaveso
DB-Anwendung um Auftragsgeberdaten zu verwalten und Rechnung zu erstellen.
- Active · last change 10-2-2026
README
Mein Projekt aus der Zeit als ich noch eine Druckerei unterhielt.
LazDaveso
Adressen Aufträge Rechnungen
Einleitung
LazDaveso ist eine DB-Client Anwendung für Linux und Windows.
Laz ist die Abkürzung für Lazarus, eine freie Free Pascal-Entwicklungsumgebung für die Programmiersprachen Pascal und Object Pascal.
DaVeSo ist ein Kunstwort aus einer Abkürzung von Daten Verarbeitung und Software.
Die Anwendung arbeitet mit dem Datenbankserver Firebird der über das Netzwerk erreichbarer sein muss.
Test und Entwicklungsumgebung ist Linux Mint 21.3 Cinnamon und im lokalen Netzwerk ein
Raspberry PI (Model B Rev 2, Raspbian GNU/Linux 12 'bookworm') auf dem Firebird 3.0 installiert ist.
Die Datenbank besteht aus sechs Tabellen und vier Ansichten. Die Tabelle "Mappe" ist der Ankerpunkt der Datenbankdefinition. Adresse und Auftrag sind mit ihr verknüpft.
Beschreibung der Anwendung
Zur Bearbeitung von Kundenaufträgen werden Kunden- und Auftragsdaten eingegeben. Für die Ausführung eines Auftrags sind Informationen wie Name und Adresse des Auftraggebers und eine Beschreibung des Auftrags erforderlich. Für einen Auftrag wird eine Mappe angelegt für die ein Kunde bereits in der Adresstabelle angelegt ist. In dieser Mappe werden ein oder mehrere Aufträge eingetragen. Die Tabelle "Adresse" beinhaltet die gebräuchlichsten Datenfelder um ausreichend genau den Kunden zu beschreiben. Die Vergabe einer Kundennummer ist vom Anwender durchzuführen da es keinerlei Automatismen oder Unterstützung von der Anwendung gibt. Selbst die Vergabe von bereits vergebenen Kundennummern werden nicht verhindert. Dadurch können auch diverse Kundennummern vergeben werden. Das heißt eine Kundennummer steht für eine ganze Gruppe von Kunden (Laufkundschaft).
Anwendungsstart
Die Anzeige "no connected…" bei Anwendungsstart zeigt an, das noch keine Daten für die Verbindung zum Datenbank-Server angelegt wurde.
Im Menü "Datei > Einrichten..." erhalten Sie einen Dialog zur Eingabe der notwendigen Parameter. Mit dem Button "Prüfen" versucht das Programm einen Kontakt zur Datenbank herzustellen. Gelingt dies, wird der Button "OK" freigegeben und Sie können mit der Arbeit beginnen. Bitte etwas Geduld, je nach Serverleistung und Netzwerkverbindung (LAN oder WLAN) kann es schon mal 20 Sekunden dauern.
Bei Anwendungsstart werden in der Liste „KUNDE“ die bereits angelegten Mappen angezeigt. Die Buchung der einzelnen Mappen führt dazu dass sie nicht mehr in der Liste angezeigt werden. Sie erscheinen dann nur noch in der Historie. Auf der rechten Seite werden die Adressdaten und die in der Mappe eingetragen Aufträge angezeigt, darunter die Historie der bereits in der Vergangenheit ausgeführten Aufträge gruppiert nach Mappen.
Mit den Reitern können Sie in die Adressansicht wechseln. Hier können Sie in der Adressliste stöbern und rechts werden nicht nur die Adress- und Kontaktdaten angezeigt sondern auch die Historie der bereits ausgeführten Aufträge.
Einordnung und Sortierung
Die Einordnung und Sortierung geschieht nach Kurzbezeichner und Kundennummer. Kurzbezeichner ist eine wichtige Eingabe und sollte wohl überlegt werden. Bei der Sortierung der Adressen wird zwar in erster Linie die Kundennummer verwendet aber gesucht wird im Feld Kurzbezeichner. Kurzbezeichner heißt aber nicht das es tatsächlich kurz sein muss. Das Feld ist 45 Zeichen lang und es kann mehrere Wörter aufnehmen, nach denen dann gesucht werden kann.
Laufkundschaft oder Stammkunden?
Die Kundennummer ist vergleichbar mit einem Debitorenkonto. Die Kundennummer besteht aus einer 5-stelligen Zahl. Der Anfangsbuchstabe vom Kundennamen ergeben die ersten zwei Zahlen, also "Albrecht" hat die 10..., "Baumann" die 11... und so weiter.
Die verbleibenden 3 Stellen werden dann nach Eingang durchnummeriert also der Erste die ..001 der Zweite 002 und so weiter.
Nur die ..998 hat eine Sonderstellung. Die ..998 repräsentiert die Kunden die nur einmal oder sehr selten bedient werden (Laufkundschaft). Das heißt aber das die z.B. 10998 auch mehrfach in der Kundenliste auftauchen kann. Diverse Kunden brauchen nur selten Dienstleistung, für sie sind die Kundennummern ..998 vorgesehen.
Für diese Logik gibt es noch keine Unterstürzung von der Anwendung. Sie müssen also beim neu Anlegen von Kunden Sorgfalt walten lassen. Da es datenbank-technisch keine Einschränkungen gibt können sie nachträglich auch Änderungen durchführen. Nur sollten Sie bedenken das bereits erstellte Rechnungen die in der Buchhaltung (Steuerberater) verarbeitet wurden nicht mehr geändert werden sollen.
📝 Auftrag anlegen
Durch einen Klick auf den Button erweitert sich die Eingabemaske für die Daten des Auftrags. Anzahl, Beschreibung, Zusatz und Preis. Rabatt und Bemerkung sind noch ohne weitere Verwendung. Mit den Navigations-Button können alle notwendigen Aktionen wie einfügen löschen bearbeiten und navigieren genutzt werden.
Mit dem Button "Fertig" wird die Bearbeitung der Aufragsliste beendet.
€ Mappe buchen
Um von der Mappe eine Rechnung zu erstellen muss sie erst gebucht werden. Das heißt der Datensatz erhält ein aktuelles Datum im Feld <gebucht_am> und eine eindeutige Rechnungsnummer. Danach wird sie nicht mehr in der Liste der Mappen aufgelistet, und der Druck-Dialog erscheint.
🖨️ Ausgabe der Rechnung
Für den Ausdruck der Rechnung gibt es folgende Möglichkeiten:
Rechnung auf Vordruckfür Vordrucke (A4 farbiger Druck mit dem Firmenlogo und den notwendigen Daten)Rechnung auf Blankopapierfür leerem Blatt (Firmenlogo und notwendige Daten werden mit gedruckt).- Außerdem gibt es die Möglichkeit Rechnungsduplikate
Für Buchhaltung drucken("Rechnungskopie" und "Rechnung für Buchhaltung") auf leere Blätter auszugeben
Über Ausgabe einer PDF-Datei wird eine Datei
die mit dem Standard-Betrachter(Acrobat, Firefox, Bildbetrachter – je nach Konfiguration des Betriebssystems) angezeigt und kann gespeichert werden.
Die Ausdrucke werden mit einem Report realisiert.
Die dafür notwendigen Report-Dateien müssen im Unterordner '/report' der Programmdatei platziert sein.
Diese können mit dem Report-Designer bearbeitet werden. Der Report muss individuell angepasst werden.
Installationshinweis für Linux-Anwender
(unter Windows ist es ähnlich)
Voraussätzung ist dass der Datenbank-Server Firebird im System installiert ist, entweder local oder im Netzwerk erreichtbaren Rechner.
Festlegen in welchen Dateipfad die Datenbankdatei abgelegt werden soll. Muss für Firebird mit Schreibrechten erreichbar sein!
Vorschlag (Eingabe im Teminal am Server):
Neuen Ordner im Home Verzeichnis anlegen
sudo mkdir /home/fbdatabaseSchreibrechte für Firebird vergeben
sudo chown -cR firebird:firebird /home/fbdatabaseAlias in der Datei databases.conf eintragen
sudo nano /etc/firebird/3.0/databases.conf# ------------------------------
# List of known databases
# ------------------------------
#
# Makes it possible to specify per-database configuration parameters.
# See the list of them and description on file firebird.conf.
# To place that parameters in this file add them in curly braces
# after ???alias = /path/to/database.fdb??? line. Example:
# big = /databases/bigdb.fdb
# {
# LockMemSize = 32M # We know that bigdb needs a lot of locks
# LockHashSlots = 19927 # and big enough hash table for them
# }
#
# Master security database specific setup.
# Do not remove it until you understand well what are you doing!
#
security.db = $(dir_secDb)/security3.fdb
{
RemoteAccess = false
DefaultDbCachePages = 50
}
#
# Live Databases:
#
lazdaveso = /home/fbdatabase/lazsaveso.fdb
