Home > Artikel > Ausgabe 9/2012 > Beispieldaten-Assistent

Beispieldaten-Assistent

  PDF ansehen

  Download PDF und Beispieldatenbank

Jeder Access-Entwickler steht irgendwann vor der Situation, mal eben einige Beispieldatensätze zu seiner Anwendung hinzuzufügen. Wer keine Lust auf Fantasie-Einträge wie ASDF oder QWER hat, die sich mal eben schnell mit wenigen Fingerbewegungen in ein Tabellenfeld einfügen lassen, kann dazu meinen Beispieldatenassistent verwenden. Dieser ist auf Adresstabellen spezialisiert, füllt aber auch andere Datenfelder. Dieser Artikel zeigt, wie Sie den Assistenten installieren und damit arbeiten.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank 1209_Beispieldaten.mdb und Beispieldaten-Assistent.mda.

Installation

Der Beispieldatenassistent ist ein Access-Add-In. Solche Datenbanken haben eine spezielle Dateiendung (.mda unter Access 2003 und älter und .accda unter Access 2007 und jünger).

Access bietet eine einfache Funktion, um solche Access-Add-Ins schnell und zuverlässig zu installieren und diese somit unter Access sofort verfügbar zu machen. Im vorliegenden Beispiel entpacken Sie einfach die Add-In-Datei in ein Verzeichnis Ihrer Wahl.

Starten Sie dann Access, öffnen Sie eine beliebige Datenbankdatei (etwa die Beispieldatenbank zu diesem Artikel) und wählen Sie dann abhängig von der Access-Versionen einen der folgenden Menü- beziehungsweise Ribbonbefehle aus, um zunächst den Add-In-Manager zu starten:

  • Access 2003 und älter: Wählen Sie den Menü­befehl Extras|Add-Ins|Add-In-Manager aus (siehe Bild 1).
  • Installieren eines Access-Add-Ins unter Access 2003

    Bild 1: Installieren eines Access-Add-Ins unter Access 2003

  • Access 2007: Klicken Sie auf den Ribbon-Eintrag Datenbanktools|Datenbanktools|Add-Ins|Add-In-Manager.
  • Access 2010: Betätigen Sie den Ribbon-Eintrag Datenbanktools|Add-Ins|Add-In-Manager.

Der Assistent sieht in allen Access-Versionen ähnlich aus, daher schauen wir uns hier nur den der aktuellen Version Access 2010 an. Dieser zeigt sich wie in Bild 2. Auf dem hier verwendeten Rechner wurden bereits einige Access-Add-Ins installiert. Für das markierte Add-In zeigt der Assistent einige Eigenschaften an. Ein noch nicht installiertes Access-Add-In wie etwa den Beispieldaten-Assistenten installieren Sie nun, indem Sie auf die Schaltfläche Neues hinzufügen klicken. Es erscheint ein Dateiauswahl-Dialog, der standardmäßig das Verzeichnis anzeigt, in dem sich die bereits installierten Access-Add-Ins befinden. Dieses können Sie sich merken, wenn Sie später neue Versionen über ein bestehendes Access-Add-In kopieren möchten – Sie brauchen dann nicht den Umweg über den Add-In-Manager zu nehmen. Beachten Sie jedoch, dass das Access-Add-In bereits einmal installiert worden sein muss, damit es funktioniert.

Der Add-In-Manager in Aktion

Bild 2: Der Add-In-Manager in Aktion

Navigieren Sie nun zu dem Verzeichnis, in dem sich die zu installierende Datei Beispieldaten-Assistent.mda befindet und klicken Sie auf die Schaltfläche Öffnen.

Danach erledigt der Add-In-Manager gleich eine ganze Reihe von Aufgaben – manche lassen sich direkt erkennen, andere verlaufen im Hintergrund:

  • Im Add-In-Manager erscheint ein neuer, mit einem x gekennzeichneter Eintrag namens Beispieldaten-Assistent (siehe Bild 3).
  • Ein frisch hinzugefügtes Access-Add-In

    Bild 3: Ein frisch hinzugefügtes Access-Add-In

  • Das Add-In wird nun in der Liste der verfügbaren Add-Ins aufgeführt. Unter Access 2003 etwa unter Extras|Add-Ins|Beispieldaten-Assistent, unter Access 2007 unter Datenbanktools|Datenbanktools|Add-Ins|Beispieldaten-Assistent und unter Access 2010 wie in Bild 4 zu erkennen unter Datenbanktools|Add-Ins|Beispieldaten-Assistent.
  • Aufruf des Add-Ins über die Liste der installierten Add-Ins

    Bild 4: Aufruf des Add-Ins über die Liste der installierten Add-Ins

  • Damit der Assistent so reibungslos funktioniert, erledigt der Add-In-Manager außerdem zwei Schritte im Hintergrund: Erstens wir die Add-In-Datei Beispieldaten-Assistent in das Add-In-Verzeichnis kopiert (im Falle von Windows 7 beispielsweise nach C:\Users\\AppData\Roaming\Microsoft\AddIns). Und zweitens legt der Assistent einige Einträge in der Registry an, die Access beim Starten ausliest. Dabei erfährt Access, welche Access-Add-Ins verfügbar sind und dementsprechend in der Liste der Add-Ins angeboten werden sollen.

Beispieldaten-Assistent einsetzen

Den Beispieldaten-Assistent starten Sie nun über einen Klick auf den entsprechenden Menü- beziehungsweise Ribbon-Eintrag. Der Assistent erscheint zunächst wie in Bild 5. Die wenigen Bedienelemente sind schnell erklärt: Mit dem Kombinationsfeld oben wählen Sie eine der Tabellen der Datenbank aus, beispielsweise tblKunden. Unmittelbar danach liest der Beispieldaten-Assistent die Felder dieser Tabelle ein, listet diese unter Tabellenfelder auf und versucht gleich, die richtige Konfiguration zum Füllen der einzelnen Felder der Tabelle zu ermitteln (siehe Bild 6).

Konfiguration für die Kundentabelle

Bild 5: Konfiguration für die Kundentabelle

Beispieldaten-Assistent gleich nach dem Aufruf

Bild 6: Beispieldaten-Assistent gleich nach dem Aufruf

Bei der Tabelle tblKunden gelingt dies sehr gut. Das liegt größtenteils daran, dass ich dieses Access-Add-In schon oft für diesen Zweck eingesetzt und entsprechende Anpassungen vorgenommen habe, damit ich möglichst wenige nachträgliche Einstellungen vornehmen muss.

Schauen wir uns die verschiedenen hier verwendeten Möglichkeiten an. Dort wird zum Beispiel für das Feld KundeID, das als Primärschlüsselfeld mit Autowert ausgelegt ist, gleich die Option Füllen deaktiviert. Der Grund ist einfach: Ein Autowertfeld wird automatisch gefüllt, der Assistent braucht sich nicht darum zu kümmern.

Für das Feld Firma wird automatisch der Wert Firma in der Spalte Datenart ausgewählt. Das bedeutet, dass der Assistent beim Anlegen der Daten direkt einen Firmennamen einträgt – bestehend etwa aus einem Namen und dem Zusatz GmbH, AG oder GbR.

Das Feld AnredeID wird als Datenart AnredeID erkannt. Dies bedeutet, dass der Assistent automatisch eine Tabelle namens tblAnreden mit den Feldern AnredeID und Anrede sucht und diese für die Parameter eins bis drei festlegt.

Eine solche Anrede wird entsprechend dem Geschlecht des für diesen Datensatz ermittelten Vornamens auf Herr oder Frau festgelegt.

Die folgenden Einträge in der Liste legen fest, dass die Felder Vorname, Nachname, Strasse, PLZ, Ort und Land mit entsprechenden Daten gefüllt werden.

Beispieldaten anlegen

Wenn Sie nun noch die Anzahl der zu erstellenden Datensätze angeben, brauchen Sie nur noch auf die Schaltfläche Beispieldaten schreiben zu klicken. Der Assistent schreibt dann, begleitet von der Ausgabe des Fortschritts, die gewünschten Datensätze in die Tabelle tblKunden. Das Ergebnis sieht beispielsweise wie in Bild 7 aus.

Mit dem Beispieldaten-Assistenten erstellt Kundendatensätze

Bild 7: Mit dem Beispieldaten-Assistenten erstellt Kundendatensätze

Verfügbare Datenarten und ihre Eigenschaften

Der Beispieldaten-Assistent bietet eine ganze Reihe Datenarten an, für die Sie keinen, einen, zwei oder drei Parameter festlegen können. Die Bedeutung der Parameter wird auch im Formular nach Auswahl der Datenart angezeigt.

Die Felder Vorname, Nachname, PLZ, Ort und Land sind selbsterklärend. Zum Land ist anzumerken, dass unabhängig vom gewählten Land in der aktuellen Version nur deutsche Adressdaten für Felder wie Straße, PLZ oder Ort verwendet werden.

Wenn Sie ein Nachschlagefeld namens AnredeID verwenden, legt der Assistent die oben erwähnte Datenart AnredeID an. Vielleicht geben Sie die Anrede aber auch in einem Textfeld an. Um dieses mit Werten wie Herr oder Frau zu füllen, wählen Sie als Datenart den Wert Anrede statt AnredeID aus.

Bei der Datenart Straße gibt es zwei Parameter, mit denen Sie den kleinsten und den größten zu verwendenden Wert für die Hausnummer auswählen.

Sollte Ihre Tabelle Fremdschlüsselfelder zur Angabe der Primärschlüsselwerte verknüpfter Tabellen enthalten, wählen Sie dafür die Datenart Fremdschlüsselfeld/Lookuptabelle aus. Dort geben Sie als ersten Parameter den Namen der verknüpften Tabelle und als zweiten den Namen des Primärschlüsselfeldes dieser Tabelle an. Der Assistent füllt das Fremdschlüsselfeld dann mit zufällig ausgewählten Werten der angegebenen Tabelle. Ein Beispiel wäre eine Tabelle namens tblProjekte, die ein Fremdschlüsselfeld namens KundeID zur Auswahl des Kunden für dieses Projekt enthält. Vorausgesetzt, die Tabelle tblKunden enthält bereits einige Datensätze, können Sie die Tabelle tblProjekte dann etwa mit der Konfiguration wie in Bild 8 füllen. Um diese Konfiguration herzustellen, müssen Sie kaum etwas tun. Der Assistent erkennt automatisch, dass es sich beim Feld KundeID um ein Fremdschlüsselfeld handelt. Wenn Sie dieses als Nachschlagefeld eingerichtet haben, kann der Assistent sogar die Quelltabelle und das Primärschlüsselfeld bestimmen und eintragen.

Konfiguration für eine Tabelle mit Fremdschlüsselfeld

Bild 8: Konfiguration für eine Tabelle mit Fremdschlüsselfeld

Lediglich für das Feld Projektbezeichnung müssen Sie Hand anlegen. Da dieses Feld je nach Branche beliebige Werte annehmen könnte, hält der Assistent natürlich keine passenden Werte vor. Stattdessen begnügen wir uns im Falle solcher Felder mit Werten wie Projekt 1, Projekt 2 und so weiter. Dies ist schnell definiert, indem Sie als Datenart den Wert Nummerierte Texte einstellen. Der erste Parameter enthält dann den Text (hier Projekt) und einen Platzhalter für eine laufende Nummer. Die Startzahl für diese Nummer tragen Sie für den zweiten Parameter ein.

Wenn Sie Zahlen für ein Feld benötigen, wählen Sie die Datenart Zahlen und geben für den ersten und zweiten Parameter die kleinste und die größte und für den dritten Parameter die Anzahl der Nachkommastellen an.

Bei Datumsangaben sieht es ähnlich aus: Wählen Sie als Datenart den Eintrag Datum und legen Sie mit dem ersten und dem zweiten Parameter das kleinste und das größte zu verwendende Datum fest. Der Assistent wählt dann nach dem Zufallsprinzip entsprechende Datumsangaben aus.

Wenn Sie die Datenart Ausdruck wählen, können Sie Platzhalter wie [Anrede], [Vorname], [Nachname], [Strasse], [PLZ] und [Ort] verwenden, um mehrere Werte zu einem Ausdruck zusammenzuführen. Hier sind aber tatsächlich nur die sechs genannten Ausdrücke erlaubt. Diese Möglichkeit dient dazu, beispielsweise ein Feld namens Kundenbezeichnung mit einem Wert nach dem Schema [Nachname], [Vorname] zu füllen. Oder Sie füllen damit ein einziges (allerdings nicht normalisiertes) Feld, das gleichzeitig die PLZ und den Ort enthält.

Mapping anpassen

Wenn Sie wie ich öfters die gleichen Feldnamen in den verschiedenen Tabellen verwenden, können Sie den Beispieldatenassistent so anpassen, dass er beim Auftauchen entsprechender Feldnamen gleich die von Ihnen gewünschten Datenarten und Parameter einsetze.

Angenommen, Sie möchten ein Feld namens Projektbezeichnung immer mit der Datenart Nummerierte Texte, dem ersten Parameter Projekt [] und dem zweiten Parameter 1 ausstattet, können Sie dies ganz einfach erledigen.

Klicken Sie dazu zunächst auf die Schaltfläche Mapping bearbeiten. Dies öffnet den Dialog Datentyp-Mapping aus Bild 9.

Einstellen des Mappings für die automatische Erkennung der einzutragenden Daten auf Basis des Feldnamens.

Bild 9: Einstellen des Mappings für die automatische Erkennung der einzutragenden Daten auf Basis des Feldnamens.

Hier tragen Sie nun in einem neuen Datensatz in der linken Spalte den Namen des Feldes ein, bei dem die nachfolgend angegebene Datenart eingesetzt werden soll – hier also Projektbezeichnung. In der zweiten Spalte mit der Überschrift Datenart wählen Sie die gewünschte Datenart aus, also Nummerierte Texte. Für den ersten und zweiten Parameter geben Sie nun noch Projekt [] und 1 an. Das bedeutet, dass eine entsprechende Anzahl Projektdatensätze mit den Bezeichnungen Projekt 1, Projekt 2 und so weiter angelegt werden. Das dies auch funktioniert, zeigt Bild 10.

Automatisch angelegter Datentyp nach durchgeführtem Mapping

Bild 10: Automatisch angelegter Datentyp nach durchgeführtem Mapping

Anlegen von Daten in mehreren Tabellen

Der Beispieldaten-Assistent sieht aktuell nicht vor, dass Sie eine ganze Reihe von Tabellen und die entsprechenden Anzahlen zu erzeugender Datensätze und Datenarten festlegen.

Sollten Sie also mehrere miteinander verknüpfte Datenbanken mit Daten füllen wollen, müssen Sie sich vorher kurz die Beziehungen zwischen diesen Tabellen vor Augen führen und die Reihenfolge für das Füllen der Tabellen festlegen. Wenn Sie beispielsweise die Tabellen der Nordwind-Datenbank füllen möchten, würden Sie sich zunächst die Tabellen vornehmen, die keine Fremdschlüsselfelder enthalten – also tblPersonal, tblKunden, tblLieferanten und tblKategorien.

Danach folgt dann die Tabelle Artikel, die ja Fremdschlüsselfelder zur Auswahl von Daten aus den Tabellen tblKategorien und tblLieferanten enthält. Die Tabelle Bestellungen enthält einen Verweis auf die Tabelle tblKunden. Die Tabelle tblBestelldetails schließlich wird zuletzt mit Daten gefüllt, denn diese ist mit den Tabellen tblArtikel und tblBestellungen verknüpft.

Zusammenfassung und Ausblick

Mit diesem Tool können Sie Beispieldaten für viele Tabellen einfach anlegen lassen. Hier und da muss man improvisieren, weil der Assistent etwa keine Projektnamen oder andere Bezeichnungen vorhalten kann.

Sie sparen mit diesem Assistenten aber auf jeden Fall eine Menge Arbeit – zumindest, wenn Sie die Daten sonst manuell hätten anlegen müssen. Ein paar hundert Adressdatensätze etwa sind in wenigen Sekunden erstellt.