Flexible Bestellverwaltung: Datenmodell
Die üblichen Beispiele zum Thema Bestellverwaltung gehen vereinfachend davon aus, dass immer alle Artikel vorhanden sind und dementsprechend auch in Rechnung gestellt werden können. In der Realität sieht dies anders aus: Natürlich ist nicht immer gewährleistet, dass alle angebotenen Artikel auch verfügbar sind. In diesem Fall lassen sich Lieferungen und Rechnungen nur schwer organisieren. Also kümmern wir uns nochmals um die entsprechenden Tabellen, Formulare und natürlich auch um die Berichte.
Standardwerte aus Lookup-Tabellen
Es gibt eine Reihe von Beispielen für den Einsatz von Lookup-Tabellen – die einfachste ist wohl die Tabelle zum Speichern von Anreden. In einigen Fällen soll eines der enthaltenen Elemente standardmäßig verwendet werden. Dann gilt es, dieses Standardelement entsprechend zu deklarieren. Wie so oft gibt es unter Access verschiedene Möglichkeiten, dies zu realisieren – und es gibt verschiedene Schwierigkeitsgrade. Dieser Beitrag zeigt einige Varianten auf.
m:n-Daten in einer Zeile anzeigen
Für Daten mit einer m:n-Beziehung gibt es einige Beispiele: Fahrzeuge und ihre Ausstattungsmerkmale, Artikel und Kategorien, Mitarbeiter und Positionen et cetera. Üblicherweise stellt man diese mit mehreren Steuerelementen dar – etwa die Fahrzeuge im Hauptformular und die Ausstattung im Unterformular. Oder die Mitarbeiter landen im Hauptformular und zwei Listenfelder zeigen die zugeordneten und die nicht zugeordneten Abteilungen an. Was aber, wenn die Daten gar nicht bearbeitet, sondern nur angezeigt werden sollen – und dies möglichst noch in einer einzigen Zeile? Dann hilft die Lösung aus diesem Beitrag weiter.
Flexible Bestellungen: Formulare
Die flexible Handhabung von Bestellungen, Lieferungen und Rechnungen basiert auf einem ausgefeilten Datenmodell. Genauso wichtig ist die Bereitstellung einer Benutzeroberfläche, die alle Möglichkeiten des Datenmodells ausschöpft. In diesem Beitrag lernen Sie die Formulare kennen, die das Aufnehmen von Bestellungen nach Kunde und Kostenstelle, die Erfassung von Lieferungen und die flexible Erstellung von Rechnungen erlauben.
Funktionen aus anderen Datenbanken
Manche Funktionen benötigen Sie nicht nur in einer, sondern in mehreren Datenbanken. Sie können die Funktion dann in die jeweiligen Datenbanken kopieren und dort nutzen. Dies bringt allerdings einigen Mehraufwand bei der Pflege der Funktion mit sich: Wenn Sie etwa einen Fehler beheben, müssen Sie dies gleich für mehrere Datenbanken erledigen. Beim zentralen Speichern der Funktion in einer einzigen Datenbankdatei brauchen Sie Änderungen nur an einer einzigen Stelle durchzuführen. Und es gibt noch weitere Vorteile und Anwendungszwecke – mehr dazu im vorliegenden Beitrag.
VBA-Textexport unter Access 2007 und jünger
Normalerweise ist das Exportieren von Tabellen oder Abfragen als Text- oder CSV-Datei kein Problem – Sie nutzen entweder den Assistenten dazu oder verwenden die Methode TransferText des DoCmd-Objekts. Dummerweise führt dies, auch wenn es in Anwendungen bis Access 2003 funktionierte, unter neueren Versionen von Access zu einem Fehler. Warum dies geschieht und wie Sie TransferText weiter nutzen können, erläutert dieser Beitrag.
Alle Datenbanken einlesen und anzeigen
Für den einen oder anderen Anwendungsfall bentöigen Sie einen Datei öffnen-Dialog, um eine Datenbank auszuwählen. Diese Dialog hat den Nachteil, dass er selten direkt die gewünschte Datenbank geschweige denn das Verzeichnis anzeigt. Wie wäre es also mit einem speziellen Dialog, der nur die Verzeichnisse einliest, die überhaupt Datenbankdateien enthalten und diese in einem TreeView-Steuerelement zur Auswahl bereithält?
Abonnements verwalten, Teil 3
Die ersten beiden Teile dieser Beitragsreihe haben uns Formulare zum Verwalten von Produkten, Abonnements und Kunden sowie Funktionen zum Anlegen, Verlängern, Kündigen und Stornieren der Abonnements beschert. Fehlt nur noch eine wichtige Funktion: der Versand der jeweiligen Ausgaben beziehungsweise die Lieferung der Empfängerlisten.