06.11.2013 Aufrufe

Access 2003 Professional 5 Zugriffsrechte verwalten 5.1 Das ...

Access 2003 Professional 5 Zugriffsrechte verwalten 5.1 Das ...

Access 2003 Professional 5 Zugriffsrechte verwalten 5.1 Das ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Access</strong> <strong>2003</strong> <strong>Professional</strong><br />

5 <strong>Zugriffsrechte</strong> <strong>verwalten</strong><br />

<strong>Access</strong> lässt sich sowohl als persönlicher Datenmanager, als auch für die gemeinsame Nutzung in<br />

Arbeitsgruppen einsetzen. Sind die Nutzerzahl und der Umfang der Datenbank nicht zu groß, so<br />

kann <strong>Access</strong> auch problemlos im Netz betrieben und von vielen Benutzern gleichzeitig verwendet<br />

werden.<br />

Reicht es bei einer Desktop-Datenbank in der Regel aus, die Datenbank mit einem<br />

Besitzerkennwort zu versehen, so können die Anforderungen in einer Mehrbenutzerumgebung<br />

deutlich komplexer sein. Die Anforderung lautet hier oft, den Anwendern unterschiedliche<br />

Berechtigungen zu geben.<br />

Häufig sind z. B. bestimmte Benutzer bzw. Benutzergruppen für die Pflege der Daten<br />

verantwortlich, während andere sich ausschließlich um die Auswertungen bzw. die<br />

Berichtserstellung kümmern. In <strong>Access</strong> ist es möglich, der ersten Gruppe die vollständigen Rechte<br />

für das Anlegen, Ändern und Löschen von Datensätzen zu geben, während die zweite Gruppe auf<br />

das Lesen der Daten eingeschränkt wäre.<br />

In den nächsten Abschnitten lernen Sie die Konzepte und Einsatzmöglichkeiten des <strong>Access</strong>-<br />

Berechtigungssystems genau kennen. Sie bauen anhand von Beispielen für die Stadtlupe-Datenbank<br />

ein passendes Berechtigungsschema auf.<br />

<strong>5.1</strong> <strong>Das</strong> Berechtigungssystem einsetzen<br />

Einen einfachen Schutz einer persönlichen <strong>Access</strong> Datenbank erzielen Sie durch die Vergabe eines<br />

Datenbankkennwortes. Sie finden diese Möglichkeit unter Extras/Sicherheit/Datenbankkennwort<br />

festlegen.<br />

Natürlich ist dieses Verfahren nicht für größere Benutzergruppen und die Einrichtung eines<br />

abgestuften Berechtigungssystems geeignet. Im folgenden Beispiel aktivieren Sie daher das <strong>Access</strong><br />

Schutzsystem. Die Besonderheit hierbei ist: Ist das Berechtigungssystem einmal aktiviert, so<br />

werden Sie unabhängig von der verwendeten Datenbank bei jedem Start von <strong>Access</strong> nach einem<br />

Anmeldenamen und einem Kennwort gefragt. <strong>Das</strong> System funktioniert also datenbankübergreifend!<br />

<strong>5.1</strong>.1 Beispiel 70: <strong>Das</strong> Berechtigungssystem aktivieren<br />

1. Öffnen Sie die Datenbank 070_083Stadtlupe.mdb.<br />

2. Wählen Sie unter Extras/Sicherheit den Befehl Benutzer- und Gruppenkonten aus.<br />

3. Wechseln Sie in das Register Anmeldungskennwort ändern.<br />

4. Als Benutzername ist Administrator vorgegeben. Dies ist der Standardnutzer in einem<br />

ungeschützten <strong>Access</strong>-System. Der <strong>Access</strong>-Administrator kann das <strong>Access</strong>-System<br />

vollständig <strong>verwalten</strong>. Er ist der Superuser des Systems mit uneingeschränkten Befugnissen.<br />

Im oberen Feld könnten Sie jetzt das alte Kennwort eintragen, wenn es eines gäbe.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 1 / 77


Abb 302 Hier ändern Sie das Anmeldungskennwort.<br />

5. Geben Sie als Neues Kennwort sesam ein.<br />

6. Wiederholen Sie diesen Eintrag unter Bestätigen. Achten Sie dabei auf die exakte<br />

Schreibweise sowie darauf, dass Caps Lock (Grosschreibfunktion auf der Tastatur)<br />

ausgeschaltet ist.<br />

7. Beenden Sie nach OK MS <strong>Access</strong>.<br />

<strong>5.1</strong>.2 Beispiel 71: Eine mit einem Kennwortschutz versehene<br />

Datenbank öffnen<br />

1. Starten Sie MS <strong>Access</strong>.<br />

2. Öffnen Sie die Datenbank 070_083Stadtlupe.mdb.<br />

3. Geben Sie als Name Administrator und als Kennwort sesam ein.<br />

4. Mit OK gelangen Sie in die Datenbank.<br />

Abb 303<br />

Obwohl Sie das Kennwort für den Administrator in der Datenbank Stadtlupe vergeben<br />

haben, gilt die Anmeldung ab jetzt für alle <strong>Access</strong>-Datenbanken auf Ihrem Rechner. Diese<br />

gehören zu einem gemeinsamen <strong>Access</strong>-Schutzsystem.<br />

Sie können sich auch mit dem Benutzernamen Admin an Ihrem <strong>Access</strong> System anmelden.<br />

Dieser ist ein Synonym für Administrator.<br />

<strong>5.1</strong>.3 Beispiel 72: Benutzerkonten einrichten<br />

1. Öffnen Sie in der Datenbank 070_083Stadtlupe.mdb über Extras/Sicherheit die Benutzerund<br />

Gruppenkonten.<br />

2. Die Schaltfläche Neu ermöglicht Ihnen die Eingabe eines neuen Benutzers. Geben Sie als<br />

Namen des Benutzers NinaJ an. Der Benutzername muss innerhalb einer <strong>Access</strong><br />

Arbeitsgruppe eindeutig sein.<br />

3. Zusätzlich müssen Sie eine Persönliche ID (PID) vergeben. <strong>Access</strong> verwendet die<br />

Kombination aus Namen und ID, um den Benutzern Berechtigungen zuzuweisen. Vergeben<br />

Sie als PID 0001.<br />

4. Legen Sie nun in der gleichen Art und Weise die folgenden Konten mit den entsprechenden<br />

Namen und Persönlichen IDs an: HorstL (0002), BorisZ (0003) und KlausT (0004).<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 2 / 77


Abb 304 Ein neuer Benutzer wird angelegt<br />

5. Drucken Sie über die Schaltfläche Benutzer und Gruppen drucken die Benutzerkonten aus.<br />

Sie sollten die beim Anlegen eines Benutzers vergebene PID unbedingt notieren bzw.<br />

ausdrucken, da diese z. B. bei der Reaktivierung eines versehentlich gelöschten<br />

Benutzerkontos unbedingt vorhanden sein muss.<br />

Abb 305<br />

Die persönliche ID oder PID ist ein bis zu 20 Zeichen langer Text, der von <strong>Access</strong> intern verwendet<br />

wird, um den eigentlichen (für uns unsichtbaren) Zugriffsschlüssel zu generieren. Da es keine<br />

Möglichkeit gibt, nach dem Anlegen eines neuen Kontos diese PID noch einmal sichtbar zu<br />

machen, sollten sie den Hinweis aus dem Beispiel ernst nehmen und die IDs Ihrer Nutzer notieren.<br />

Zur einfacheren Verwaltung der eigentlichen Benutzerberechtigungen können Sie in <strong>Access</strong> Konten<br />

zu Benutzergruppen zusammenfassen. Die in einem Konto zusammengefassten Benutzer erhalten<br />

dann bei der Vergabe der Rechte durch eine einzige Zuweisung identische <strong>Zugriffsrechte</strong> in Bezug<br />

auf Datenbankobjekte.<br />

Im folgenden Beispiel richten Sie zwei Gruppen ein. In diesen sollen Benutzer aus der Anzeigenund<br />

Vertriebsabteilung der Stadtlupe verwaltet werden. Für diese beiden Gruppen werden in den<br />

weiteren Beispielen dieses Kapitels unterschiedliche Berechtigungen eingerichtet.<br />

<strong>5.1</strong>.4 Beispiel 73: Benutzergruppen anlegen<br />

1. Die Datenbank 070_083Stadtlupe.mdb ist geöffnet.<br />

2. Starten Sie die Gruppenverwaltung über den Befehl Extras/Sicherheit/Benutzer und<br />

Gruppenkonten . Wechseln Sie in das Register Gruppen.<br />

3. Legen Sie durch Anklicken der Schaltfläche Neu die neue Gruppe Anzeigen an. Vergeben<br />

Sie die Persönliche ID 0001.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 3 / 77


Abb 306 Eine neue Benutzergruppe wird angelegt.<br />

4. Legen Sie entsprechend die Gruppe Vertrieb mit der Persönlichen ID 0002 an.<br />

5. Sie möchten den neuen Gruppen jetzt vorhandene Benutzer zuzuordnen. Wechseln Sie dazu<br />

in das Register Benutzer.<br />

6. In der Liste der Verfügbaren Gruppen finden Sie neben den soeben neu angelegten Gruppen<br />

die Standardgruppen Administratoren und Benutzer.<br />

7. Klicken Sie auf den kleinen Pfeil neben dem Feld Name und wählen Sie aus der Liste der<br />

Benutzer den Namen NinaJ aus.<br />

8. Markieren Sie Anzeigen in der Liste der Verfügbaren Gruppen und klicken Sie auf die<br />

Schaltfläche Hinzufügen.<br />

9. Damit ist NinaJ Mitglied dieser Gruppe.<br />

hinzugefügt.<br />

Abb 307 Der neuen Benutzergruppe werden Benutzer<br />

10. Fahren Sie auf diese Art und Weise fort, die Konten in Gruppen einzutragen. HorstL soll<br />

ebenfalls den Anzeigen zugewiesen werden. BorisZ und KlausT gehören in die Gruppe<br />

Vertrieb. KlausT soll darüber hinaus zusätzlich in die Gruppe Anzeigen eingetragen werden.<br />

11. Schließen Sie nach OK die Datenbank Stadtlupe und beenden Sie <strong>Access</strong>.<br />

<strong>Das</strong> folgende Beispiel demonstriert, wie Sie sich an einem geschützten <strong>Access</strong>-System als Benutzer<br />

anmelden und Ihr eigenes Kennwort ändern.<br />

<strong>5.1</strong>.5 Beispiel 74: An geschütztem System anmelden und<br />

Kennwort ändern<br />

1. Starten Sie MS <strong>Access</strong> erneut. Öffnen Sie die Datenbank 070_083Stadtlupe.mdb.<br />

2. <strong>Das</strong> Anmeldefenster erscheint. Geben Sie den Namen des von Ihnen im Beispiel 73<br />

angelegten Benutzers KlausT an und lassen Sie das Feld Kennwort leer.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 4 / 77


Abb 308<br />

3. Nach OK sind Sie als Benutzer KlausT in der Datenbank Stadtlupe angemeldet. Sie<br />

verfügen jetzt über die Berechtigungen genau dieses Benutzerkontos.<br />

4. Um das Kennwort des Kontos zu ändern, wählen Sie jetzt aus dem Menü Extras/Sicherheit<br />

die Benutzer- und Gruppenkonten. Wechseln Sie in das Register Anmeldungskennwort<br />

ändern und geben Sie als Neues Kennwort für KlausT Klaus1 ein.<br />

5. Geben Sie dieses zur Bestätigung nochmals ein. OK.<br />

Abb 309<br />

6. Schließen Sie die Datenbank Stadtlupe und beenden Sie MS <strong>Access</strong> vollständig.<br />

Sie haben im letzten Beispiel gesehen, dass der „normale“ Benutzer KlausT im Gegensatz zum<br />

Administrator kein Kennwort eingeben musste. Als Administrator haben Sie leider keine<br />

Möglichkeit, die Anmeldekennwörter Ihrer Benutzer beim Anlegen der Konten zu vergeben.<br />

Behalten Sie das im Hinterkopf und melden Sie sich notfalls unter einem Konto an, um ein<br />

Startkennwort einzurichten. Darüber hinaus sind in der Stadtlupe-Datenbank bis jetzt noch keine<br />

expliziten Rechte vergeben worden. So lange erhält jeder Nutzer des Systems den vollen Umfang<br />

der Berechtigungen.<br />

In einem weiteren Arbeitsschritt müssen jetzt Berechtigungen an die neu angelegten Gruppen<br />

vergeben werden.<br />

Im nächsten Beispiel wird dieses anhand der Tabelle Hefte näher erläutert.<br />

<strong>5.1</strong>.6 Beispiel 75: Berechtigungen vergeben<br />

1. Starten Sie <strong>Access</strong> erneut und öffnen Sie die Datenbank 070_083Stadtlupe.mdb.<br />

2. Melden Sie sich als Administrator unter dem Kennwort sesam an.<br />

3. Wählen Sie den Menüpunkt Extras/Sicherheit/Benutzer- und Gruppenberechtigungen.<br />

4. Wechseln Sie in das Register Berechtigungen .<br />

5. Lassen Sie sich die Liste aller Gruppen anzeigen, indem Sie das Kontrollkästchen vor<br />

Gruppen aktivieren.<br />

6. Markieren Sie die Gruppe Benutzer.<br />

7. Wählen Sie als Objekttyp Tabelle aus. Unter Objektname werden jetzt alle Tabellen der<br />

Datenbank Stadtlupe aufgeführt.<br />

8. Markieren Sie in dieser Liste die Tabelle Hefte.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 5 / 77


Abb 310<br />

9. Entfernen Sie unter Berechtigungen sämtliche Häkchen in den Kontrollkästchen.<br />

Übernehmen Sie die Änderungen. Die Gruppe der Benutzer hat jetzt kein Recht mehr, die<br />

Tabelle Hefte zu bearbeiten.<br />

10. Die Mitglieder der Gruppe Anzeigen sollen Heftinformationen lesen dürfen. Markieren Sie<br />

die Gruppe Anzeigen und aktivieren Sie das Kontrollkästchen vor Daten lesen. Die<br />

Berechtigung, den Entwurf lesen zu dürfen, wird automatisch aktiviert. Bestätigen Sie die<br />

Einstellungen erneut durch Übernehmen.<br />

11. Markieren Sie jetzt die Gruppe Vertrieb. Diese soll die Hefte in vollem Umfang bearbeiten<br />

können. Aktivieren Sie dazu die Kontrollkästchen vor Daten aktualisieren, Daten einfügen<br />

und Daten löschen. Daten lesen und Entwurf lesen wird automatisch aktiviert.<br />

12. Übernehmen Sie die Einstellungen und verlassen Sie mit OK das Dialogfeld.<br />

13. Schließen Sie die Datenbank Stadtlupe und beenden Sie MS <strong>Access</strong>.<br />

Sie haben gerade so nebenbei eine besondere Eigenart des <strong>Access</strong>-Sicherheitssystems kennen<br />

gelernt. So lange Sie als Administrator noch nicht tätig wurden, haben alle von Ihnen angelegten<br />

Benutzer des Systems volle Berechtigungen auf sämtliche Datenbankobjekte. Alle Benutzerkonten<br />

sind ja in der Gruppe Benutzer enthalten und diese Gruppe hat anfangs jede nur denkbare<br />

Berechtigung.<br />

<strong>5.1</strong>.7 Beispiel 76: Berechtigungen testen<br />

1. Starten Sie <strong>Access</strong> neu und öffnen Sie die Datenbank 070_083Stadtlupe.mdb. Melden Sie<br />

sich als Benutzerin NinaJ an.<br />

2. Lassen Sie das Feld Kennwort frei.<br />

Sie hatten noch kein Kennwort vergeben.<br />

3. Öffnen Sie die Tabelle Hefte.<br />

4. Versuchen Sie, die Bezeichnung eines Heftes zu ändern. Es sollte Ihnen nicht gelingen, da<br />

Sie NinaJ als Mitglied der Gruppe Anzeigen nur das Recht gegeben haben, die Daten der<br />

Tabelle zu lesen.<br />

5. Schließen Sie MS <strong>Access</strong> vollständig und öffnen Sie anschließend die Datenbank<br />

070_083Stadtlupe.mdb erneut.<br />

6. Melden Sie sich am System als Benutzer BorisZ an.<br />

7. Öffnen Sie die Tabelle Hefte erneut und probieren Sie die Änderung einer Bezeichnung aus.<br />

Es sollte Ihnen problemlos gelingen, da Sie BorisZ als Mitglied der Gruppe Vertrieb die<br />

Berechtigung gegeben haben, die Tabelle Hefte in vollem Umfang zu bearbeiten. Machen<br />

Sie die Änderung vor dem Verlassen des Datensatzes wieder rückgängig.<br />

8. Schließen Sie die Datenbank 070_083Stadtlupe.mdb und beenden Sie MS <strong>Access</strong>.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 6 / 77


Die in <strong>Access</strong> verfügbaren Berechtigungsarten finden Sie in der Tabelle Rechte. In den Beispielen<br />

haben Sie bereits gesehen, dass Rechte aufeinander aufbauen. So beinhaltet das Recht Daten<br />

aktualisieren automatisch die Rechte Entwurf lesen und Daten lesen . <strong>Access</strong> weist diese Rechte<br />

dem Konto ohne Ihr Zutun zu. Gibt es außerdem Konten, die in mehreren Gruppen enthalten sind,<br />

so wie in unserem Beispiel das Konto KlausT, so addieren sich die Berechtigungen aus den<br />

unterschiedlichen Gruppen automatisch.<br />

Rechte können Sie unterschiedlichen <strong>Access</strong>-Objekten zuweisen. Auf der untersten Ebene ist dabei<br />

natürlich die Tabelle zu sehen. Damit Informationen in einem Bericht oder Formular angezeigt<br />

werden können, muss bereits auf Tabellenebene mindestens eine Leseberechtigung vorliegen. Die<br />

Berechtigungen der unterschiedlichen Objekte (Tabellen, Abfragen, Formulare, usw.) bauen also<br />

aufeinander auf. Hier addieren sich die Berechtigungen nicht! Sie können also keine Daten in einem<br />

Formular löschen, für welches Sie das Recht Daten löschen besitzen, wenn Sie nicht gleichzeitig in<br />

der Tabelle über dieses Recht verfügen. Die Tabelle Berechtigungshierarchie stellt diese<br />

Zusammenhänge dar.<br />

Berechtigung<br />

Funktion<br />

Öffnen einer Datenbank, eines Formulars oder Berichts oder Ausführen eines<br />

Öffnen/Ausführen<br />

Makros in einer Datenbank.<br />

Exklusiv Öffnen einer Datenbank mit exklusivem Zugriff.<br />

Entwurf lesen<br />

Anzeigen von Tabellen, Abfragen, Formularen, Berichten oder Makros in der<br />

Entwurfsansicht.<br />

Entwurf ändern<br />

Anzeigen und Ändern des Entwurfs von Tabellen, Abfragen, Formularen,<br />

Berichten oder Makros.<br />

Tabelle 13 Rechte<br />

Berechtigung<br />

Beinhaltet<br />

Bei Datenbanken: Festlegen eines Datenbankkennwortes, Replizieren einer<br />

Datenbank und Ändern der Starteigenschaften.<br />

Verwalten<br />

Daten lesen<br />

Daten<br />

einfügen<br />

Daten löschen<br />

Bei Tabellen, Abfragen, Formularen, Berichten und Makros: vollständiger Zugriff<br />

auf diese Objekte und Daten, einschließlich der Fähigkeit, Berechtigungen<br />

zuzuweisen.<br />

Anzeigen von Daten in Tabellen und Abfragen.<br />

Anzeigen und Einfügen, jedoch nicht Ändern oder Löschen von Daten in Tabellen<br />

und Abfragen.<br />

Anzeigen und Löschen, jedoch nicht Ändern oder Einfügen von Daten in Tabellen<br />

und Abfragen.<br />

Tabelle 14 Rechte 2<br />

Berechtigung<br />

Funktion<br />

Verwalten Beinhaltet vollständig alle anderen Berechtigungen.<br />

Entwurf ändern Entwurf lesen; Daten lesen; Daten aktualisieren; Daten löschen.<br />

Daten aktualisieren Entwurf lesen; Daten lesen.<br />

Daten löschen Entwurf lesen; Daten lesen.<br />

Daten einfügen Entwurf lesen; Daten lesen.<br />

Daten lesen Entwurf lesen.<br />

Entwurf lesen Nichts – ist also die elementare Berechtigung.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 7 / 77


5.2 Sicherheit auf Benutzerebene, Verschlüsseln einer<br />

Datenbank<br />

Sie haben im letzten Abschnitt gelernt, wie man im <strong>Access</strong>-Berechtigungssystem Benutzerkonten<br />

sowie Gruppen angelegt und diesen Berechtigungen zuweist.<br />

Sie werden nun das Anlegen einer neuen Arbeitsgruppe üben. Dazu erstellen Sie eine neue<br />

Arbeitsgruppen-Informationsdatei. Eine Arbeitsgruppen-Informationsdatei enthält u. a. eine Liste<br />

von Benutzern und die Kennwörter der Benutzer.<br />

5.2.1 Beispiel 77: Eine neue Arbeitsgruppe anlegen<br />

1. Starten Sie MS <strong>Access</strong> und öffnen Sie die Datenbank 070_083Stadtlupe.mdb.<br />

2. Melden Sie sich als Administrator (Kennwort: sesam) an.<br />

3. Öffnen Sie über das Menü Extras/Sicherheit den Arbeitsgruppenadministrator .<br />

4. Merken Sie sich den Pfad zu Ihrer Standard-Arbeitsgruppeninformationsdatei.<br />

Abb 311 Der Arbeitsgruppen-Administrator<br />

5. Klicken Sie im Dialogfeld Arbeitsgruppen-Administrator auf Erstellen.<br />

6. Füllen Sie im Dialogfeld Informationen zum Arbeitsgruppenbesitzer die Felder wie folgt<br />

aus: Name = Admin, Firma = Stadtlupe, Arbeitsgruppen-ID = 0001. OK.<br />

Abb 312<br />

7. Sie möchten nun den Speicherort Ihrer Arbeitsgruppen-Informationsdatei bestimmen.<br />

Klicken Sie auf Durchsuchen und wählen Sie den Pfad Ihres Stadtlupen-Verzeichnisses (z.<br />

B. C:\Übungsdateien\Stadtlupe). Ändern Sie den Namen in Leer.mdw.<br />

Sie sollten sich den angegebenen Pfad unbedingt merken!<br />

8. Klicken Sie auf Öffnen, dann auf OK.<br />

9. Bestätigen Sie jetzt noch Ihre Arbeitsgruppeninformationen mit OK. Sie haben jetzt eine<br />

neue, leere Arbeitsgruppendatei angelegt. Diese enthält noch keine Konteninformationen.<br />

Abb 313<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 8 / 77


Abb 314<br />

10. Klicken Sie auf die Schaltfläche Beitreten, um diese Arbeitsgruppendatei zur aktiven zu<br />

machen, und bestätigen Sie das Wechseln der Arbeitsgruppe. OK.<br />

11. Beenden Sie MS <strong>Access</strong>.<br />

Abb 315<br />

5.2.2 Beispiel 78: Die Arbeitsgruppe testen<br />

1. Starten Sie MS <strong>Access</strong> erneut und öffnen Sie die Datenbank 070_083Stadtlupe.mdb.<br />

Sie sollten keine Benutzerinformationen eingeben müssen.<br />

2. Öffnen Sie über das Menü Extras/Sicherheit die Benutzer und Gruppenkonten und<br />

überprüfen Sie die vorhandenen Benutzer.<br />

3. Außer dem Administrator sollten Sie keine weiteren Einträge finden. Die aktuelle<br />

Arbeitsgruppe enthält also keine Konten oder Berechtigungen.<br />

4. Beenden Sie MS <strong>Access</strong>.<br />

Abb 316<br />

Die <strong>Access</strong> Arbeitsgruppendatei, die beim Öffnen einer Datenbank auf Ihrem Rechner verwendet<br />

wird, kann jederzeit geändert werden. Dies zeigt das folgende kleine Beispiel.<br />

5.2.3 Beispiel 79: Die Arbeitgruppe wechseln<br />

1. Die Datenbank 070_083Stadtlupe.mdb ist geöffnet.<br />

2. Öffnen Sie über Extras/Sicherheit den Arbeitsgruppen-Administrator und klicken Sie auf die<br />

Schaltfläche Beitreten.<br />

3. Wechseln Sie über die Schaltfläche Durchsuchen in Ihr Standard-Verzeichnis für<br />

Arbeitsgruppen-Dateien und öffnen Sie die Datei System.mdw.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 9 / 77


Wenn Sie den Ordner, in dem sich Ihre Arbeitsgruppen-Dateien befinden, nicht finden<br />

können, kontrollieren Sie, ob im Windows Explorer unter Extras/Ordneroptionen im<br />

Register Ansicht unter Versteckte Dateien und Ordner die Option Alle Dateien und Ordner<br />

aktiviert ist.<br />

4. Bestätigen Sie den Wechsel der Arbeitsgruppe mit OK und öffnen Sie die Datenbank<br />

Stadtlupe.<br />

Abb 317<br />

5. Sie müssen sich jetzt wieder am System anmelden. Da die Arbeitsgruppendatei System.mdw<br />

wieder aktiv ist, gelten auch die darin enthaltenen Kontoinformationen wieder.<br />

6. Beenden Sie MS <strong>Access</strong>.<br />

Abb 318<br />

Wenn in Ihrem Unternehmen viele Anwender in einem Netzwerk mit unterschiedlichen <strong>Access</strong>-<br />

Datenbanken arbeiten, kann die Verwendung eines geschützten Systems für das Absichern einer<br />

Datenbank sehr lästig sein, da dann ja alle Benutzer sich auch mit ihren persönlichen <strong>Access</strong>-<br />

Dateien an dieses System anschließen müssen. Eine gute Alternative ist hier der Schutz einzelner<br />

Datenbanken durch spezielle Arbeitsgruppendateien.<br />

Im nächsten Beispiel wird der Datenbank Stadtlupe beim Start eine Arbeitsgruppendatei<br />

zugewiesen. Dazu wird unter Start eine neue Verknüpfung eingerichtet.<br />

5.2.4 Beispiel 80: Datenbank mit einer speziellen<br />

Arbeitsgruppendatei starten<br />

1. Die Datenbank 070_083Stadtlupe.mdb ist geöffnet.<br />

2. Klicken Sie mit der rechten Maustaste auf die Schaltfläche Start in der Taskleiste und<br />

wählen Sie aus dem Kontextmenü Eigenschaften.<br />

3. Wechseln Sie in das Register Startmenü, wählen Sie das klassische Startmenü und klicken<br />

Sie auf die Schaltfläche Anpassen, dann auf hinzufügen.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 10 / 77


Abb 319<br />

4. Geben Sie den Pfad zur <strong>Access</strong> Programmdatei an. Dieser lautet unter Windows XP:<br />

C:\Programme\Microsoft Office\Office11\MSACCESS.exe Mit dieser Befehlszeile startet<br />

man MS <strong>Access</strong>.<br />

5. Zusätzlich müssen Sie den Pfad zur Stadtlupe-Datenbank angeben:<br />

C:\Übungsdateien\Stadtlupe\stadtlupe.mdb. Schreiben Sie dies durch ein Leerzeichen<br />

getrennt hinter den ersten Teil der Befehlszeile. Mit dieser Zeile starten Sie <strong>Access</strong> und die<br />

Datenbank Stadtlupe.<br />

6. Durch den zusätzlichen Parameter /wrkgrp teilen Sie MS <strong>Access</strong> jetzt mit, dass eine<br />

spezielle Arbeitsgruppendatei verwendet werden soll. Geben Sie den Pfad<br />

C:\Übungsdateien\Stadtlupe\Leer.mdw ein.<br />

Abb 320<br />

7. Über diesen Pfad aktivieren Sie für die Verknüpfung Stadtlupe im Startmenü die<br />

Arbeitsgruppen-Informationsdatei Leer.mdw, die Sie in Beispiel 78 angelegt haben.<br />

8. Nach Weiter wählen Sie als Programmgruppe Startmenü aus.<br />

Abb 321<br />

9. Geben Sie der neuen Verknüpfung den Namen Stadtlupe. Nach Fertig stellen klicken Sie<br />

zweimal auf OK.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 11 / 77


Abb 322<br />

10. Testen Sie die neue Verknüpfung durch Anklicken im Startmenü.<br />

Abb 323 Der neue Eintrag im Startmenü<br />

Hinweis: Sie finden die Verknüpfung, die Sie erstellt haben, unter C:\Dokumente und<br />

Einstellungen\Benutzername\Startmenü. Klicken Sie mit der rechten Maustaste auf die<br />

Verknüpfung Stadtlupe.lnk und wählen Sie aus dem Kontextmenü Eigenschaften. Im<br />

Register Verknüpfung können Sie Ihre Eingaben, wie z. B. den Pfad zur Arbeitsgruppen-<br />

Informationsdatei, ändern.<br />

Abb 324<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 12 / 77


<strong>Das</strong> letzte Beispiel hat eine Schwachstelle des <strong>Access</strong> Sicherheitssystems aufgezeigt. Sie konnten<br />

ja, obwohl es eine „sichere“ Arbeitsgruppe gab, die Stadtlupe MDB jederzeit über die „leere“<br />

Gruppe öffnen. Tatsächlich ist es sogar noch viel einfacher, ein geschütztes System zu öffnen. Sie<br />

sollten das nächste Beispiel unbedingt nachvollziehen, um sich zu vergegenwärtigen, was bei einer<br />

unachtsamen Administration des <strong>Access</strong>-Systems passieren kann.<br />

5.2.5 Beispiel 81: Ein geschütztes System „knacken“<br />

1. Beenden Sie ggf. MS <strong>Access</strong>.<br />

2. Öffnen Sie den Windows-Explorer.<br />

3. Wechseln Sie in das Verzeichnis auf Ihrem PC, in welchem die Arbeitsgruppen-Dateien<br />

gespeichert sind. Unter Windows XP ist dies: C:\Dokumente und<br />

Einstellungen\Benutzername\Anwendungsdaten\Microsoft\<strong>Access</strong> .<br />

4. Benennen Sie die Datei System.mdw in System.sav um. Beantworten Sie die<br />

Sicherheitsabfrage mit JA.<br />

5. Starten Sie MS <strong>Access</strong> und öffnen Sie die Datenbank 070_083Stadtlupe.mdb. Sie können<br />

die Datenbank ohne Benutzeranmeldung öffnen.<br />

6. Betrachten Sie im Menü Extras/Sicherheit/Benutzer- und Gruppenkonten die Benutzer. Sie<br />

entsprechen den Anfangseinstellungen des Systems.<br />

7. Beenden Sie MS <strong>Access</strong>.<br />

8. Wechseln Sie wieder in den Windows-Explorer. Sie werden feststellen, dass es eine neue<br />

System.mdw gibt. Diese wurde von <strong>Access</strong> beim Starten angelegt.<br />

Es ist also jederzeit möglich, die Systemdatenbank zu löschen, um <strong>Access</strong> zum Anlegen einer neuen<br />

Datenbank zu bewegen. So kann man sich dann als Administrator mit leerem Passwort an dem<br />

<strong>Access</strong>-System und der eigentlich zu schützenden Datenbank anmelden und erhält sogar die volle<br />

Berechtigungsmenge. Zu einem echten Schutz eines <strong>Access</strong>-Systems gehört also auch der Schutz<br />

der Systemdatenbank. Diese darf nicht gelöscht werden.<br />

Außerdem müssen Sie vermeiden, dass jemand Ihrer Datenbank eine leere Arbeitsgruppen-<br />

Datenbank „unterschiebt“. Auch dann ist das System wieder vollkommen ungeschützt. Der Grund<br />

dafür ist schlicht und ergreifend die Tatsache, dass das Admin-Konto, welches ja fest in der<br />

Arbeitsgruppendatei „verdrahtet“ ist, immer über die gleiche PID verfügt.<br />

Wenn Sie eine Datenbank besonders gut absichern wollen, dann sollten Sie den Besitzer der<br />

Datenbank ändern und darüber versuchen, dem Standardbenutzer Administrator die umfangreichen<br />

Berechtigungen zur Benutzung der Datenbank entziehen. Dies ist in <strong>Access</strong> <strong>2003</strong> leider nicht ganz<br />

einfach, doch unterstützt Sie der Sicherheits-Assistent bei dieser Aufgabenstellung.<br />

Eine weitere Möglichkeit, an Ihre Daten zu kommen, wäre die direkte Untersuchung der MDB-<br />

Datei mit einem entsprechenden Tool und das Auslesen der Daten. Bei kleinen Datenbanken reicht<br />

da durchaus der normale Editor, um die Informationen einer Datenbankdatei sichtbar zu machen.<br />

5.2.6 Beispiel 82: Datenbankinhalte sichtbar machen<br />

1. Starten Sie über Start/Alle Programme/Zubehör den Editor.<br />

2. Öffnen Sie mit Datei/Öffnen aus dem Verzeichnis C:\Übungsdateien\Stadtlupe die Datei<br />

070_083Stadtlupe.mdb.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 13 / 77


Abb 325<br />

3. Der Inhalt der MDB-Datei wird im Editor dargestellt. Indem Sie sich mit der Bildlaufleiste<br />

durch die Datei bewegen, sollten Sie den einen oder anderen Datenbankinhalt erkennen<br />

können.<br />

4. Schließen Sie den Editor.<br />

Bei größeren MDB-Dateien versagt dieses Verfahren zwar, weil der Windows-Editor diese nicht<br />

mehr darstellen kann, es gibt jedoch im Internet jede Menge Dateibetrachter, die auch dies können.<br />

Um so etwas zu vermeiden, können Sie eine Datenbank verschlüsseln.<br />

Um eine Microsoft <strong>Access</strong>-Datenbank ver- und entschlüsseln zu können, müssen Sie entweder der<br />

Besitzer der Datenbank sein oder, falls die Datenbank gesichert ist, ein Mitglied der Gruppe<br />

Administratoren der Arbeitsgruppen-Informationsdatei. Darüber hinaus müssen Sie in der Lage<br />

sein, die Datenbank im Exklusiv-Modus zu öffnen. Sie müssen demnach über die Berechtigungen<br />

Öffnen/Ausführen und Exklusiv verfügen.<br />

5.2.7 Beispiel 83: Verschlüsseln einer Datenbank<br />

1. Starten Sie MS <strong>Access</strong> und öffnen Sie die Datenbank 070_083Stadtlupe.mdb.<br />

2. Klicken Sie auf Extras/Sicherheit/Datenbank ver-/entschlüsseln .<br />

3. Speichern Sie die Datenbank unter StadtlupeSicher.mdb. Die Datenbank ist jetzt<br />

verschlüsselt.<br />

4. Beenden Sie MS <strong>Access</strong>.<br />

5. Betrachten Sie die Datei StadtlupeSicher.mdb mit dem Editor.<br />

6. Die Dateiinhalte sind durch die Codierung nun nicht mehr ohne weiteres erkennbar.<br />

Abb 326<br />

In diesem Abschnitt des Kurses haben Sie das Sicherheitssystem ausführlich kennen gelernt. Damit<br />

sind Sie gewappnet, den <strong>Access</strong>-Sicherheits-Assistenten zu benutzen. Dieser vereinfacht die<br />

teilweise etwas unübersichtlichen Schritte bis zur Erstellung eines „wasserdichten“ Systems für Sie.<br />

Der Assistent legt eine Kopie Ihrer vorhandenen Datenbank an, erzeugt eine neue Arbeitsgruppen-<br />

Datei, entfernt die Berechtigungen für die Gruppe Benutzer, verschlüsselt die Datenbank und was<br />

am allerwichtigsten ist: er ändert den Besitzer der Datenbank, so dass es nicht mehr so simpel ist,<br />

das System durch das Löschen der Arbeitsgruppen-Datenbank oder ähnlich Tricks zu öffnen.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 14 / 77


Sie müssen bei dieser Art der Sicherung allerdings sehr sorgfältig vorgehen. Die gesicherte Version<br />

Ihrer Datenbank lässt sich nur noch unter Einsatz der neuen Arbeitsgruppen -Datenbank öffnen.<br />

Sollten Sie diese verlieren, so können Sie im Prinzip eine neue Datei generieren lassen. Allerdings<br />

nur, wenn Sie die Informationen, die Sie beim ersten Anlegen verwendet haben, auch ganz genau<br />

beim zweiten Anlegen wiederholen. Fehlt Ihnen ein Teil dieser Daten, so gibt es kaum noch eine<br />

Chance, die Datenbank zu öffnen.<br />

5.2.8 Beispiel 84: Den Sicherheitsassistenten verwenden<br />

1. Starten Sie MS <strong>Access</strong>. Öffnen Sie die Datenbank 084Stadtlupe.mdb.<br />

2. Starten Sie über Extras/Sicherheit den Benutzerdatensicherheits-Assistenten .<br />

3. Sie möchten eine neue Arbeitsgruppen-Informationsdatei erstellen.<br />

Abb 327<br />

4. Nach Weiter wählen Sie über Durchsuchen den Pfad zu Ihrem Verzeichnis Stadtlupe aus<br />

und speichern die neue Arbeitsgruppendatei unter dem Namen Sicher.mdw.<br />

5. Füllen Sie die folgenden Felder wie folgt aus: AID = 0001, Ihr Name = Admin, Firma =<br />

Stadtlupe.<br />

Abb 328<br />

6. Aktivieren Sie das Kontrollkästchen vor Verknüpfung zum Öffnen der gesicherten<br />

Datenbank erstellen und klicken Sie auf Weiter.<br />

7. Der Assistent sichert standardmäßig alle Objekte der vorhandenen Datenbank. Klicken Sie<br />

auf Weiter.<br />

Abb 329<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 15 / 77


8. Sie könnten nun Ihrer Datenbank Standard-Benutzergruppen hinzufügen. Lesen Sie die<br />

Beschreibungen der einzelnen Gruppen und klicken Sie auf Weiter, ohne eine Gruppe<br />

auszuwählen.<br />

Abb 330<br />

9. Im nächsten Dialog möchten Sie der Gruppe Benutzer das Recht zuweisen, die Daten in<br />

Tabellen zu lesen.<br />

10. Aktivieren Sie das Kontrollkästchen vor Ja, die Gruppe 'Benutzer'…<br />

11. Wechseln Sie in das Register Tabellen und wählen Sie Daten lesen. Gehen Sie Weiter.<br />

Abb 331<br />

12. Geben Sie als Benutzernamen KlausT ein. <strong>Das</strong> Kennwort soll Klaus1 sein, die PID 0004.<br />

13. Bestätigen Sie Ihre Eingaben mit Benutzer zur Liste hinzufügen und wechseln Sie mit<br />

Weiter zum nächsten Dialog.<br />

Abb 332<br />

14. Weisen Sie das Konto KlausT der Gruppe der Administratoren hinzu, indem Sie das<br />

Kontrollkästchen vor Wählen Sie eine Gruppe aus… aktivieren und dann die Gruppe<br />

Administratoren auswählen. <strong>Das</strong> Häkchen vor KlausT fügt ihn der Gruppe hinzu.<br />

Abb 333<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 16 / 77


15. Behalten Sie den vorgegebenen Namen und das voreingestellte Verzeichnis, in dem die<br />

ungesicherte Variante der Datenbank abgespeichert werden soll, bei und klicken Sie auf<br />

Fertig stellen.<br />

Abb 334<br />

16. Drucken Sie den Bericht des Datensicherheitsassistenten aus.<br />

17. Beenden Sie MS <strong>Access</strong>. Die so gesicherte Datenbank finden Sie im Ordner<br />

Lösungsdateien\Kapitel 5.<br />

Abb 335<br />

Noch sind Sie nicht ganz fertig. Sie müssen zunächst die gerade erstellte Arbeitsgruppe aktivieren,<br />

um mit den Daten arbeiten zu können.<br />

5.2.9 Beispiel 85: Die neuen Sicherheitseinstellungen<br />

aktivieren<br />

1. Um die Datenbank 085_086Stadtlupe.mdb zu öffnen, müssen Sie zuerst der Arbeitsgruppe<br />

beitreten, die die soeben erstellte Arbeitsgruppen-Informationsdatei benutzt.<br />

2. Starten Sie MS <strong>Access</strong> neu.<br />

3. Öffnen Sie über Extras/Sicherheit den Arbeitsgruppenadministrator und klicken Sie auf die<br />

Schaltfläche Beitreten.<br />

4. Über die Schaltfläche Durchsuchen wählen Sie die Arbeitsgruppen-Informationsdatei<br />

Sicher.mdw aus. OK.<br />

Abb 336<br />

5. Beenden Sie MS <strong>Access</strong>.<br />

6. Starten Sie MS <strong>Access</strong> neu, öffnen Sie die gesicherte Datenbank 085_086Stadtlupe.mdb<br />

und melden Sie sich als KlausT, Passwort Klaus1, an.<br />

Abb 337<br />

Sie benutzen jetzt die neue Arbeitsgruppen-Informationsdatei Sicher.mdw.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 17 / 77


7. Beenden Sie MS <strong>Access</strong>.<br />

5.2.10 Beispiel 86: <strong>Das</strong> Sicherungsverfahren testen<br />

1. Wechseln Sie im Windows Explorer in das Stadtlupe-Verzeichnis und benennen Sie die<br />

Arbeitsgruppen-Datei Sicher.mdw in Sicher.sav um.<br />

2. Starten Sie <strong>Access</strong> und versuchen Sie, die Datenbank 085_086Stadtlupe.mdb zu öffnen.<br />

Sie erhalten eine Warnung, dass Ihnen die Benutzung der Datenbank nicht gestattet ist. Die<br />

neue Version der Datenbank 085_086Stadtlupe.mdb kann tatsächlich nur noch über die<br />

Arbeitsgruppen-Datei Sicher.mdw geöffnet werden.<br />

Abb 338<br />

3. Wechseln Sie in den Windows-Explorer. Benennen Sie die Datei Sicher.sav wieder in<br />

Sicher.mdw um.<br />

4. Sie müssen nun wieder der Arbeitsgruppe beitreten, die beim Start die Arbeitsgruppen-<br />

Informationsdatei Sicher.mdw verwendet, da MS <strong>Access</strong> bei dem Versuch, die Datenbank<br />

085_086Stadtlupe.mdb zu öffnen, eine neue Arbeitsgruppen-Informationsdatei erstellt hat.<br />

5. Öffnen Sie über Extras/Sicherheit den Arbeitsgruppenadministrator und klicken Sie auf die<br />

Schaltfläche Beitreten. Über die Schaltfläche Durchsuchen wählen Sie die Arbeitsgruppen-<br />

Informationsdatei Sicher.mdw aus. OK. Um die Datenbank 085_086Stadtlupe.mdb zu<br />

öffnen, müssen Sie sich nun wieder als KlausT anmelden.<br />

6. Beenden Sie MS <strong>Access</strong>.<br />

7. Verschieben Sie die Arbeitsgruppen-Informationsdatei Sicher.mdw in den Ordner<br />

Lösungsdateien. MS <strong>Access</strong> legt beim Neustart eine neue, leere Arbeitsgruppen-<br />

Informationsdatei im Standard-Ordner C:\Dokumente und<br />

Einstellungen\Benutzername\Anwendungsdaten\Microsoft\<strong>Access</strong> an.<br />

Wollen Sie die <strong>Access</strong>-Daten noch besser schützen, so können Sie natürlich im Betriebssystem die<br />

MDB-Dateien mit entsprechenden Attributen versehen.<br />

5.3 Übungsaufgaben<br />

5.3.1 <strong>Das</strong> Berechtigungssystem einsetzen<br />

Die Datenbank Handel soll nun mit einer Benutzerverwaltung versehen werden. Dazu wird das<br />

Berechtigungssystem aktiviert, Benutzer und Gruppen angelegt und mit Rechten versehen. Damit<br />

Ihre übrigen Datenbanken von den Änderungen unberührt bleiben, soll eine neue<br />

Sicherheitsdatenbank angelegt werden.<br />

5.3.2 Aufgabe 33: Eine Arbeitsgruppen-Informationsdatei für<br />

die Datenbank Handel anlegen und aktivieren<br />

1. In dieser Aufgabe richten Sie eine neue Arbeitsgruppen-Informationsdatei mit dem<br />

Arbeitsgruppen-Administrator ein. (5.2.1 Beispiel 77: Eine neue Arbeitsgruppe anlegen)<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 18 / 77


2. Öffnen Sie den Arbeitsgruppen-Administrator. Notieren Sie sich den Pfad zur aktuell<br />

eingestellten Arbeitsgruppen-Informationsdatei, bevor Sie mit den Änderungen beginnen.<br />

3. Legen Sie eine Arbeitsgruppen-Informationsdatei mit der Arbeitsgruppen-ID Handel0001 in<br />

der Datei Handel.mdw an. (5.2.1 Beispiel 77: Eine neue Arbeitsgruppe anlegen)<br />

4. Überprüfen Sie, ob Sie der Sicherheits-Datenbank bereits beigetreten sind. Dies sollte der<br />

Fall sein.<br />

Abb 339<br />

5.3.3 Aufgabe 34: Benutzer und Gruppen anlegen<br />

1. Legen Sie nun in der Datenbank 033_039Handel.mdb die folgenden Benutzernamen an. In<br />

den Klammern hinter dem Namen finden Sie jeweils die Sicherheits-ID: Peter(0001),<br />

Paul(0002) und Mary(0003). (<strong>5.1</strong>.3 Beispiel 72: Benutzerkonten einrichten)<br />

2. Jetzt fehlen noch die Gruppen Einkauf(0001) und Verkauf(0002). Peter und Paul gehören<br />

zur Gruppe Einkauf. Peter und Mary gehören zur Gruppe Verkauf. (<strong>5.1</strong>.4 Beispiel 73:<br />

Benutzergruppen anlegen)<br />

3. Drucken Sie die Übersicht der Benutzer und Gruppen aus.<br />

5.3.4 Aufgabe 35: Berechtigungen vergeben<br />

1. Stellen Sie die Berechtigungen so ein, dass nur Mitglieder der Gruppe Einkauf Daten der<br />

Tabelle Lieferanten lesen und bearbeiten dürfen. (<strong>5.1</strong>.6 Beispiel 75: Berechtigungen<br />

vergeben)<br />

2. Die Einkäufer sollen auch Artikeldaten bearbeiten können. (<strong>5.1</strong>.6 Beispiel 75:<br />

Berechtigungen vergeben)<br />

3. Kundendaten sollen für die Gruppen Benutzer und Einkauf verborgen bleiben. (<strong>5.1</strong>.6<br />

Beispiel 75: Berechtigungen vergeben)<br />

4. Mitglieder der Gruppe Verkauf haben keinen Zugriff auf die Lieferanten, aber lesenden<br />

Zugriff auf die Artikeldaten. (<strong>5.1</strong>.6 Beispiel 75: Berechtigungen vergeben)<br />

5. Verkäufer haben den vollen Zugriff auf die Kundendaten. (<strong>5.1</strong>.6 Beispiel 75:<br />

Berechtigungen vergeben)<br />

6. Lassen Sie alle weiteren Objekte unberührt.<br />

5.3.5 Aufgabe 36: Die Berechtigungen aktivieren und testen<br />

1. Aktivieren Sie das Berechtigungssystem durch die Vergabe des Administrator-Kennwortes<br />

test. (<strong>5.1</strong>.1 Beispiel 70: <strong>Das</strong> Berechtigungssystem aktivieren)<br />

2. Starten Sie <strong>Access</strong> neu und öffnen Sie die Datenbank 033_039Handel.mdb .<br />

3. Melden Sie sich als Paul an. Sie sollten die Tabelle Lieferanten öffnen und bearbeiten<br />

können, ebenso die Tabelle Artikel. Die Tabelle Kunden sollten Sie nicht öffnen dürfen.<br />

(<strong>5.1</strong>.7 Beispiel 76: Berechtigungen testen)<br />

4. Melden Sie sich als Mary an. Die Tabelle Lieferanten sollte Ihnen verwehrt sein,<br />

Artikeldaten sollten Sie nur lesen dürfen. Kundendaten können bearbeitet werden. (<strong>5.1</strong>.7<br />

Beispiel 76: Berechtigungen testen)<br />

5. Melden Sie sich als Peter an. Peter ist Mitglied in beiden Gruppen. Er kann also sowohl die<br />

Tabellen Lieferanten, Artikel als auch Kunden bearbeiten. (<strong>5.1</strong>.7 Beispiel 76:<br />

Berechtigungen testen)<br />

6. Da keine weiteren Einschränkungen vergeben wurden, kann jeder Benutzer der Datenbank<br />

die Tabellen Bestellungen und Bestellpositionen bearbeiten.<br />

7. Die Lösung zu den vorherigen Aufgaben befindet sich in der Systemdatenbank<br />

Handel.mdw.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 19 / 77


5.3.6 Aufgabe 37: <strong>Das</strong> alte Berechtigungssystem reaktivieren<br />

1. Starten Sie <strong>Access</strong> neu, öffnen Sie die Datenbank 033_039Handel.mdb. Melden Sie sich als<br />

Administrator an.<br />

2. Verwenden Sie den Arbeitsgruppen-Administrator, um wieder die ursrpüngliche<br />

System.mdw für Ihre <strong>Access</strong>-Datenbanken zu aktivieren. (5.2.3 Beispiel 79: Die<br />

Arbeitgruppe wechseln)<br />

3. Starten Sie <strong>Access</strong> neu und öffnen Sie Datenbank wieder.<br />

4. Sie sollten die Datenbank ohne Anmeldung benutzen dürfen. Es sollten keinerlei Benutzeroder<br />

Gruppen vorhanden sein.<br />

6 Datenbankinhalte mit Replikation verteilen<br />

Immer dann, wenn Benutzer an ähnlichen oder gleichen Datenbeständen getrennt voneinander<br />

arbeiten müssen, also z. B. beim Notebookeinsatz, kann Datenbankreplikation sinnvoll eingesetzt<br />

werden. Die Aktenkoffer-Replikation und die <strong>Access</strong>-Replikation sind die Themen dieses Kapitels.<br />

6.1 Die Windows Aktenkoffer-Replikation<br />

Möchten Sie eine Datenbank sowohl in Ihrem Büro, als auch unterwegs auf Ihrem Notebook nutzen<br />

und dabei diese Datenbank nicht jedes Mal komplett von Ihrem PC auf Ihr Notebook und<br />

umgekehrt verschieben, dann könnte die Aktenkofferreplikation etwas für Sie sein. Es handelt sich<br />

dabei um ein Standardverfahren, welches in Windows vorhanden ist und das von <strong>Access</strong> wunderbar<br />

unterstützt wird. <strong>Das</strong> Symbol der Aktenkofferreplikation kennen Sie möglicherweise bereits von<br />

Ihrem Desktop. Sie eignet sich auch, um Dateien abzugleichen, die sich auf Wechselaufwerken, wie<br />

zum Beispiel ZIP-Laufwerken, befinden.<br />

Die Aktenkofferreplikation ist erstaunlich leistungsfähig. Sie ermöglicht Ihnen, eine gesamte<br />

Datenbank oder eine Teilmenge einer Datenbank „mobil“ zu machen. Änderungen dürfen dabei an<br />

sämtlichen Kopien gleichzeitig durchgeführt werden. Dadurch ist die Offline-Bearbeitung durch<br />

verschiedene Benutzer parallel machbar. Mittels der eingebauten Abgleichmechanismen können die<br />

Änderungen dann nacheinander zusammengeführt und entstandene Konflikte an den Datensätzen<br />

aufgelöst werden.<br />

6.1.1 Beispiel 87: Eine Datenbank über den Aktenkoffer<br />

replizieren<br />

1. Wenn auf Ihrem Computer bereits ein Aktenkoffer installiert ist, sehen Sie auf dem<br />

Windows-Desktop das Symbol Aktenkoffer. Benennen Sie den Aktenkoffer in <strong>Access</strong> Daten<br />

um.<br />

Abb 340<br />

Wenn kein Aktenkoffer installiert ist, klicken Sie mit der rechten Maustaste auf eine<br />

beliebige Stelle auf dem Desktop, zeigen auf Neu und klicken auf Aktenkoffer.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 20 / 77


2. Öffnen Sie im Windows-Explorer den Ordner Stadtlupe.<br />

3. Verkleinern Sie das Fenster des Windows-Explorers. Ziehen Sie die zu diesem Beispiel<br />

gehörende Datenbankdatei 087Stadtlupe.mdb mit gedrückter Maustaste in den<br />

Aktenkoffer auf dem Windows-Desktop.<br />

Abb 341<br />

4. Sie erhalten in einem Fenster Informationen zur Aktenkoffer-Replikation. Klicken Sie auf<br />

Ja.<br />

Abb 342<br />

5. Der nächste Dialog bietet Ihnen an, eine nicht-replizierte Sicherungskopie der<br />

ursprünglichen Datenbank zu erstellen. Diese sollten Sie unbedingt erstellen, wenn Sie Ihre<br />

Datenbank noch nicht kopiert haben, da es nicht einfach ist, eine replizierte Datenbank<br />

wieder in den ursprünglichen Zustand zu versetzen.<br />

kopiert<br />

Abb 343 Die Datenbank Stadtlupe wird in den Aktenkoffer<br />

6. Wählen Sie auf die Frage, welches Replikat Änderungen am Design der Datenbank zulassen<br />

soll, das Original aus.<br />

Abb 344<br />

7. Öffnen Sie die geänderte Datenbank 088Stadtlupe.mdb im Ordner Stadtlupe. Betrachten<br />

Sie die Objekte im Datenbankfenster. Diese sind jeweils mit einem Replikationssymbol<br />

versehen. Außerdem wird diese Datenbank als Designmaster bezeichnet.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 21 / 77


Abb 345 Die Datenbank Stadtlupe als Designmaster<br />

Sie haben mit dem vorstehenden Beispiel eine Replikation zwischen der Datenbank im Verzeichnis<br />

Stadtlupe und der Datenbank im Aktenkoffer eingerichtet. Die ursprüngliche Datenbank wurde<br />

dabei zum Design-Master. Nur Sie erlaubt Änderungen am Entwurf der Tabellen, Abfragen usw.<br />

Man kann nun sehr leicht die Funktionsweise der Aktenkoffer-Replikation demonstrieren.<br />

6.1.2 Beispiel 88: Änderungen an Replikaten zusammenführen<br />

1. Ziehen Sie aus dem Ordner Stadtlupe die Datenbank 088Stadtlupe.mdb auf das<br />

Aktenkoffersymbol, wie im vorangegangenen Beispiel beschrieben.<br />

Abb 346<br />

2. Öffnen Sie in der Datenbank 088Stadtlupe.mdb die Tabelle Hefte, nehmen Sie eine<br />

Änderung vor und speichern Sie die Tabelle.<br />

Abb 347<br />

3. Schließen Sie die Datenbank 088Stadtlupe.mdb.<br />

4. Klicken Sie mit der rechten Maustaste auf den Aktenkoffer auf Ihrem Desktop und wählen<br />

Sie aus dem Kontextmenü Alles aktualisieren.<br />

5. Klicken Sie im nächsten Fenster auf die Schaltfläche Aktualisieren.<br />

6. Öffnen Sie die Datenbank Stadtlupe im Aktenkoffer , indem Sie zuerst auf das Symbol<br />

Aktenkoffer doppelklicken, dann auf die Datei 088Stadtlupe.mdb.<br />

7. Betrachten Sie die Änderungen in der Tabelle Hefte.<br />

8. Schließen Sie die Datenbank und beenden Sie MS <strong>Access</strong>.<br />

Abb 348<br />

9. Um die Datenbank Stadtlupe mobil zu machen, verschieben Sie einfach den Aktenkoffer auf<br />

das an Ihrem PC angeschlossene Wechsellaufwerk bzw. Ihr Notebook.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 22 / 77


6.2 Die <strong>Access</strong> Replikation<br />

Für sehr viele Anwendungen, gerade bei mobilen <strong>Access</strong>-Anwendern, reicht die im letzten<br />

Abschnitt beschriebene Aktenkoffer-Replikation vollkommen aus. Die Synchronisation der Daten<br />

wird, wie gezeigt, vom Aktenkoffer-Ordner aus angestoßen. Nur der Vollständigkeit halber soll<br />

jetzt kurz die <strong>Access</strong> Replikation vorgestellt werden. Prinzipiell unterschiedet sich diese kaum von<br />

der Aktenkoffer-Replikation, bietet aber zusätzliche Möglichkeiten, gerade, wenn man an die<br />

Erstellung eigener <strong>Access</strong> Applikationen denkt.<br />

6.2.1 Beispiel 89: Mit <strong>Access</strong> Replikation einen Designmaster<br />

erstellen<br />

1. Öffnen Sie die Datenbank 089Stadtlupe.mdb.<br />

Wenn Sie in einer Mehrbenutzerumgebung arbeiten, müssen Sie sicherstellen, dass alle<br />

anderen Benutzer die Datenbank geschlossen haben.<br />

2. Wählen Sie in der Menüleiste den Befehl Extras/Replikation/Datenbank in Replikat<br />

konvertieren.<br />

3. Klicken Sie auf Ja, wenn Sie aufgefordert werden, die Datenbank zu schließen.<br />

Abb 349<br />

4. Lesen Sie den Hinweistext im nächsten Fenster. Erstellen Sie eine Sicherungskopie.<br />

5. Wählen Sie als Speicherort des neuen Replikats den Ordner Stadtlupe aus und als<br />

Dateinamen Replikat.mdb.<br />

6. Aktivieren Sie das Kontrollkästchen vor Löschsperrung.<br />

Abb 350<br />

7. Damit verhindern Sie, dass Benutzer Datensätze aus dem Replikat löschen.<br />

8. Klicken Sie auf die Schaltfläche Priorität , geben Sie als Priorität für das Replikat 99 ein und<br />

klicken Sie auf OK. Über diesen Wert wird der Vorrang bei gleichzeitigen Änderungen in<br />

mehreren Replikaten gesteuert. 0 ist der niedrigste und 100 der höchste Wert.<br />

Abb 351<br />

9. Mit OK schließen Sie den Vorgang ab.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 23 / 77


Abb 352<br />

Eine der fortgeschrittenen Möglichkeiten, die Sie über die <strong>Access</strong> Replikation erhalten, ist die<br />

Erstellung so genannter Teilreplikate. Damit können Sie Teildatenmengen Ihrer Tabellen<br />

replizieren. Dies kann zum Beispiel in Filialsystemen sinnvoll sein, in denen jede Filiale nur einen<br />

bestimmten Ausschnitt der Daten sehen oder bearbeiten soll.<br />

Sie werden im folgenden Beispiel kennen lernen, wie man ein Teilreplikat der Datenbank Stadtlupe<br />

einrichtet. In diesem sollen nur Daten enthalten sein, die für den Standort Berlin relevant sind. Alle<br />

anderen Daten sollen automatisch ausgeblendet werden.<br />

6.2.2 Beispiel 90: Ein Teilreplikat einer einzelnen Tabelle<br />

erzeugen<br />

1. Öffnen Sie die Datenbank 090Stadtlupe.mdb.<br />

2. Wählen Sie aus dem Menü Extras/Replikation den Teilreplikations-Assistenten .<br />

3. Aktivieren Sie im nächsten Schritt die Option Ein neues Teilreplikat erzeugen.<br />

Abb 353<br />

4. Wählen Sie als Speicherort für das neue Replikat den Ordner Stadtlupe und als Namen<br />

StadtlupeBerlin.mdb. Lassen Sie die anderen Optionen wie voreingestellt.<br />

Abb 354<br />

5. Nach Weiter wählen Sie die Tabelle Standorte aus. Über diese Tabelle soll die Auswahl der<br />

Daten gesteuert werden. Durch den Ausdruck wird angegeben, welche Daten aus dieser<br />

Tabelle die Grundlage für die Selektion der Datensätze in allen anderen Tabellen bilden.<br />

6. Erstellen Sie den Filterausdruck über die Schaltflächen oder geben Sie ihn direkt ein. Er<br />

lautet [Standort-ID] = "B" Klicken Sie auf Weiter.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 24 / 77


Abb 355<br />

7. Im nächsten Schritt müssen Sie sehr sorgfältig auswählen, welche Tabellen noch von dem<br />

Filtervorgang betroffen sein sollen. Auf jeden Fall werden alle direkt mit der Standorttabelle<br />

verknüpften Tabellen gefiltert. Diese zeigt das Dialogfeld nicht an. Entfernen Sie den Haken<br />

bei Tabellen, von denen Sie möchten, dass diese nicht vollständig, sondern gefiltert<br />

angezeigt werden. Hier sind das die Tabellen Kunden, Heftarchiv und Orte. Durch diese<br />

Aktion sehen Sie im Ergebnis z. B. nur Datensätze, die mit dem Standort Berlin in<br />

Verbindung stehen.<br />

Abb 356<br />

8. Aktivieren Sie im letzten Dialogfeld die Erstellung des Berichtes und lassen Sie das<br />

Teilreplikat Fertig stellen.<br />

9. Überprüfen Sie anschließend die neu erstellte Datei StadtlupeBerlin.mdb. In dieser sollten<br />

nur der Standort Berlin, Mitarbeiter aus Berlin und eine reduzierte Anzahl von<br />

Kundendatensätzen vorkommen. Die verbliebenen Datensätze stehen mit dem Designmaster<br />

in Verbindung.<br />

<strong>Access</strong> führt zwischen der Master-Datenbank und den Replikaten eine so genannte Misch-<br />

Replikation durch. Dabei ist es durchaus erlaubt, Daten an verschiedenen Standorten parallel zu<br />

ändern. Solange unterschiedliche Tabellen, Datensätze oder Felder betroffen sind, werden die<br />

Änderungen einfach gemischt, um die neuen Datensätze zu erhalten. Treten Konflikte auf, so<br />

müssen diese gelöst werden. <strong>Das</strong> nächste Beispiel stellt vor, wie das geht.<br />

6.2.3 Beispiel 91: Daten synchronisieren und Konflikte lösen<br />

1. Öffnen Sie im Verzeichnis Stadtlupe die Datenbank Replikat.mdb.<br />

2. In der Tabelle Mitarbeiter finden Sie den Datensatz der Mitarbeiterin Karin Müller (KM).<br />

Tragen Sie als Standort-ID das Kürzel M ein.<br />

3. Schließen Sie die Datenbank wieder.<br />

4. Öffnen Sie jetzt die Datenbank 091Stadtlupe.mdb . Ändern Sie wieder den Datensatz für<br />

Karin Müller in der Mitarbeitertabelle, indem Sie diesmal das Kürzel H als Standort-ID<br />

eintragen.<br />

5. Schließen Sie die Tabelle.<br />

6. Zum Abgleich der Änderungen wählen Sie jetzt aus dem Menü Extras/Replikation den<br />

Befehl Jetzt synchronisieren aus. Kontrollieren Sie, ob die Datenbank<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 25 / 77


\Übungsdateien\Stadtlupe\Replikat.mdb als Ziel der Synchronisation angezeigt wird und<br />

starten Sie den Vorgang mit OK.<br />

Abb 357<br />

7. Die Daten der Datenbank werden jetzt verglichen; das Ergebnis wird angezeigt. In unserem<br />

Fall ist ein Konflikt aufgetreten. Klicken Sie auf Ja, um mit der Konfliktauflösung zu<br />

beginnen.<br />

Abb 358<br />

8. Die Tabelle Mitarbeiter hat den Konflikt verursacht. Klicken Sie auf Anzeigen.<br />

Abb 359<br />

9. Sie können auswählen, was mit den vorhandenen Daten geschehen soll. Wählen Sie die<br />

Option Gewinnende Änderung beibehalten und klicken Sie auf Schliessen.<br />

Zwei Bemerkungen zum Schluss. Die erste: Falls Sie Schwierigkeiten beim Ausprobieren der<br />

Replikation bekommen, sollten Sie sich die Office Service Packs besorgen. Die gibt es im Internet<br />

bei Microsoft zum Download. Die zweite: Auch in <strong>Access</strong> <strong>2003</strong> gibt es immer noch keine<br />

Möglichkeit, einen Design-Master oder ein Replikat wieder in eine nicht-replizierte Datenbank<br />

umzuwandeln. Im Internet finden Sie diverse Tools, die diese Aufgabe durchführen. Eine einfache<br />

und stabil funktionierende Möglichkeit, die Sie ohne Hilfsmittel durchführen können, ist die<br />

folgende: Legen Sie eine neue <strong>Access</strong>-Datenbank an. Wählen Sie den Befehl Externe<br />

Daten/Importieren aus dem Menü Datei und importieren Sie sämtliche Objekte in die neue<br />

Datenbank. Auch damit entfernen Sie die Replikation.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 26 / 77


6.3 Übungsaufgaben<br />

6.3.1 Aufgabe 38: Aktenkoffer-Replikation für die Datenbank<br />

Handel<br />

1. In dieser Aufgabe legen Sie ein Replikat der Datenbank Handel an und synchronisieren<br />

dieses.<br />

2. Legen Sie auf dem Desktop einen neuen Aktenkoffer an und nennen Sie diesen Handel.<br />

(6.1.1 Beispiel 87: Eine Datenbank über den Aktenkoffer replizieren)<br />

3. Erstellen Sie per Drag-and-Drop ein Replikat der Datenbank 033_039Handel.mdb im neuen<br />

Aktenkoffer. (6.1.1 Beispiel 87: Eine Datenbank über den Aktenkoffer replizieren)<br />

4. Öffnen Sie die Datenbank 033_039Handel.mdb aus dem Aktenkoffer. Ändern Sie den<br />

Namen des ersten Kunden von Werkzeughaus Nord in Werkzeughaus Süd. (6.1.2 Beispiel<br />

88: Änderungen an Replikaten zusammenführen)<br />

5. Ändern Sie in der Datenbank 033_039Handel.mdb auf Ihrem Desktop-PC den Namen des<br />

zweiten Kunden von Malerladen Schröder in Malerladen Meier. (6.1.2 Beispiel 88:<br />

Änderungen an Replikaten zusammenführen)<br />

6. Klicken Sie den Aktenkoffer mit der rechten Maustaste an. (6.1.2 Beispiel 88: Änderungen<br />

an Replikaten zusammenführen)<br />

7. Wählen Sie aus dem Kontextmenü Alles Aktualisieren. (6.1.2 Beispiel 88: Änderungen an<br />

Replikaten zusammenführen)<br />

8. Sie sollten ein Dialogfeld entsprechend der Abbildung sehen. Klicken Sie auf Aktualisieren.<br />

Die Änderungen werden zusammengeführt. (6.1.2 Beispiel 88: Änderungen an Replikaten<br />

zusammenführen)<br />

Abb 360<br />

6.3.2 Aufgabe 39: <strong>Das</strong> Teil-Replikat vom Design Master trennen<br />

1. Öffnen Sie im Aktenkoffer das Kontextmenü zur Datei 033_039Handel.mdb über einen<br />

rechten Mausklick.<br />

2. Lassen Sie sich unter den Eigenschaften den Aktualisierungsstatus anzeigen.<br />

3. Verwenden Sie die Schaltfläche Vom Original trennen, um die Verbindung zwischen den<br />

beiden Versionen aufzuheben.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 27 / 77


Abb 361<br />

6.3.3 Aufgabe 40: Ein Teil-Replikat für die Tabelle Kunden<br />

erstellen<br />

1. In dieser Aufgabe soll eine Teilmenge der Datenbank repliziert werden. Es handelt sich um<br />

einen bestimmten Kundenbereich.<br />

2. Öffnen Sie die Datei 040Handel.mdb.<br />

3. Verwenden Sie den Teilreplikations-Assistenten, um eine replizierte Version der Datenbank<br />

zu erstellen. Der Dateiname soll KundenBis20.mdb lauten. (6.2.2 Beispiel 90: Ein<br />

Teilreplikat einer einzelnen Tabelle erzeugen)<br />

4. Es soll sich um ein anonymes Replikat handeln. (6.2.2 Beispiel 90: Ein Teilreplikat einer<br />

einzelnen Tabelle erzeugen)<br />

5. Die Filterung der Daten soll über die Kundeninformationen geschehen. Verwenden Sie den<br />

Ausdruck [KundenNr]


7 Abläufe mit Makros automatisieren<br />

Mit den Makros stehen in <strong>Access</strong> Werkzeuge zur Automatisierung von Arbeitsabläufen zur<br />

Verfügung. Makros sind im Prinzip nichts anderes, als eine Auflistung von Befehlen, die von<br />

<strong>Access</strong> automatisch hintereinander abgearbeitet werden. Makros werden in <strong>Access</strong> für das<br />

Festlegen eigener Menüleisten und eigener Tastenbelegungen sowie für das Ausführen von<br />

Aktionen beim Öffnen einer Datenbank eingesetzt.<br />

Wenn Sie bereits mit den Makros von Excel oder Word Erfahrungen gesammelt haben, werden Sie<br />

vielleicht zunächst etwas enttäuscht sein, da eine Makroaufzeichnung in <strong>Access</strong> nicht möglich ist.<br />

Dennoch sind Makros der einfachste Weg, Abläufe in <strong>Access</strong> zu automatisieren. Auch der ungeübte<br />

Benutzer kommt schnell mit ihnen zurecht. Ein weiterer Unterschied zu Excel- oder Word-Makros<br />

ist in der Tastsache zu sehen, dass <strong>Access</strong>-Makros sehr viel einfacher aufgebaut sind. Dennoch<br />

stehen sämtliche Befehle zur Verfügung, die Sie als Benutzer verwenden können und es lassen sich<br />

umfangreiche Applikationen aufbauen.<br />

Wenn Sie sich ein bestehendes Makro in der Entwurfsansicht betrachten, werden Sie feststellen,<br />

dass die einzelnen Aktionen in einer Tabelle untereinander aufgelistet sind. Der lineare Ablauf ist<br />

die einfachste Variante, aber auch Programmverzweigungen können eingebaut werden.<br />

Makros haben nichts mit der Programmiersprache Visual Basic for Application (VBA) zu tun.<br />

Diese ist in <strong>Access</strong> den so genannten Modulen vorbehalten. In diesem Kapitel gehen wir nur auf die<br />

Makros ein. <strong>Das</strong> komplexe Thema Visual Basic for Application würde den Rahmen dieses Buches<br />

sprengen.<br />

7.1 Makros erstellen und ausführen<br />

Ein Makro ist eine Auflistung von Befehlen, die von <strong>Access</strong> automatisch hintereinander<br />

abgearbeitet werden.<br />

Zunächst wird ein bereits angelegtes Makro aufgerufen. Dieses ordnet wichtige Formulare der<br />

Datenbank auf der Arbeitsoberfläche an.<br />

7.1.1 Beispiel 92: Ein Makro ausführen<br />

1. Wechseln Sie in der Datenbank 092_093Stadtlupe.mdb über die Objektleiste in die<br />

Makros.<br />

Abb 363<br />

2. Starten Sie das Makro Fenster anordnen mit einem Doppelklick.<br />

3. Die drei wichtigsten Formulare der Datenbank Stadtlupe werden nacheinander geöffnet und<br />

überlappend angeordnet. Außerdem ertönt ein Signalton und es wird eine Meldung<br />

eingeblendet.<br />

4. Bestätigen Sie die Meldung mit OK und schließen Sie die drei Formulare wieder.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 29 / 77


Abb 364 Es öffnen sich drei Fenster und eine Meldung<br />

5. Betrachten Sie das Makro Fenster anordnen in der Entwurfsansicht.<br />

Abb 365<br />

6. In der Spalte Aktion wird der eigentliche Makrobefehl aus dem Listenfeld ausgewählt.<br />

Unter Kommentar können eigene Beschreibungen zur Aktion eingetragen werden.<br />

7. Bei den Aktionsargumenten geben Sie zu einigen Aktionen noch weitere Informationen ein,<br />

damit die Kommandos sinnvoll durchgeführt werden können, beispielsweise den<br />

Formularnamen eines zu öffnenden Formulars.<br />

8. Klicken Sie auf die erste Aktion ÖffnenFormular in der Aktionsliste. Im Bereich<br />

Aktionsargumente erscheint im Feld Formularname Aufträge. Dies ist der Name des zu<br />

öffnenden Formulars.<br />

Abb 366 <strong>Das</strong> Makro Fenster anordnen<br />

Über die Aktionen der Makros können in <strong>Access</strong> wichtige Aufgaben durchgeführt werden. Viele<br />

der Dinge, die sonst mit der Tastatur oder der Maus erledigt werden, erreichen Sie hierüber. Dazu<br />

kommen noch Befehle zur Ablaufsteuerung. Eine Sonderstellung nimmt die Aktion<br />

AusführenBefehl ein. Über diese können Sie tatsächlich sämtliche Befehle aller <strong>Access</strong> Menüs<br />

erreichen. Zu dieser Aktion gehört folglich eine recht umfangreiche Befehlsliste. Die Namen der<br />

Befehle lassen sich in der Regel aus den Menü- und Befehlsnamen ableiten. FensterÜberlappend ist<br />

eben im Menü Fenster zu finden und der Befehl im Menü hat den Namen Überlappend.<br />

<strong>Das</strong> nächste Beispiel macht Sie mit den Arbeitschritten vertraut, die notwendig sind, wenn Sie ein<br />

Makro selbst anlegen möchten.<br />

7.1.2 Beispiel 93: Ein einfaches Makro erstellen<br />

1. Die Datenbank 092_093Stadtlupe.mdb ist geöffnet.<br />

2. Rufen Sie den Makroeditor auf, indem Sie in der Objektleiste auf Makros und dann auf Neu<br />

klicken.<br />

Abb 367<br />

3. Klicken Sie in die erste Zelle in der ersten Spalte (Aktion) und wählen Sie über den kleinen<br />

Pfeil am rechten Rand aus dem Auswahlmenü die Aktion ÖffnenFormular.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 30 / 77


4. Wählen Sie ebenso aus dem Listenfeld Formularname das Formular Aufträge.<br />

5. Achten Sie in den Aktionsargumenten darauf, dass unter Ansicht Formular und unter<br />

Fenstermodus Dialog eingestellt ist. So erscheint das Formular in der üblichen Ansicht, aber<br />

man kann es nicht verlassen, ohne es zu schließen.<br />

6. Bevor Sie ein Makro starten können, müssen Sie es speichern. Sichern Sie das Makro unter<br />

dem Namen Aufträge bearbeiten.<br />

Abb 368<br />

7. Starten Sie das Makro jetzt über das Symbol Ausführen. <strong>Das</strong> Formular wird angezeigt und<br />

das Bearbeiten von Aufträgen ist möglich. Sie müssen das Formular wieder schließen, bevor<br />

Sie etwas anderes in <strong>Access</strong> unternehmen können.<br />

Abb 369<br />

8. Fügen Sie vor der Aktion ÖffnenFormular eine leere Zeile ein. Die Aktion soll hier<br />

Meldung sein. Als Meldungstext geben Sie unter Aktionsargumente Sie können jetzt<br />

Aufträge bearbeiten! ein.<br />

Abb 370<br />

9. Testen Sie das Makro noch einmal. Es erscheint am Anfang eine Meldung mit dem Text,<br />

den Sie eingegeben haben.<br />

Abb 371<br />

Abb 372<br />

10. Zu Dokumentationszwecken soll die Definition des Makros ausgedruckt werden. Klicken<br />

Sie auf das Symbol Seitenansicht.<br />

Abb 373<br />

11. Entfernen Sie in der Dialogbox die Häkchen vor Eigenschaften und Berechtigungen…<br />

Abb 374<br />

12. Nach OK erscheint die Makro-Dokumentation in der Seitenansicht. Drucken Sie das Makro<br />

und schließen Sie die Datenbank anschließend.<br />

Für viele Anwendungen ist ein Startmakro sehr hilfreich, welches die Arbeitsumgebung für einen<br />

Benutzer beim Öffnen der Datenbank einrichtet. Wenn ein Makro automatisch beim Öffnen der<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 31 / 77


Datenbank ausgeführt werden soll, so geben Sie diesem den Namen Autoexec. So können Sie<br />

beispielsweise bestimmte Formulare schon beim Start öffnen.<br />

7.1.3 Beispiel 94: Makro automatisch beim Öffnen der<br />

Datenbank ausführen (Autoexec)<br />

1. Die Datenbank 094Stadtlupe.mdb ist geöffnet.<br />

2. Sie möchten im Datenbankfenster eine Kopie des im vorigen Beispiel erstellten Makros<br />

Aufträge bearbeiten erstellen.<br />

3. Klicken Sie mit der rechten Maustaste auf das Makro Aufträge bearbeiten und wählen Sie<br />

Kopieren.<br />

4. Klicken Sie auf Einfügen und geben Sie als Makronamen Autoexec ein.<br />

Abb 375<br />

5. Schließen Sie die Datenbank und öffnen Sie diese gleich wieder.<br />

6. Beim Öffnen der Datenbank wird das Makro Autoexec sofort gestartet und alle darin<br />

enthaltenen Aktionen werden ausgeführt.<br />

7. Deaktivieren Sie das Makro wieder, indem Sie es in Autoexec (Test) umbenennen und<br />

schließen Sie die Datenbank.<br />

Abb 376<br />

Eine weitere Arbeitserleichterung in <strong>Access</strong> sind eigene Kurzbefehle. Damit können beispielsweise<br />

die wichtigsten Formulare Ihrer Datenbank per Tastenkombination aufgerufen werden. Im<br />

folgenden Beispiel werden Kurzbefehle eingerichtet, um die wichtigsten Formulare über eine<br />

Tastenkombination aufzurufen. Damit Sie dies tun können, müssen Sie im Makroeditor einzelnen<br />

Aktionen oder Aktionsabschnitten Namen zuweisen. <strong>Das</strong> folgende Beispiel stellt vor, wie das<br />

funktioniert.<br />

7.1.4 Beispiel 95: Makros über Tastenkombinationen aufrufen<br />

1. Die Datenbank 095Stadtlupe.mdb ist geöffnet. Klicken Sie in der Objektleiste auf Makros<br />

und dann auf Neu.<br />

2. Aktivieren Sie über das Symbol Ansicht/Makronamen die zusätzliche Spalte Makroname im<br />

Makroeditor.<br />

3. Geben Sie als ersten Makronamen ^ a ein. Um kein â zu erzeugen, müssen Sie unmittelbar<br />

nach dem ^ ein Leerzeichen eingeben. ^a ist die abkürzende Schreibweise für die<br />

Tastenkombination (Strg)+(a). Wählen Sie als Aktion ÖffnenFormular und aus dem<br />

Listenfeld Formularnamen das Formular Aufträge.<br />

4. Über ^r soll dem entsprechend das Formular Rechnungen drucken aufgerufen werden<br />

können.<br />

5. Um über die Funktionstaste (F10) das aktuelle Fenster zu maximieren, geben Sie als<br />

Makronamen {F10} ein und wählen die Aktion Maximieren aus.<br />

6. Mit (F9) soll die ursprüngliche Fenstergröße wiederhergestellt werden können.<br />

7. Geben Sie in die dritte Spalte die entsprechenden Kommentare ein.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 32 / 77


Abb 377<br />

8. Speichern Sie das neue Makro unter AutoKeys . Existiert ein Makro dieses Namens in Ihrer<br />

Datenbank, so wird anhand der Einträge im Makro die Tastaturbelegung vorgenommen. Die<br />

Aktivierung beginnt beim Speichern.<br />

9. Testen Sie die neu definierten Kurzbefehle in der Datenbank, beispielsweise mit (Strg)+(a)<br />

oder (F10).<br />

(Strg) wird im Makronamen mit ^ gekennzeichnet, (Umschalt) mit +.<br />

Hin und wieder kann es natürlich vorkommen, dass ein Makro nicht ganz so funktioniert, wie Sie<br />

sich das eigentlich vorgestellt haben. Besteht das Makro aus mehreren Aktionen, so kann es<br />

hilfreich sein, wenn Sie den Ablauf Schritt für Schritt nachvollziehen und beobachten, was bei jeder<br />

einzelnen Aktion genau passiert.<br />

7.1.5 Beispiel 96: Makros schrittweise zum Testen ausführen<br />

1. Die Datenbank 096_097Stadtlupe.mdb ist geöffnet.<br />

2. Öffnen Sie das Makro Fenster anordnen in der Entwurfsansicht. <strong>Das</strong> Makro besteht aus<br />

sechs Aktionen, die nacheinander ausgeführt werden.<br />

3. Starten Sie das Makro nicht, wie gewohnt, direkt, sondern schalten Sie zunächst den<br />

Einzelschrittmodus über den Menübefehl Ausführen/Einzelschritt oder das Symbol<br />

Einzelschritt ein.<br />

Abb 378<br />

4. Starten Sie das Makro jetzt über das Symbol Ausführen.<br />

Abb 379<br />

5. Vor dem Ausführen der ersten Makroaktion erscheint ein Dialogfeld. Dieses zeigt, was im<br />

nächsten Schritt passieren soll. In diesem Fall soll die Aktion ÖffnenFormular ausgeführt<br />

werden. Zusätzlich wird angezeigt, welche Werte, das heißt Argumente die Aktion<br />

verwenden wird. Hier ist der Name des Formulars Aufträge zu erkennen.<br />

Abb 380<br />

6. Sie haben jetzt drei Möglichkeiten zur Verfügung, um die Makroausführung zu steuern. Mit<br />

Schritt starten Sie die angezeigte Aktion und gelangen anschließend zur nächsten Aktion.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 33 / 77


Mit Anhalten beenden Sie das Makro. Mit Weiter verlassen Sie den Einzelschrittmodus und<br />

lassen das gesamte Makro bis zum Ende durchlaufen.<br />

7. Klicken Sie auf Schritt. Die Aktion wird ausgeführt. <strong>Das</strong> Formular Aufträge öffnet sich und<br />

darüber erscheint erneut das Einzelschritt-Dialogfeld. Es zeigt an, dass im nächsten Schritt<br />

das Formular Hefte geöffnet werden soll.<br />

Abb 381<br />

8. Klicken Sie einfach im Einzelschrittmodus sämtliche Aktionen durch.<br />

9. Schalten Sie jetzt den Einzelschrittmodus wieder aus und schließen Sie anschließend das<br />

Makro wieder. Schließen Sie die einzelnen Fenster.<br />

Beim Arbeiten mit Makros kann es übrigens passieren, dass <strong>Access</strong> automatisch das gerade kennen<br />

gelernte Dialogfeld anzeigt. Dies geschieht dann, wenn bei der Ausführung ein Fehler auftritt. <strong>Das</strong><br />

folgende Beispiel demonstriert dies kurz.<br />

7.1.6 Beispiel 97: Infofeld nach einem Makrofehler<br />

1. Die Datei 096_097Stadtlupe.mdb ist geöffnet.<br />

2. Klicken Sie mit der rechten Maustaste auf das Makro Fenster anordnen und wählen Sie aus<br />

dem Kontextmenü Kopieren. Klicken Sie in der Symbolleiste auf Einfügen und nennen Sie<br />

die Kopie Fenster anordnen (mit Fehler).<br />

3. Öffnen Sie das Makro Fenster anordnen (mit Fehler) in der Entwurfsansicht.<br />

4. Ändern Sie in der dritten Aktion (Öffnen Formular) das Aktionsargument Formularname.<br />

Abb 382<br />

5. Führen Sie das Makro Fenster anordnen (mit Fehler) aus.<br />

6. Die ersten beiden Formulare öffnen sich, wie gewohnt. Danach wird eine Fehlermeldung<br />

angezeigt. <strong>Das</strong> dritte Formular ist nicht vorhanden.<br />

7. Nach dem Bestätigen der Fehlermeldung erscheint das Dialogfeld Aktion ist fehlgeschlagen.<br />

Abb 383<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 34 / 77


8. Dieses entspricht der Anzeige im Einzelschrittmodus. Allerdings bietet es Ihnen nur die<br />

Möglichkeit, sich über den Makronamen, die gerade ausgeführte Aktion und die Parameter<br />

zu informieren und anschließend das Makro anzuhalten.<br />

7.2 Makros in Formularen und Berichten<br />

Häufig werden Makros in Formularen eingesetzt und mit Schaltflächen verknüpft. So können Sie<br />

Ihre Formulare und Berichte sehr leicht mit benutzerfreundlichen Funktionen versehen. Ihre selbst<br />

definierten Makros werden automatisch aufgerufen, wenn im Formular oder Bericht bestimmte<br />

Ereignisse eintreten. <strong>Das</strong> kann zum Beispiel das Klicken eines Benutzers auf eine Schaltfläche sein<br />

(Ereignis: Beim Klicken) oder die Tatsache, dass ein Berichtsbereich gerade für den Druck<br />

aufbereitet wird (Ereignis: Beim Drucken).<br />

Denken Sie daran, dass Sie beim Öffnen von verknüpften Formularen oder Berichten die<br />

Möglichkeit haben, die dargestellten Inhalte zu synchronisieren. Die Ausdrücke, die hier benötigt<br />

werden, haben Sie bereits im Kapitel „Ausdrücke“ kennen gelernt. Wir stellen Sie in den nächsten<br />

beiden Beispielen im Zusammenhang mit der Erstellung von Makros vor. Zunächst soll es dem<br />

Benutzer ermöglicht werden, aus dem Auftragsformular heraus die vollständigen<br />

Kundeninformationen zu betrachten.<br />

7.2.1 Beispiel 98: Ein verknüpftes Formular über eine<br />

Schaltfläche öffnen<br />

1. Die Datenbank 098Stadtlupe.mdb ist geöffnet.<br />

2. Öffnen Sie das Formular Aufträge in der Entwurfsansicht und aktivieren Sie über das Menü<br />

Ansicht die Toolbox , falls diese nicht sichtbar ist.<br />

Abb 384<br />

3. Achten Sie darauf, dass das Symbol Steuerelement-Assistenten nicht gedrückt ist.<br />

Abb 385<br />

4. Wählen Sie das Werkzeug Befehlsschaltfläche aus. Ein Klick auf Ihr Formular erstellt eine<br />

Schaltfläche. Positionieren Sie diese am besten unter dem Listenfeld Anzeigenformat.<br />

Vergrößern Sie die Schaltfläche etwas.<br />

Abb 386<br />

5. Doppelklicken Sie auf die Beschriftung der Schaltfläche und ändern Sie diese in &Kunde<br />

anzeigen. Über das &-Symbol erzeugen Sie einen so genannten Hotkey für das Formular, d.<br />

h., Sie werden das Makro hinter der Schaltfläche auch über das Tastenkürzel (Alt)+(k)<br />

ansprechen können.<br />

6. Nach (Return) klicken Sie mit der rechten Maustaste auf die Schaltfläche und wählen aus<br />

dem Kontextmenü Ereignis .<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 35 / 77


Abb 387<br />

7. Im Dialogfeld markieren Sie die Option Makro-Generator. Mit OK geht es weiter.<br />

Abb 388<br />

8. Speichern Sie das neue Makro unter KundenInfo und wählen Sie als Aktion ÖffnenFormular<br />

aus. Als Formularname wählen Sie Kunden, als Datenmodus Nur lesen.<br />

Abb 389<br />

9. Über das Feld Bedingung legen Sie die Verknüpfung für die angezeigten Daten im<br />

Kundenformular fest. Geben Sie [Kunden-Nr]=[Formulare]![Aufträge]![Kunden-Nr] ein.<br />

Damit wird der zum aktuellen Auftrag passende Kundendatensatz ausgewählt.<br />

10. Schließen Sie das Makro und speichern Sie die Änderungen.<br />

11. Wechseln Sie in die Formularansicht und klicken Sie auf die Schaltfläche Kunde anzeigen.<br />

Zum Auftrag 1 erscheinen die Kundeninfos des Kunden 2 im geöffneten Kundenformular.<br />

Abb 390<br />

12. Schließen Sie das Kundenformular wieder und öffnen Sie es dieses Mal über die Hotkey -<br />

Tastenkombination (Alt)+(k).<br />

<strong>Das</strong> Öffnen eines Berichtes mit der Übergabe einer Auswahlbedingung verläuft im Prinzip analog<br />

zum gerade gezeigten Verfahren. Zu einem Auftrag soll nun die passende Rechnung angezeigt<br />

werden.<br />

7.2.2 Beispiel 99: Einen gefilterten Bericht über eine<br />

Befehlsschaltfläche öffnen<br />

1. Mit Hilfe eines Makros soll in der Datenbank 099Stadtlupe.mdb die zu einem angezeigten<br />

Auftrag passende Rechnung gedruckt werden.<br />

2. Öffnen Sie das Formular Aufträge in der Entwurfsansicht.<br />

3. Fügen Sie mit dem Werkzeug Befehlsschaltfläche aus der Toolbox unterhalb der<br />

Schaltfläche Kunde anzeigen eine neue Schaltfläche hinzu.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 36 / 77


Abb 391<br />

4. Beschriften Sie die Schaltfläche mit &Rechnung drucken und drücken Sie (Return).<br />

5. Klicken Sie mit der rechten Maustaste auf die Schaltfläche und wählen Sie Eigenschaften.<br />

6. Wechseln Sie in das Register Ereignis. Aktivieren Sie im Feld Beim Klicken den Makro-<br />

Generator.<br />

Abb 392<br />

7. Speichern Sie das neue Makro unter Rechnung drucken und wählen Sie als Aktion<br />

ÖffnenBericht aus. Als Berichtsname wählen Sie Rechnungen, als Ansicht Seitenansicht.<br />

Damit wird der Bericht nicht sofort zum Drucker geschickt, sondern zunächst in der<br />

Vorschau gezeigt.<br />

8. Als Bedingung geben Sie [Auftrags-Nr]=[Formulare]![Aufträge]![Auftrags-Nr] ein.<br />

Speichern und schließen Sie das Makro und das Eigenschaften-Fenster.<br />

9. Wechseln Sie in die Formularansicht, klicken Sie auf die Schaltfläche Rechnung drucken<br />

und wählen Sie die Rechnungen aus, die Sie in der Seitenansicht betrachten möchten.<br />

10. Speichern Sie die Änderungen im Formular ab und schließen Sie die Datenbank.<br />

Abb 393 <strong>Das</strong> Makro Rechnung drucken<br />

Bei Ihrer Arbeit an <strong>Access</strong>-Applikationen wird es im Laufe der Zeit vorkommen, dass Sie für<br />

einzelne Formulare bzw. Berichte eine größere Anzahl von Makros entwikkeln. Damit Sie dabei<br />

den Überblick behalten, können Sie Makros, die zueinander gehören, also zum Beispiel die Makros<br />

eines Formulars, in einem gemeinsamen Makroobjekt zusammenfassen. Damit die Makros dennoch<br />

einzeln angesprochen und ausgeführt werden können, bekommen diese innerhalb des<br />

„Supermakros“ jeweils eigene Namen. <strong>Das</strong> nächste Beispiel stellt diese Methode vor. Die beiden<br />

Makros aus den letzten Beispielen sowie ein neues Makro werden in einem gemeinsamen<br />

Makroobjekt verwaltet.<br />

7.2.3 Beispiel 100: Makrogruppen anlegen<br />

1. Legen Sie in der Datenbank 100Stadtlupe.mdb ein neues Makro an und blenden Sie über<br />

Ansicht/Makronamen die neue Spalte Makroname ein.<br />

Abb 394<br />

2. Geben Sie in der ersten Zeile in der Spalte Makroname Hinweis ein.<br />

Abb 395<br />

3. Die Aktion soll Wiederherstellen sein. Damit wird das Formular immer in seiner<br />

ursprünglichen Größe angezeigt. Ansonsten würde die Einstellung der letzten Benutzung<br />

verwendet.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 37 / 77


4. Bei der zweiten Zeile lassen Sie die Spalte Makroname leer. Geben Sie als Meldung Bitte<br />

drucken Sie die Rechnung sofort! ein. Sorgen Sie für einen Signalton und legen Sie als Typ<br />

Information fest.<br />

Abb 396 Die Aktionsargumente des Makros Meldung<br />

5. Geben Sie in der dritte Zeile als Makronamen Kundeninfo ein.<br />

6. Wählen Sie als Aktion ÖffnenFormular aus. Als Formularnamen wählen Sie Kunden, als<br />

Datenmodus Nur lesen. Geben Sie in das Feld Bedingung den Ausdruck [Kunden-<br />

Nr]=[Formulare]![Aufträge]![Kunden-Nr] ein.<br />

7. Geben Sie in der vierten Zeile als Makronamen Rechnung ein.<br />

8. Wählen Sie als Aktion ÖffnenBericht aus. Als Berichtsnamen wählen Sie Rechnungen, als<br />

Ansicht Seitenansicht. In das Feld Bedingung geben Sie [Auftrags-<br />

Nr]=[Formulare]![Aufträge]![Auftrags-Nr] ein.<br />

9. Sie haben jetzt drei Makrogruppen angelegt. Die erste enthält zwei Aktionen. Die anderen<br />

jeweils eine.<br />

Abb 397<br />

10. Speichern Sie das neue Makro unter dem Namen Aufträge ab und schließen Sie es.<br />

Jetzt muss noch das Formular Aufträge so angepasst werden, dass es die Makrogruppen aus dem<br />

Makro Aufträge verwendet.<br />

7.2.4 Beispiel 101: Makrogruppen zuweisen<br />

1. Öffnen Sie in der Datenbank 101Stadtlupe.mdb das Formular Aufträge in der<br />

Entwurfsansicht und über Ansicht/Eigenschaften das Eigenschaftenfenster des Formulars.<br />

Wechseln Sie in das Register Ereignis.<br />

2. Klicken Sie in das Feld für das Ereignis Beim Öffnen und öffnen Sie die Auswahlliste.<br />

Unter den angezeigten Makros befinden sich auch die Makrogruppen des Makros Aufträge.<br />

Diese werden in einer Punkt-Schreibweise dargestellt. Wählen Sie die Makrogruppe<br />

Aufträge.Hinweis aus und schließen Sie das Fenster wieder.<br />

Abb 398<br />

3. Klicken Sie mit der rechten Maustaste auf die Schaltfläche Kunde anzeigen, wählen Sie<br />

Eigenschaften und ordnen Sie im Register Ereignis der Eigenschaft Beim Klicken die<br />

Makrogruppe Aufträge.Kundeninfo zu sowie dementsprechend der Schaltfläche Rechnung<br />

drucken im Register Ereignis der Eigenschaft Beim Klicken die Makrogruppe<br />

Aufträge.Rechnung.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 38 / 77


anzeigen<br />

Abb 399 Die Eigenschaften der Schaltfläche Kunde<br />

4. Speichern Sie das geänderte Formular ab.<br />

5. Wechseln Sie in die Formularansicht.<br />

6. <strong>Das</strong> Formular wird in der Entwurfsgröße angezeigt und die Meldung erscheint. Testen Sie<br />

die beiden Schaltflächen und schließen Sie die Datenbank.<br />

Makros lassen sich auch äußerst vorteilhaft innerhalb von Berichten einsetzen. Tatsächlich sind<br />

bestimmte Standardaufgaben ohne den Einsatz von Makros nicht lösbar. <strong>Das</strong> folgende Beispiel<br />

demonstriert, wie Sie innerhalb eines Berichtsausdrucks die Seitennummerierung neu beginnen<br />

können. Im Bericht Rechnungen, welcher viele Rechungen „am Stück“ druckt, sollen die<br />

Seitennummern innerhalb einer Rechnung fortlaufend sein und mit jeder Rechnung neu beginnen.<br />

7.2.5 Beispiel 102: Seitennummerierung in einem Bericht<br />

zurücksetzen<br />

1. Öffnen Sie in der Datenbank 102Stadtlupe.mdb den Bericht Rechnungen im Entwurf.<br />

2. Betrachten Sie die Eigenschaften des Berichtsbereichs Auftrags-Nr – Kopfbereich, indem<br />

Sie diesen mit der rechten Maustaste anklicken und aus dem Kontextmenü Eigenschaften<br />

wählen.<br />

3. Aktivieren Sie im Register Ereignis für das Ereignis Beim Drucken den Makro-Generator.<br />

4. Speichern Sie das Makro unter Seitenzahl zurücksetzen.<br />

5. Wählen Sie als Aktion SetzenWert . Im Bereich Aktionselemente geben Sie als Element<br />

[Seite] an. Damit beziehen Sie sich auf die Seitenzahl-Eigenschaft eines Berichtes. Legen<br />

Sie als Ausdruck 1 fest. Speichern und schließen Sie das Makro und den Bericht.<br />

Abb 400 <strong>Das</strong> Makro Seitenzahl zurücksetzen<br />

6. Öffnen Sie über das Formular Rechnungen drucken den Bericht. Geben Sie als Erste<br />

Auftragsnummer 1 und als Letzte Auftragsnummer 9 ein.<br />

Abb 401<br />

7. Funktioniert das Zurücksetzen der Seitennummern? Betrachten Sie die Seitennummerierung<br />

der verschiedenen Rechnungen.<br />

8. Die Rechnung zur Auftragsnummer 4 erstreckt sich über zwei Seiten. Kontrollieren Sie auch<br />

hier die Seitenzahlen.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 39 / 77


<strong>Das</strong> folgende Beispiel demonstriert, wie Sie in Abhängigkeit von einer Benutzereingabe in einem<br />

Formular an einer anderen Stelle einen Feldinhalt vorgeben können. Dies bietet Ihnen noch<br />

flexiblere Möglichkeiten als die Eigenschaft Standardwert, die Sie sicher schon kennen und lässt<br />

sich auch gut mit dieser kombinieren. Im Formular Hefte sollen auf der Basis eines vorgegebenen<br />

Wertes für das Datum Redaktionsschluss Vorschläge in den Feldern Druckdatum und<br />

Erscheinungstermin erscheinen.<br />

7.2.6 Beispiel 103: Einen Feldinhalt in Abhängigkeit von einer<br />

Eingabe setzen<br />

1. Öffnen Sie in der Datenbank 103Stadtlupe.mdb das Formular Hefte in der<br />

Entwurfsansicht.<br />

2. Rufen Sie über das Kontextmenü die Eigenschaften des Feldes Redaktionsschluss auf.<br />

Abb 402<br />

3. Aktivieren Sie im Register Ereignis für das Ereignis Nach Aktualisierung den Makro-<br />

Generator.<br />

4. Speichern Sie das neue Makro unter Termine vorschlagen.<br />

5. Wählen Sie als Aktion SetzenWert.<br />

6. Im Feld Element geben Sie Druckdatum an. Dies ist das Feld, das in Abhängigkeit von der<br />

Eingabe in Redaktionsschluss ausgefüllt werden soll.<br />

7. Als Ausdruck, der den Drucktermin berechnet, geben Sie [Redaktionsschluss]+ 7 ein. Es<br />

soll also sieben Tage nach dem Redaktionsschluss gedruckt werden.<br />

8. Geben Sie analog eine Berechnungsvorschrift für das Feld Erscheinungstermin an. Der<br />

Erscheinungstermin liegt drei Tage nach dem Druckdatum.<br />

Abb 403 <strong>Das</strong> Makro Termine vorschlagen<br />

9. Speichern und schließen Sie das Makro und das Eigenschaftenfenster.<br />

10. Wechseln Sie nun in die Formularansicht und probieren Sie das Makro aus, indem Sie ein<br />

neues Heft anlegen. Die Heftnummer ist SO 06-01; das Mitarbeiterkürzel RA, die<br />

Bezeichnung Neujahr 2006; der Hefttyp Sonderheft, Redaktionsschluss ist der 27.12.2005.<br />

Abb 404 Ein neues Heft wird angelegt; Druckdatum und<br />

Erscheinungstermin werden automatisch eingetragen<br />

11. Überprüfen Sie Ihren Eintrag in der Tabelle Hefte und schließen Sie die Datenbank.<br />

Zur Vollständigkeit soll Ihnen an dieser Stelle der Befehlsschaltflächen-Assistent für Formulare<br />

vorgestellt werden. Sie werden feststellen, dass Sie im Grunde bereits mit den bisher angeeigneten<br />

Kenntnissen Schaltflächen auch ohne diesen Assistenten aufbauen können. <strong>Das</strong> folgende Beispiel<br />

dient daher eher der Demonstration. Vielleicht erhalten Sie jedoch über das Kennen lernen der<br />

Möglichkeit des Assistenten weitere Anregungen für den Einsatz von Makros.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 40 / 77


7.2.7 Beispiel 104: Den Befehlsschaltflächen-Assistenten<br />

einsetzen<br />

1. Öffnen Sie in der Datenbank 104Stadtlupe.mdb das Formular Kunden im Entwurf und<br />

zeigen Sie ggf. über Ansicht die Toolbox an.<br />

2. Aktivieren Sie den Steuerelement-Assistenten .<br />

Abb 405<br />

3. Legen Sie am unteren Ende des Formulars unterhalb des Feldes Konditionen eine neue<br />

Befehlschaltfläche an.<br />

Abb 406<br />

Abb 407<br />

4. Sobald Sie die Schaltfläche eingefügt haben, öffnet sich der Befehlsschaltflächen-Assistent .<br />

5. Wählen Sie die Kategorie Formularoperationen aus. Klicken Sie die Option Formular öffnen<br />

an. Wechseln Sie mit Weiter auf die nächste Seite des Assistenten.<br />

Abb 408<br />

6. Klicken Sie den Formularnamen Aufträge an und danach Weiter.<br />

7. Aktivieren Sie auf der nächsten Seite die Option <strong>Das</strong> Formular öffnen und bestimmte Daten<br />

suchen und anzeigen aus – Weiter.<br />

8. Markieren Sie aus dem Formular Kunden das Feld Kunden-Nr und aus dem Formular<br />

Aufträge das entsprechende Feld Kunden-Nr und klikken Sie anschließend auf die<br />

Schaltfläche in der Mitte.<br />

Abb 409<br />

9. Nach Weiter aktivieren Sie die Option Text, geben als Beschriftung den Text Aufträge<br />

anzeigen ein und klicken wieder auf Weiter.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 41 / 77


10. Geben Sie als Namen der Schaltfläche den Text Aufträge ein. Mit Fertig stellen schließen<br />

Sie den Assistenten ab.<br />

11. Testen Sie die neue Schaltfläche, indem Sie in die Formularansicht wechseln und die<br />

Schaltfläche anklicken. Zum Kunden Nummer 1 sollte der Auftrag 7 angezeigt werden.<br />

7.3 Bedingungen in Makros verwenden<br />

Die Makrobeispiele, die Sie bis jetzt kennen gelernt haben, waren einfache „Geradeaus-Makros“.<br />

Die Befehle wurden in der Reihenfolge ihres Vorkommens in der Aktionsliste von oben nach unten<br />

abgearbeitet. Der Ablauf konnte also nicht beeinflusst werden. Durch das Setzen von Bedingungen<br />

können Sie den Programmablauf steuern, um auf Benutzeraktionen zu reagieren.<br />

<strong>Das</strong> nächste Beispiel erweitert das Makro Rechnung drucken. Der Benutzer wird zunächst gefragt,<br />

ob der Drucker bereit ist, also ob zum Beispiel das korrekte Papier eingelegt ist. Erst nach einer<br />

positiven Antwort wird der Druckvorgang tatsächlich gestartet und die Rechnung direkt auf dem<br />

angeschlossenen Drucker ausgegeben.<br />

Etwas überraschend ist sicherlich die Methode, über die in <strong>Access</strong>-Makros eine Benutzerauswahl<br />

abgefragt werden kann. Die Funktion Meldung, welche von <strong>Access</strong> zur Verfügung gestellt wird, ist<br />

der Programmierung mit Visual Basic for Applications entlehnt. In VBA heißt sie MsgBox. Sie hat<br />

den folgenden Aufbau: Meldung (Nachricht; Schaltflächen, Titel). Dabei stellt Nachricht die<br />

eigentliche Anfrage an den Benutzer dar, Schaltflächen ist ein Zahlencode, über den festgelegt wird,<br />

welche Schaltflächen im Dialogfeld erscheinen sollen: 0 steht für „OK“; 1 für „OK“ und<br />

„Abbrechen“; 4 für „Ja“ und „Nein“; u. s. w. Titel ist wieder eine Textinformation. Damit kann der<br />

Fenstertitel eingestellt werden. Da es sich bei Meldung um eine Funktion handelt, wird nach der<br />

Anzeige eines entsprechenden Fensters und der Benutzerreaktion ein Ergebnis zurückgegeben.<br />

Auch dieses ist wieder codiert: 1 steht für „OK“; 2 steht für „Abbrechen“; 6 für „Ja“ und 7 für<br />

„Nein“. Weitere Informationen zur Handhabung und zu den Codes finden Sie in der <strong>Access</strong>-Hilfe.<br />

Sie müssen dort allerdings nach MsgBox suchen, um die Funktion zu finden!<br />

7.3.1 Beispiel 105: Ein Makro mit einer Bedingung versehen<br />

1. Öffnen Sie in der Datenbank 105Stadtlupe.mdb das bereits erstellte Makro Rechnungen<br />

drucken start im Entwurf.<br />

Abb 410<br />

2. Blenden Sie über Ansicht/Bedingungen die Bedingungsspalte des Makroentwurfs ein.<br />

Abb 411<br />

3. Tragen Sie unter Bedingung Meldung("Drucker bereit?";4)=6 ein. Diese Funktion erzeugt<br />

eine Meldungsbox mit einer Abfrage an den Benutzer, die dieser mit Ja oder Nein<br />

beantworten kann. 6 steht für Ja, 7 für Nein.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 42 / 77


Abb 412<br />

4. Speichern und schließen Sie das Makro.<br />

5. Öffnen Sie das Formular Rechnungen drukken in der Formularansicht und klicken Sie auf<br />

die Schaltfläche Drucken. Vor dem Anzeigen des Berichtes erscheint nun zunächst die<br />

Nachfrage.<br />

6. Schließen Sie die Datenbank.<br />

Abb 413<br />

Die Vergleichsausdrücke in Makro-Entscheidungen können natürlich auch auf der Grundlage von<br />

Feldinhalten gebildet werden. Außerdem können die bedingten Teile eines Makros aus mehr als<br />

einer Aktion bestehen. Im nächsten Beispiel wird die Berechnung von Druck- und<br />

Erscheinungstermin verfeinert. Ein berechneter Drucktermin darf nicht auf einen Sonntag fallen. In<br />

diesem Fall wird der Drucktermin einen Tag vorverlegt. Der Erscheinungstermin darf ebenfalls<br />

nicht auf einen Sonntag fallen. Er wird in einem solchen Fall auf den Montag gelegt.<br />

7.3.2 Beispiel 106: Bedingung auf der Grundlage eines<br />

berechneten Ausdrucks<br />

1. Öffnen Sie in der Datenbank 106Stadtlupe.mdb das Formular Hefte in der<br />

Entwurfsansicht.<br />

2. Klicken Sie mit der rechten Maustaste auf das Textfeld Redaktionsschluss und wählen Sie<br />

Eigenschaften.<br />

3. Öffnen Sie im Register Ereignis im Feld Nach Aktualisierung das Makro Termin<br />

vorschlagen.<br />

4. Blenden Sie über Ansicht die Spalte Bedingung ein.<br />

5. Fügen Sie über Einfügen/Zeilen hinter der ersten Zeile ein neue ein.<br />

Abb 414<br />

6. Als Bedingung tragen Sie in die neue Zeile den Ausdruck Wochentag([Druckdatum])=1<br />

ein. Damit testen Sie, ob das berechnete Datum ein Sonntag ist. Geben Sie als Aktion<br />

SetzenWert ein. In den Aktionsargumenten geben Sie als Element [Druckdatum] und als<br />

Ausdruck [Druckdatum]-1 ein.<br />

7. Fügen Sie hinter der neuen Zeile eine weitere ein. Unter Bedingung geben Sie das<br />

Fortsetzungszeichen „…“ ein. Die drei Punkte legen fest, dass bei gültiger Bedingung der<br />

Vorgängerzeile(n) auch diese Aktion ausgeführt werden soll.<br />

8. Die Aktion lautet Meldung. Der anzuzeigende Text: Drucktermin wurde korrigiert!<br />

9. Geben Sie unter der vierten Zeile die Bedingung Wochentag([Erscheinungstermin])=1 ein.<br />

Über SetzenWert verlegen Sie das Erscheinungsdatum einen Tag nach hinten.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 43 / 77


Abb 415<br />

10. Erstellen Sie noch das Makro für eine weitere Meldung: Erscheinungstermin wurde<br />

korrigiert! Verwenden Sie auch hier die Fortsetzungszeichen.<br />

11. Testen die das Makro in der Formularansicht. Beim Redaktionsschluss 27.10.2005 sollte das<br />

Druckdatum verlegt werden.<br />

Abb 416<br />

<strong>Das</strong> nächste Beispiel zeigt eine weitere Einsatzmöglichkeit für Makros. Es geht darum, auf den<br />

Rechnungen der Stadtlupe, welche sich über mehrere Seiten erstrekken, im Seitenfuß eine<br />

Zwischensumme anzuzeigen. Auf der Folgeseite muss ein entsprechender Übertrag dargestellt<br />

werden. Dieses soll natürlich nicht für Rechnungen gelten, die nur aus einer einzigen Seite<br />

bestehen. Um diese Funktion zu realisieren, müssen verschiedene Makrotechniken, die Sie bisher<br />

kennen gelernt haben, miteinander kombiniert werden. Die folgenden drei Beispiele zeigen, wie<br />

man dabei vorgehen kann.<br />

7.3.3 Beispiel 107: Berichtsfelder für Zwischensumme und<br />

Übertrag vorbereiten<br />

1. Öffnen Sie in der Datenbank 107Stadtlupe.mdb den Entwurf des Berichtes Rechnungen.<br />

2. Fügen Sie im Seitenkopf, unterhalb der durchgezogenen Linie, am linken Berichtsrand ein<br />

neues Textfeld ein.<br />

Abb 417<br />

3. Geben Sie im Bezeichnungsfeld Übertrag von vorheriger Seite ein. Klikken Sie doppelt auf<br />

das Textfeld und geben Sie im Register Alle im Feld Name Übertrag ein, im Feld<br />

Steuerelementinhalt =[Zwischensumme] und als Sichtbar Nein. Schließen Sie das Fenster<br />

und positionieren Sie beide Felder nebeneinander.<br />

Abb 418<br />

Hinweis: Sie können das Bezeichnungs- und das Textfeld getrennt voneinander verschieben,<br />

indem Sie das entsprechende Feld markieren und dann in die linke obere Ecke klicken. Der<br />

Mauszeiger wird zur Hand. Verschieben Sie das entsprechende Feld mit gedrückter<br />

Maustaste.<br />

4. Formatieren Sie beide Felder kursiv, indem Sie diese durch einfaches Anklicken markieren<br />

und dann auf das entsprechende Symbol in der Symbolleiste klicken.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 44 / 77


Abb 419<br />

Abb 420 Im Seitenkopf wird ein Textfeld eingefügt<br />

5. Legen Sie im Seitenfuß, ebenfalls am linken Berichtsrand, ein weiteres Textfeld an. Die<br />

Beschriftung des Bezeichnungsfeldes lautet Zwischensumme: Klicken Sie doppelt auf das<br />

Textfeld und wählen Sie im Register Alle als Name Zwischensumme und als Sichtbar<br />

ebenfalls Nein. Formatieren Sie die beiden Felder ebenfalls kursiv.<br />

Abb 421<br />

6. Speichern Sie den Bericht.<br />

Um die Zwischensumme zu bilden und die Felder ein- bzw. auszublenden, müssen jetzt<br />

verschiedene Makros angelegt werden. Diese sollen in Makrogruppen innerhalb des neuen Makros<br />

Rechnungen zusammengefasst werden.<br />

7.3.4 Beispiel 108: Berichtsfelder über Makros berechnen und<br />

anzeigen<br />

1. Der Entwurf des Berichtes Rechnungen in der Datenbank 108Stadtlupe.mdb ist geöffnet.<br />

2. Klicken Sie mit der rechten Maustaste auf den Berichtsbereich Auftrags-Nr Kopfbereich und<br />

wählen Sie aus dem Kontextmenü den Befehl Ereignis und anschließend die Option Makro-<br />

Generator. Legen Sie ein neues Makro unter dem Makronamen Rechnungen an.<br />

3. Zeigen Sie über Ansicht die Makronamen an.<br />

4. <strong>Das</strong> erste Makro erhält den Namen AuftragsKopf. Die erste Aktion SetzenWert setzt den<br />

Wert des Feldes [Seite] auf 1. Geben Sie dazu unter den Aktionsargumenten im Feld<br />

Element [Seite] ein, im Feld Ausdruck 1.<br />

festgelegt.<br />

Abb 422 Die Aktion des Makros AuftragsKopf wird<br />

5. Legen Sie ein zweites Makro mit dem Namen Addieren an. In der einzigen Aktion des<br />

Makros setzen Sie den Wert für [Zwischensumme] auf [Zwischensumme]+[Bruttopreis].<br />

6. Blenden Sie über Ansicht die Bedingungsspalte ein und nennen Sie das dritte Makro<br />

Anzeigen.<br />

7. Die Bedingung für die erste Aktion des Makros Anzeigen lautet: [Zwischensumme]>0. Die<br />

Aktion ist SetzenWert. Diese setzt die Eigenschaft [Zwischensumme].[Sichtbar] auf Wahr.<br />

8. Als Bedingung für die zweite Aktion des Makros Anzeigen setzen Sie die<br />

Fortsetzungspunkte … ein. Über SetzenWert wird die Eigenschaft [Übertrag].[Sichtbar]<br />

auf Wahr eingestellt. Damit sind die beiden Felder nur dann sichtbar, wenn es eine<br />

Zwischensumme gibt.<br />

9. Die Bedingung für die dritte Aktion lautet: [Zwischensumme]=0. Die Aktion ist<br />

SetzenWert. Diese setzt die Eigenschaft [Zwischensumme].[Sichtbar] auf Falsch.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 45 / 77


10. Als Bedingung für die vierte Aktion setzen Sie wieder die Fortsetzungspunkte … ein. Über<br />

SetzenWert wird die Eigenschaft [Übertrag].[Sichtbar] auf Falsch eingestellt. Damit sind<br />

die beiden Felder unsichtbar, wenn es keine Zwischensumme gibt.<br />

11. Ein letztes Makro bekommt den Namen AuftragsFuss. Es soll die [Zwischensumme] wieder<br />

auf 0 setzen. Füllen Sie also die Aktionsargumente in der entsprechenden Weise aus.<br />

12. Speichern und schließen Sie das Makro und den Bericht.<br />

Abb 423 Die Makrogruppen des Makros Rechnungen<br />

Die Makrogruppen müssen jetzt wieder den richtigen Ereignissen des Berichtes zugeordnet werden.<br />

7.3.5 Beispiel 109: Makrogruppen den Berichtsereignissen<br />

zuweisen<br />

1. In der Datenbank 109Stadtlupe.mdb ist der Entwurf des Berichtes Rechnungen geöffnet.<br />

2. Klicken Sie mit der rechten Maustaste auf den Berichtsbereich Auftrags-Nr Kopfbereich und<br />

wählen Sie aus dem Kontextmenü Eigenschaften.<br />

3. Weisen Sie im Register Ereignis der Eigenschaft Beim Formatieren das Makro<br />

Rechnungen.Auftragskopf zu. Damit wird bei jeder neuen Rechnungsnummer die Seitenzahl<br />

zurückgesetzt.<br />

Abb 424<br />

4. Klicken Sie jetzt mit der rechten Maustaste auf den Berichtsbereich Detailbereich, wählen<br />

Sie aus dem Kontextmenü Eigenschaften und im Register Ereignis im Feld Beim<br />

Formatieren Rechnungen.Addieren. Damit wird bei jeder Rechnungsposition die<br />

Zwischensumme um den Bruttopreis erhöht.<br />

5. Verfahren Sie ebenso mit dem Berichtsbereich Auftrags-Nr Fußbereich. Weisen Sie diesem<br />

im Feld Beim Formatieren Rechnungen.Auftragsfuss zu. Damit wird nach jeder<br />

abgeschlossenen Rechnung die Zwischensumme gelöscht.<br />

6. Der Seitenfuß soll als Ereignis Beim Formatieren die Makrogruppe Rechnungen.Anzeigen<br />

starten. Darüber wird das Ein- und Ausblenden der zusätzlichen Felder gesteuert. Speichern<br />

Sie die Änderungen und schließen Sie den Bericht.<br />

7. Testen Sie die neuen Funktionen, indem Sie den Bericht über das Formular Rechnungen<br />

drucken aufrufen. Wählen Sie die Rechnungen 1 bis 9 zur Anzeige aus. Zwischensumme<br />

und Übertrag sollten bei der 4. und der 9. Rechnung angezeigt werden.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 46 / 77


Abb 425 Der Übertrag der vorherigen Seite wird angezeigt.<br />

7.4 Applikationen erstellen<br />

Zum Abschluss des Kapitels über Makros sollen ein paar zusätzliche Verfahren vorgestellt werden,<br />

mit denen Sie Ihre <strong>Access</strong>-Lösung “rund” machen können. Dies betrifft die benutzerfreundliche<br />

Anpassung der Oberfläche, aber auch den Schutz Ihrer Datenbankobjekte vor nicht gewollten<br />

Veränderungen durch die Benutzer.<br />

Wenn Sie für Ihre Datenbankanwendungen ein „Look-and-Feel“ erzielen wollen, das denen der<br />

bekannten Office-Programme entspricht, dann bieten sich selbst erstellte Symbol- bzw. Menüleisten<br />

an. Damit können Sie die eigenen Applikationen so gestalten, dass die wichtigsten Funktionen nach<br />

dem Öffnen der Datenbank automatisch angeboten werden.<br />

7.4.1 Beispiel 110: Eigene Menüleiste einrichten<br />

1. Die Datenbank 110_113Stadtlupe.mdb ist geöffnet.<br />

2. Klicken Sie mit der rechten Maustaste in die Menüleiste und wählen Sie aus dem<br />

Kontextmenü Anpassen.<br />

3. Wechseln Sie in das Register Symbolleisten. Erstellen Sie über Neu eine neue Symbolleiste<br />

mit dem Namen Stadtlupe. Nach OK wird die neue leere Symbolleiste angezeigt.<br />

Abb 426<br />

4. Klicken Sie in der geöffneten Dialogbox Anpassen auf Eigenschaften. Wählen Sie als<br />

ausgewählte Symbolleiste Stadtlupe und als Typ Menüleiste. Achten Sie darauf, dass alle<br />

Kontrollkästchen aktiviert sind.<br />

5. Schliessen Sie die Dialogbox.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 47 / 77


Abb 427<br />

6. Sie möchten nun das erste Menü erstellen. Klicken Sie dazu im Register Befehle auf die<br />

Kategorie Neues Menü.<br />

7. Ziehen Sie aus der Liste Befehle den einzigen Eintrag Neues Menü auf Ihre Menüleiste.<br />

Abb 428<br />

8. Klicken Sie mit der rechten Maustaste auf den Eintrag Neues Menü in Ihrer Menüleiste und<br />

geben Sie als Namen für Ihr Menü &Formulare ein. Mit (Return) speichern Sie diese<br />

Einstellung.<br />

Hinweis: <strong>Das</strong> Zeichen & stellt den folgenden Buchstaben unterstrichen dar. Mit (Alt) und<br />

der Eingabe dieses Buchstabens steuern Sie diesen Menüpunkt an.<br />

9. Sie möchten nun die Menüpunkte festlegen. Klicken Sie auf das neue Menü Formulare, um<br />

es zu öffnen. Wählen Sie dann in der Dialogbox Anpassen die Kategorie Alle Formulare.<br />

10. Ziehen Sie nacheinander die Formulare Aufträge, Kunden, Hefte, sowie Rechnungen<br />

drucken in das geöffnete Menü Formulare.<br />

Abb 429<br />

11. Erstellen Sie entsprechend rechts vom Menü Formulare ein zweites Menü Berichte mit den<br />

folgenden Berichten der Datenbank: Aufträge pro Quartal, Kundenauswertung und<br />

Umsätze.<br />

12. Schließen Sie die Dialogbox Anpassen. Schieben Sie die Menüleiste Stadtlupe unter die<br />

Standard-Menüleiste und testen Sie die neuen Menüpunkte.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 48 / 77


Abb 430<br />

Mit dem Zeichen & im Namen eines Menüs oder einer Menüoption ermöglichen Sie das<br />

Aufrufen des Menüs über die Tastatur. Der dem Zeichen & folgende Buchstabe wird<br />

unterstrichen dargestellt. Mit der Tastenkombination (Alt)+(unterstrichener Buchstabe) kann<br />

dann der Menüpunkt aufgerufen werden. In den Eigenschaften der Menüeinträge können Sie<br />

darüber hinaus festlegen, ob zusätzlich zum Befehlsnamen ein Symbol angezeigt werden<br />

soll oder nicht.<br />

Sie können selbstverständlich Ihre neuen Befehle mit den Möglichkeiten von <strong>Access</strong> mischen.<br />

7.4.2 Beispiel 111: <strong>Access</strong>-Befehle in eigene Menüleiste<br />

aufnehmen<br />

1. Die Datenbank 110_113Stadtlupe.mdb ist geöffnet.<br />

2. Wechseln Sie nach Extras/Anpassen in das Register Befehle und wählen Sie in der<br />

Kategorie Datei den Befehl Beenden.<br />

3. Ziehen Sie den Befehl Beenden als letzten Eintrag auf das Menü Formulare.<br />

Abb 431<br />

4. Klicken Sie mit der rechten Maustaste auf neu hinzugefügten Befehl Beenden in der<br />

Menüleiste und wählen Sie aus dem Kontextmenü Eigenschaften.<br />

5. Aktivieren Sie das Kontrollkästchen vor Eine Gruppe beginnen. Dadurch wird dieser<br />

Eintrag durch eine Trennlinie von den übrigen Befehlen abgetrennt. Schließen Sie die<br />

Dialogbox.<br />

6. Schließen Sie das Dialogfeld Anpassen und testen Sie den neuen Befehl.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 49 / 77


Abb 432<br />

Abb 433<br />

Neben der Übernahme einzelner Standardbefehle können Sie auch komplette Menüs aus <strong>Access</strong><br />

übernehmen.<br />

7.4.3 Beispiel 112: Standardmenüs in eigene Menüleiste<br />

aufnehmen<br />

1. Die Datenbank 110_113Stadtlupe.mdb ist geöffnet.<br />

2. Klicken Sie mit der rechten Maustaste in eine Menü- oder Symbolleiste und wählen Sie<br />

Anpassen.<br />

3. Wechseln Sie in das Register Befehle und wählen Sie die Kategorie Integrierte Menüs.<br />

4. Ziehen Sie den Befehl Bearbeiten zwischen die vorhandenen Menüs Formulare und Berichte<br />

und anschließend das integrierte Menü Ansicht zwischen Bearbeiten und Berichte.<br />

Abb 434<br />

5. Schließen Sie die Dialogbox Anpassen und testen Sie die neuen Menüs.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 50 / 77


Ihre Anwendung lässt sich noch übersichtlicher gestalten, indem Sie beim Starten Ihrer Datenbank<br />

das Datenbankfenster deaktivieren und ganz gezielt nur die von Ihnen erstellte Menüleiste anzeigen.<br />

<strong>Das</strong> kann gerade für unerfahrene Benutzer eine große Orientierungshilfe in der Funktionsvielfalt<br />

von <strong>Access</strong> sein. Diese Einstellungen nehmen Sie komplett bei den <strong>Access</strong>-Startoptionen vor.<br />

7.4.4 Beispiel 113: Startoptionen für die Datenbankanwendung<br />

festlegen<br />

1. Die Datenbank 110_113Stadtlupe.mdb ist geöffnet.<br />

2. Zeigen Sie über Extras/Start die Starteinstellungen für Ihre Datenbank an.<br />

3. Geben Sie als Anwendungstitel Datenbank Stadtlupe an. Dieser Anwendungstitel wird in<br />

der Titelleiste des Datenbankfensters angezeigt.<br />

4. Wählen Sie aus dem Listenfeld Menüleiste Ihre selbst erstellte Menüleiste Stadtlupe.<br />

5. Deaktivieren Sie die Kontrollkästchen vor Datenbankfenster anzeigen, Unbeschränkte<br />

Menüs anzeigen sowie Symbolleisten- und menüänderungen zulassen.<br />

Abb 435<br />

6. Übernehmen Sie die Änderungen mit OK und testen Sie das Verhalten von <strong>Access</strong> durch<br />

Schließen und erneutes Öffnen der Datenbank Stadtlupe. Sie sehen nur noch die Menüleiste<br />

Stadtlupe.<br />

Startoptionen<br />

Abb 436 Die Datenbank Stadtlupe mit geänderten<br />

Die gerade durchgeführten Anpassungen lassen sich leicht umgehen, indem beim Öffnen der<br />

Stadtlupe-Datenbank die (Umschalt)-Taste niedergedrückt wird. Dadurch werden die<br />

Starteinstellungen und das Ausführen eines evtl. vorhandenen Autoexec-Makros umgangen.<br />

Soll der Schutz Ihre Applikation weiter verbessert werden, so ist dies möglich, indem Sie eine<br />

<strong>Access</strong> MDE-Datei erstellen. In dieser sind zusätzlich die Definitionen der Formulare und Berichte<br />

versteckt. Durch eine Kombination mit sinnvollen Benutzerberechtigungen könnten Sie das ganze<br />

noch „wasserdichter“ machen.<br />

7.4.5 Beispiel 114: Eine geschützte <strong>Access</strong> Anwendung<br />

erstellen (MDE-Datei)<br />

1. Öffnen Sie die Datenbank 114Stadtlupe.mdb mit gedrückter (Umschalt)-Taste.<br />

2. Wählen Sie aus dem Menü Extras den Befehl Datenbank-Dienstprogramme /MDE-Datei<br />

erstellen.<br />

3. Speichern Sie die Datei unter dem Namen Stadtlupe.mde im Verzeichnis Eigene Dateien.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 51 / 77


4. Öffnen Sie die MDE-Datenbank mit gedrückter (Umschalt) – Taste und versuchen Sie,<br />

Änderungen an den Formularen vorzunehmen. Dies sollte Ihnen nicht gelingen.<br />

Abb 437 Die Entwurfsansicht ist nicht mehr verfügbar.<br />

Im nächsten Beispiel machen wir Sie mit einer Möglichkeit vertraut, die für die Pflege von <strong>Access</strong>-<br />

Applikation recht hilfreich ist. Dabei geht des darum, die Definition der Formulare, Abfragen,<br />

Berichte und Makros von den Daten, also den Tabellen, zu trennen. Dies ermöglicht Ihnen das<br />

Ändern der Funktionalitäten dieser Objekte, ohne vor dem Problem zu stehen, die Daten in eine<br />

neue Datenbank überführen zu müssen. Dieses Vorgehen hat übrigens den zusätzlichen<br />

angenehmen Nebeneffekt, dass Sie damit bereits eine Aufteilung in ein Frontend und Backend<br />

vornehmen und damit den Umstieg auf eine Client/Server-Lösung vorbereiten.<br />

7.4.6 Beispiel 115: Tabellen von anderen Objekten trennen<br />

1. Öffnen Sie mit gedrückter (Umschalt)-Taste die Datenbank 115Stadtlupe.mdb .<br />

2. Im Menü Extras/Datenbank-Dienstprogramme finden Sie den Assistenten zur<br />

Datenbankaufteilung .<br />

Abb 438<br />

3. Nach Anklicken der Schaltfläche Datenbank aufteilen geben Sie als Namen der zu<br />

erstellenden Backend-Datenbank Stadtlupe_be.mdb ein. Diese Datei wird die Tabellen der<br />

Datenbank Stadtlupe beinhalten. Wählen Sie als Speicherort C:\Übungsdateien\Stadtlupe.<br />

Abb 439 Die Back-End-Datenbank wird erstellt.<br />

4. Nach Anklicken der Schaltfläche Aufteilen teilt der Assistent die Datenbank auf.<br />

5. In der Stadtlupe.mdb verbleiben alle Objekte, außer den Tabellen. Betrachten Sie die<br />

Tabellen im Datenbankfenster. Es handelt sich nun durchgängig um eingebunden Tabellen.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 52 / 77


Abb 440 Die eingebundenen Tabellen der Datenbank<br />

Stadtlupe im Datenbankfenster<br />

7.5 Übungsaufgaben<br />

7.<strong>5.1</strong> Aufgabe 42: Arbeitsumgebung per Makro einrichten<br />

1. Es soll ein Makro erstellt werden, welches beim Starten der Datenbank automatisch das<br />

Formular Bestellungen öffnet. (7.1.3 Beispiel 94: Makro automatisch beim Öffnen der<br />

Datenbank ausführen (Autoexec))<br />

2. Die Datenbank 042Handel.mdb ist geöffnet.<br />

3. Legen Sie ein neues Makro an. (7.1.2 Beispiel 93: Ein einfaches Makro erstellen)<br />

4. Der erste Makrobefehl soll das Formular Bestellungen öffnen. (7.1.2 Beispiel 93: Ein<br />

einfaches Makro erstellen)<br />

5. Der zweite Makrobefehl soll das Fenster maximieren, so dass das Formular Bildschirm<br />

füllend angezeigt wird. (7.1.2 Beispiel 93: Ein einfaches Makro erstellen)<br />

6. Speichern Sie das Makro unter dem Namen Autoexec ab. (7.1.3 Beispiel 94: Makro<br />

automatisch beim Öffnen der Datenbank ausführen (Autoexec))<br />

7. Testen Sie, ob das Makro beim Öffnen der Datenbank automatisch gestartet wird. (7.1.3<br />

Beispiel 94: Makro automatisch beim Öffnen der Datenbank ausführen (Autoexec))<br />

8. Deaktivieren Sie das Makro wieder, indem Sie es umbenennen.<br />

9. Die Lösung der Aufgabe finden Sie unter 043Handel.mdb.<br />

7.5.2 Aufgabe 43: Datenaustausch automatisieren<br />

1. Sie schreiben jetzt ein Makro, welches Daten in eine Excel-Tabelle exportiert und<br />

anschließend Excel startet, um die Daten anzuzeigen.<br />

2. Legen Sie ein neues Makro an und speichern Sie es unter dem Namen ArtikelExportieren.<br />

3. Der erste Befehl soll die Artikeldaten in ein Excel-Datenblatt transferieren. Verwenden Sie<br />

als Dateibezeichnung C:\Übungsdateien\Handel\artikel.xls.<br />

4. Der zweite Befehl soll eine Meldung anzeigen: Los geht’s! (6.2.2 Beispiel 90: Ein<br />

Teilreplikat einer einzelnen Tabelle erzeugen)<br />

5. Der dritte Befehl soll die Anwendung Excel starten und die Tabelle anzeigen lassen. Der<br />

Aufruf dazu lautet: excel.exe "c:\Übungsdateien\Handel\artikel.xls"<br />

6. Starten Sie das Makro. Die Darstellung in Excel sollte der Abbildung entsprechen.<br />

7. Die Lösung zu dieser Aufgabe finden Sie in der Datei 044Handel.mdb.<br />

Abb 441<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 53 / 77


7.5.3 Aufgabe 44: Automatisierung im Bestellformular<br />

1. In dieser Übung fügen Sie dem Bestellformular eine Schaltfläche hinzu, über welche der<br />

Rechnungsdruck gestartet werden kann. Dabei soll sich der Anwender zwischen einem<br />

direkten Ausdruck auf dem Drucker und der Seitenansicht entscheiden können.<br />

2. Die Datenbank 044Handel.mdb ist geöffnet.<br />

3. Legen Sie im Formular Bestellungen eine neue Schaltfläche an. Betrachten Sie dazu die<br />

Abbildung. (7.2.2 Beispiel 99: Einen gefilterten Bericht über eine Befehlsschaltfläche<br />

öffnen)<br />

4. Hinterlegen Sie dem Ereignis Beim Klicken ein Makro mit dem Namen Drucken.<br />

5. Blenden Sie die Spalte Bedingung ein. (7.3.1 Beispiel 105: Ein Makro mit einer Bedingung<br />

versehen)<br />

Abb 442<br />

6. Die erste Makrozeile soll die Meldung Direkt zum Drucker schicken? anzeigen. Der<br />

Benutzer soll sich zwischen Ja und Nein entscheiden können. Antwortet der Benutzer mit<br />

JA, so soll der Bericht geöffnet und direkt auf den Drucker geschickt werden. (7.3.1 Beispiel<br />

105: Ein Makro mit einer Bedingung versehen)<br />

Abb 443<br />

7. Verwenden Sie beim Öffnen des Berichtes eine Bedingung, so dass nur die zur BestellNr<br />

passende Rechnung ausgegeben wird.<br />

8. Die zweite Zeile ist eine Fortsetzungszeile zur Bedingung „…“. In dieser wird das Makro<br />

gestoppt, damit nicht „aus Versehen“ die dritte Zeile angelaufen wird.<br />

9. Die dritte Zeile schließlich enthält keinen Eintrag in der Bedingungsspalte. Der Bericht soll<br />

in der Seitenansicht gezeigt werden. Auch hier soll nur die zur BestellNr passende Rechnung<br />

ausgegeben werden.<br />

10. Die Lösung zu dieser Aufgabe finden Sie in der Datei 045Handel.mdb.<br />

7.5.4 Aufgabe 45: Tastaturbelegung ändern<br />

1. Legen Sie ein Tastaturbelegungsmakro an, welches die folgenden Tastaturkürzel realisiert:<br />

(7.1.4 Beispiel 95: Makros über Tastenkombinationen aufrufen)<br />

2. (Strg)+(K) öffnet die Kundentabelle.<br />

3. (Strg)+(A) öffnet die Artikeltabelle.<br />

4. (Strg)+(L) öffnet die Lieferantentabelle.<br />

5. Die Lösung zu dieser Aufgabe finden Sie in der Datei 046Handel.mdb.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 54 / 77


7.5.5 Aufgabe 46: Eine Anwendung einrichten<br />

1. Damit die Datenbank Handel runder wird, sollen jetzt noch die Starteinstellungen geändert<br />

werden. (7.4.4 Beispiel 113: Startoptionen für die Datenbankanwendung festlegen)<br />

2. Verhindern Sie, dass der Benutzer das Datenbankfenster sehen kann.<br />

3. Schalten Sie außerdem die Verwendung der <strong>Access</strong> Spezialtasten (z. B. F11) aus.<br />

4. Jetzt sollte nach einem Neustart nur noch das Bestellformular sichtbar sein. Außerdem<br />

können die Tabellen über die Tastenkürzel erreicht werden.<br />

5. Die Lösung der Aufgabe finden Sie unter 046Handel_Start.mdb.<br />

8 Client/Server Datenbanken mit der Microsoft SQL Server<br />

Desktop Engine und ODBC<br />

Während sich persönliche Datenbanken und Lösungen für kleine Arbeitsgruppen problemlos mit<br />

<strong>Access</strong> und seiner Datenbankmaschine Jet einrichten lassen, ist dies bei größeren Datenmengen und<br />

im Netzwerk oft nicht mehr ganz so einfach. Hier bietet sich die Verwendung der Microsoft SQL<br />

Server Desktop Engine (MSDE 2000) an, die Bestandteil von Office <strong>2003</strong> <strong>Professional</strong> ist.<br />

Vorteile beim Einsatz der MSDE:<br />

Datensicherheit:<br />

<strong>Access</strong> ist als System für den Desktop-Betrieb und kleine Arbeitsgruppen konzipiert. Die dabei<br />

erreichbare erstaunlich hohe Geschwindigkeit bei den Datenzugriffen wird teilweise auf Kosten der<br />

Datensicherheit erzielt. Treten beispielsweise im Netzwerkbetrieb Störungen auf, so können die<br />

internen Strukturen der MDB-Dateien beschädigt werden. Dieser Fall tritt auch hin und wieder im<br />

Mehrbenutzerbetrieb auf. Vielfach lassen sich die daraus resultierenden Probleme durch die<br />

Funktion Datenbank komprimieren und reparieren im Menü Datenbank-Dienstprogramme<br />

beseitigen. Dies geht allerdings nicht immer gut. Sollten sich solche Situationen häufiger einstellen,<br />

ist es daher höchste Zeit, über die Umstellung der <strong>Access</strong> Datenbanken auf den Betrieb mit der<br />

MSDE nachzudenken. Da die Desktop Engine den kleinen Bruder des Microsoft SQL -Servers<br />

darstellt, ist sie in hohem Masse auf Betriebssicherheit und Schutz vor Datenverlusten ausgelegt.<br />

Größere Leistungsfähigkeit im Netzwerk:<br />

Ein weiterer Schwachpunkt bei <strong>Access</strong> ist der Betrieb in Netzwerken, zumindest dann, wenn die<br />

Tabellen allmählich größer werden. Die Datenbankdateien lassen sich natürlich problemlos auf<br />

einem File-Server unterbringen. Bearbeitet werden die Daten allerdings immer auf dem Client. Die<br />

Daten müssen bei einer Abfrage also immer zunächst über das Netzwerk auf die Workstation<br />

transportiert werden. Danach findet die Auswahl der Datensätze auf dem lokalen PC statt. Bei einer<br />

10 MB großen Tabelle müssen also zunächst diese 10 MB „geschaufelt“ werden, auch wenn das<br />

Ergebnis nur aus drei Zeilen besteht und 100 Byte groß ist. Verwenden viele Benutzer große<br />

Tabellen gleichzeitig, so können Netzwerke dadurch arg strapaziert werden.<br />

Beim Einsatz der MSDE wird dagegen Client-Server-typisch gearbeitet. Die Daten verbleiben auf<br />

dem Server. Der Client überträgt seinen Verarbeitungswunsch in Form eines SQL-Befehls auf den<br />

Server, wo die Auswertung stattfindet. Vom Server auf den Client übertragen wird dann nur noch<br />

das Abfrageergebnis, das sind oft nur ein paar hundert Byte.<br />

Größere Datenbanken:<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 55 / 77


Mit <strong>Access</strong> lassen sich durchaus Datenbanken bis zu einigen 100 MB betreiben. Theoretisch könnte<br />

man bis zu einem GB gehen. Allerdings lassen sich in vielen Fällen diese Größen nicht erreichen.<br />

Eine genaue Obergrenze anzugeben, ist schwierig und von der Komplexität und Beschaffenheit der<br />

Datenbanktabellen abhängig. In der Praxis können schon bei einem kleineren System von 50-100<br />

MB im Mehrbenutzerbetrieb Instabilitäten auftreten, die sich mit wachsender Dateigröße<br />

unangenehm verschlimmern. Auch nimmt die Abfrage-Leistungsfähigkeit bei großen Datenbanken<br />

gegenüber der MSDE immer weiter ab, während bei kleinen Datenbanken (ein paar MB) <strong>Access</strong> in<br />

der Regel schneller als die MSDE mit der Arbeit fertig sein wird.<br />

Bei der Microsoft Desktop Engine handelt es sich tatsächlich um die abgespeckte Version des MS<br />

SQL Servers! Intern sind die Datenbankmaschine der MSDE und die des SQL-Servers in der Tat<br />

vollkommen identisch. Dies hat den enormen Vorteil, dass bei einem weiteren Wachstum Ihrer<br />

Datenbank über die Möglichkeiten der MSDE hinaus Ihre Applikation ganz ohne jeden Aufwand<br />

auf einen echten Datenbankserver umgestellt werden kann.<br />

<strong>Access</strong> ist im Client/Server Betrieb nicht auf die Verwendung des Microsoft SQL-Servers<br />

eingeschränkt, obwohl dies die einfachste und effektivste Variante darstellt. Es lassen sich auch<br />

andere Datenbanksysteme, wie ORACLE oder DB2 mit <strong>Access</strong> „anzapfen“. Ein stabiler und relativ<br />

unkomplizierter Weg dorthin ist die Verwendung einer Standardschnittstelle für Datenbanksysteme,<br />

die bereits seit einigen Jahren existiert und inzwischen sehr ausgereift ist. ODBC steht für „Open<br />

Database Connectivity“. Sämtliche Datenbankanbieter unterstützen dieses Protokoll. Die<br />

Voraussetzung für die Nutzung von ODBC auf einem Rechner ist das Vorhandensein der<br />

entsprechenden Treiber, die entweder bereits installiert sind oder vom Hersteller zur Verfügung<br />

gestellt werden.<br />

8.1 MSDE Grundlagen<br />

Die Microsoft SQL Server 2000 Desktop Engine wird nicht automatisch mit MS Office <strong>2003</strong><br />

installiert. <strong>Das</strong> Setup-Programm befindet sich auf der Office CD-ROM.<br />

Sie können die neuste Version der Microsoft SQL Server 2000 Desktop Engine auch aus dem<br />

Internet herunterladen: http://www.microsoft.com/sql/msde/downloads/.<br />

Bevor die Arbeit mit der MSDE beginnen kann, muss diese also zunächst einmal installiert werden.<br />

Dies kann auf dem lokalen PC, aber auch auf einem Rechner im Netzwerk erfolgen. Im Verlauf des<br />

Setups werden Sie unter anderem nach einem Datenpfad gefragt. Dabei geht es nicht etwa um den<br />

zukünftigen Speicherort Ihrer <strong>Access</strong>-Datenbanken, sondern um die so genannten<br />

Systemdatenbanken. <strong>Das</strong> Konzept der Systemdatenbanken ist (mit Ausnahme der<br />

Arbeitsgruppendateien) in <strong>Access</strong> nicht bekannt, wird aber im Microsoft SQL-Server (und damit<br />

der MSDE) verwendet. Bei den Systemdatenbanken handelt es sich um interne Datenbanken, die<br />

von der MSDE beispielsweise für die Benutzerverwaltung und die Systemkonfiguration eingesetzt<br />

werden. Diese Datenbanken müssen unbedingt in Ihren Datensicherungen berücksichtigt werden!<br />

Außerdem ist es normalerweise angebracht, diese Daten getrennt von Ihren Programmdateien auf<br />

einer zweiten Festplatte zu installieren.<br />

<strong>Das</strong> folgende Beispiel zeigt die Installation von der Office-CD-Rom. Achten Sie darauf, dass Sie<br />

die Installation mit ausreichenden Administrationsbefugnissen für Ihren Rechner vornehmen.<br />

8.1.1 Beispiel 116: Die MS SQL Server Desktop Engine<br />

installieren<br />

1. Legen Sie die Installations-CD Ihres Office Programms ein.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 56 / 77


Sie können die neuste Version der Microsoft SQL Server 2000 Desktop Engine auch aus<br />

dem Internet herunterladen: http://www.microsoft.com/sql/msde/downloads/.<br />

2. Öffnen Sie den Windows-Explorer und navigieren Sie zum Verzeichnis MSDE2000 auf der<br />

CD-ROM. Starten Sie durch einen Doppelklick auf MSDE2KS3.EXE das<br />

selbstextrahierende Archiv und wählen Sie den Ordner, in den die Installationsdateien<br />

extrahiert werden sollen.<br />

Abb 444 Die Installationsdateien werden entpackt.<br />

3. Bevor Sie das Setup starten können, müssen Sie ein sicheres Kennwort vergeben.<br />

Abb 445<br />

4. Lesen Sie dazu die Datei ReadmeMSDE2000A.htm.<br />

5. Geben Sie nach Start/Alle Programme/Zubehör im Eingabeaufforderungsfenster cd<br />

C:\MSDE bzw. den Pfad zu dem Ordner, in den Sie die Installationsdateien kopiert haben,<br />

ein. Mit setup sapwd="sesam" installieren Sie eine Standardinstanz der MSDE, wobei Sie<br />

statt „sesam“ ein Kennwort eingeben können, das dem Benutzer sa zugewiesen wird.<br />

Instanz.<br />

Abb 446 So installieren Sie eine neue Desktop Engine-<br />

6. Die Installation erfolgt nun automatisch und ohne Ihr weiteres Zutun. Sie werden durch ein<br />

Infofenster über den Fortschritt des Setups informiert.<br />

7. Starten Sie nach erfolgter Installation Ihren Rechner neu.<br />

Sie können einstellen, ob der Server beim Starten des Betriebssystems automatisch zur Verfügung<br />

steht.<br />

8.1.2 Beispiel 117: Die Desktop Engine einstellen<br />

1. Nach dem Neustart Ihres Rechners wird Ihnen über ein Symbol in der Taskleiste der Status<br />

Ihrer Desktop Engine angezeigt. Der grüne Pfeil zeigt an, dass der MSSQL Server läuft.<br />

Abb 447<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 57 / 77


Abb 448<br />

Abb 449<br />

Abb 450<br />

Hinweis: Der rote Punkt zeigt an, dass er beendet, zwei parallele Striche zeigen an, dass er<br />

angehalten wurde.<br />

2. Öffnen Sie durch einen Doppelklick auf das Server Symbol den SQL Server-Dienst-<br />

Manager . Dieser zeigt die Dienste an, die zur SQL-Server Desktop Engine gehören. Für<br />

unsere Aufgabenstellungen benötigen wir ausschließlich den Dienst SQL-Server .<br />

Abb 451<br />

3. Über das Symbol Beenden können Sie den Dienst stoppen, wenn dieser nicht benötigt wird.<br />

Damit entlasten Sie Ihren PC.<br />

4. Mit Starten/Weiter starten Sie den Server wieder.<br />

5. Aktivieren Sie das Kontrollkästchen Dienst bei Betriebssystemstart automatisch starten. Die<br />

Desktop Engine wird jetzt jedes Mal automatisch gestartet, wenn Sie Ihren Rechner starten.<br />

6. Schließen Sie den SQL Server-Dienst-Manager wieder.<br />

Nachdem Sie die MSDE installiert haben, können Sie nun <strong>Access</strong> mit dieser verbinden und<br />

anschließend eine erste Datenbank anlegen. Da es sich nicht um eine <strong>Access</strong> (Jet-) Datenbank<br />

handelt, ist das Vorgehen hierbei grundsätzlich anders. Sie legen die Datenbank über ein so<br />

genanntes Projekt an.<br />

8.1.3 Beispiel 118: Eine neue MSDE Datenbank anlegen<br />

1. Starten Sie MS <strong>Access</strong>.<br />

2. Öffnen Sie über Datei/Neu den Aufgabenbereich Neue Datei und wählen Sie unter Neu<br />

Projekt aus neuen Daten.<br />

Abb 452<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 58 / 77


3. Erstellen Sie das Projekt im Verzeichnis Stadtlupe unter dem Namen Test.adp.<br />

4. Sie müssen sich nun mit der Desktop Engine verbinden. Dabei hilft Ihnen der SQL Server<br />

Datenbank Assistent .<br />

5. Geben Sie dazu den Namen des Rechners, auf welchem Sie die MSDE installiert haben, als<br />

Bezeichnung für den SQL-Server ein.<br />

Wenn Sie mit der Maus über das Symbol des MSSQL-Servers in der Taskleiste fahren, wird<br />

der Rechnername angezeigt.<br />

6. Lassen Sie die Option Vertrauenswürdige Verbindung verwenden aktiviert. Dies bedeutet,<br />

dass die MSDE anhand der Windows-Anmeldeinformationen authentifiziert. Wenn Sie als<br />

Administrator Ihres Rechners angemeldet sind, dann können Sie sich mit der MSDE<br />

verbinden.<br />

Abb 453 Die Datenbank TestSQL wird angelegt<br />

7. Als Namen der neuen Datenbank schlägt der Assistent testSQL vor. Behalten Sie diesen bei<br />

und klicken Sie auf Weiter.<br />

8. Nach Fertig Stellen werden die Dateien für die neue Datenbank eingerichtet.<br />

Zu der Datenbank TestSQL gehören zwei Dateien: TestSQL.mdf und TestSQL.ldf. Diese Dateien<br />

werden gemeinsam benötigt, um Ihre Datenbank zu <strong>verwalten</strong>. Die mdf-Datei enthält die Tabellen<br />

und andere Informationen Ihrer Datenbank, die ldf-Datei das sogenannte Transaktionsprotokoll.<br />

Diese Dateien finden Sie im Datenverzeichnis der MSDE, normalerweise ist dies:<br />

\Programme\Microsoft SQL Server\MSSQL\Data.<br />

Stellen Sie im Netzwerk sicher, dass beide Dateien mit einem ausreichenden Zugriffsschutz<br />

versehen werden.<br />

8.2 Eine <strong>Access</strong> Datenbank auf die Desktop Engine umstellen<br />

Ein vorhandene <strong>Access</strong> Datenbank können Sie am einfachsten mit dem in <strong>Access</strong> eingebauten<br />

Upsizing-Assistenten auf die Client/Server Lösung umstellen.<br />

8.2.1 Beispiel 119: Upsizing einer vorhandenen <strong>Access</strong>-<br />

Datenbank<br />

1. Öffnen Sie die Datenbank 119Stadtlupe.mdb.<br />

2. Starten Sie über Extras/Datenbank-Dienstprogramme den Upsizing Assistenten .<br />

3. Wählen Sie im ersten Dialog die Option Neue Datenbank erstellen.<br />

4. Nach dem Klick auf Weiter kann es ein paar Sekunden dauern, bis der Assistent die<br />

vorhandenen SQL-Server in Ihrem Netzwerk anzeigt.<br />

5. Zur Anmeldung an der MSDE verwenden Sie den Namen des Rechners, auf welchem die<br />

MSDE installiert ist, als SQL-Servernamen. Verwenden Sie die Option Vertrauenswürdige<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 59 / 77


Verbindung verwenden. Als Datenbankname wird 119StadtlupeSQL vorgeschlagen.<br />

Behalten Sie diese Voreinstellung bei und klicken Sie auf Weiter.<br />

Abb 454<br />

6. Im nächsten Schritt geben Sie an, dass sämtliche Tabellen aus <strong>Access</strong> transferiert werden<br />

sollen. Verwenden Sie dafür das Doppelpfeil-Symbol >>.<br />

Abb 455<br />

7. Nach Weiter geht es um die Auswahl der Tabelleneigenschaften, die in der MSDE-<br />

Datenbank erscheinen sollen. Da Sie normalerweise die vergebenen Indizes, Standardwerte<br />

usw. beibehalten wollen, empfiehlt sich hier die Übernahme der Voreinstellungen.<br />

Abb 456<br />

8. Den letzten Arbeitsschritt bildet die Entscheidung, ob ein neues <strong>Access</strong>-Projekt erstellt<br />

werden soll, oder die existierende Datenbank angepasst wird. Wählen Sie die Option Eine<br />

neue <strong>Access</strong>-Client/Server Anwendung erstellen und gehen Sie über Weiter zum letzten<br />

Dialog, wo Sie mit Fertig stellen das Upsizing starten.<br />

Abb 457<br />

9. Nachdem alle Objekte auf den Server transportiert wurden, informiert Sie <strong>Access</strong> in einem<br />

ausführlichen Upsizing-Bericht über den Erfolg der Prozedur, über notwendige<br />

Anpassungen und aufgetretene Fehler.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 60 / 77


Abb 458 Die Datenbank auf dem MSSQL-Server<br />

10. Drucken Sie nach dem Upsizing den Bericht für Dokumentationszwecke einmal aus.<br />

Nach dem Upsizing der Datenbank können Sie sofort mit dem Projekt StadtlupeCS arbeiten und<br />

sich mit den Details einer <strong>Access</strong> Client/Server Applikation vertraut machen. Vor allen Dingen ist<br />

es wichtig, sich mit den Verbindungseinstellungen auszukennen.<br />

8.2.2 Beispiel 120: Verbindungseinstellungen prüfen<br />

1. <strong>Das</strong> Projekt 120_122StadtlupeCS.adp ist geöffnet.<br />

2. Wählen Sie im Menü Datei den Eintrag Verbindung .<br />

3. In diesem Dialog können Sie den Authentifizierungsmodus einstellen und eine Datenbank<br />

Ihres Servers auswählen.<br />

Abb 459<br />

4. Lassen Sie sich einmal die Datenbanken Ihrer MSDE anzeigen. Sie werden feststellen, dass<br />

es neben der neu angelegten Datenbank 120_122StadtlupeSQL noch die Datenbanken<br />

Master, Model, MSDB und Tempdb gibt. Diese werden von der Desktop Engine für die<br />

eigene Verwaltung benötigt. Sie sollten diese Datenbanken weder selbst verändern noch<br />

löschen.<br />

5. Testen Sie die Verbindung. OK.<br />

Abb 460<br />

Schon bei diesem ersten Experiment konnten Sie feststellen, dass die Arbeit mit einem <strong>Access</strong><br />

Client/Server System sich deutlich von der Arbeit mit dem Desktop-<strong>Access</strong> unterscheidet. <strong>Das</strong><br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 61 / 77


nächste Beispiel stellt in einer kleinen Tour die wesentlichen Unterschiede vor. Diese liegen vor<br />

allen Dingen bei den Abfragen vor.<br />

8.2.3 Beispiel 121: Die Objekte der MSDE erforschen<br />

1. Betrachten Sie im Projekt 120_121StadtlupeCS.adp die Objektleiste. Als einziger neuer<br />

Eintrag erscheint der Punkt Datenbankdiagramme .<br />

2. Klicken Sie auf Abfragen.<br />

3. Nach der Konvertierung sind die Bezeichnungen, die runde Klammern enthalten, in<br />

doppelte Anführungszeichen gesetzt worden.<br />

4. Aktivieren Sie über das Symbol Details im Datenbankfenster die zusätzlichen<br />

beschreibenden Spalten.<br />

Abb 461<br />

5. Sie können nun die unterschiedlichen Abfragetypen besser unterscheiden. Der Upsizing-<br />

Assistent hat aus den ursprünglichen Abfragen der Stadtlupe-Datenbank Ansichten,<br />

Gespeicherte Prozeduren und Inline Funktionen erstellt.<br />

Abb 462 Die verschiedenen Typen von Abfragen<br />

6. Öffnen Sie die Sicht (in <strong>Access</strong>: Ansicht) Auswertungen Anzeigenpreise nach Format<br />

gruppiert. In der Datenblattansicht werden Ihnen die Werte angezeigt, die der Server<br />

berechnet hat.<br />

Abb 463<br />

7. Wechseln Sie in die Entwurfsansicht.<br />

8. Hier sehen Sie den Abfragedesigner der MSDE, der ganz exakt dem SQL-Server Vorbild<br />

entspricht. Schließen Sie den Sichtentwurf.<br />

Abb 464 Die Abfragen in der Entwurfsansicht<br />

9. Öffnen Sie die Inline-Funktion Kunden nach PLZ-Bereich. Geben Sie in die Eingabebox<br />

Ab_Plz_ den Wert 10000 und in die Eingabebox Bis_Plz den Wert 12000 ein.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 62 / 77


Abb 465<br />

Abb 466<br />

10. Dieses Server-Objekt entspricht also einer <strong>Access</strong> Parameterabfrage.<br />

Abb 467<br />

Inline-Funktionen müssen außerdem verwendet werden, wenn das Ergebnis einer Abfrage<br />

sortiert werden soll.<br />

11. Öffnen Sie jetzt die Gespeicherte Prozedur E-Mail Adressen eintragen in der<br />

Entwurfsansicht. Sie sehen hier einen kurzen SQL-Text. Dieser enthält die Befehle einer<br />

<strong>Access</strong> Aktionsabfrage. Gespeicherte Prozeduren werden also anstelle von <strong>Access</strong><br />

Aktionsabfragen verwendet, gehen jedoch weit über deren Funktionalität hinaus.<br />

Abb 468<br />

Sie werden sicher festgestellt haben, dass nach der Konvertierung einige Namen von<br />

Abfragen in doppelte Anführungsstrichen (") gesetzt wurden. Dies ist jedes Mal dann der<br />

Fall, wenn innerhalb des Namens Leerzeichen vorkommen. Im Gegensatz zu <strong>Access</strong> erlaubt<br />

der SQL-Server dies nicht.<br />

Die SQL-Server Datenbankdiagramme entsprechen den <strong>Access</strong> Schema-Darstellungen (unter<br />

Extras/Beziehungen). Nach dem Transfer einer Datenbank existiert noch kein Diagramm. Sie<br />

erstellen nun ein Diagramm für Ihre Datenbank.<br />

8.2.4 Beispiel 122: Ein Datenbankdiagramm erstellen<br />

1. <strong>Das</strong> Projekt 120_122StadtlupeCS.adp ist geöffnet.<br />

2. Wählen Sie in der Objektleiste Datenbankdiagramme. Klicken Sie doppelt auf Erstellt ein<br />

Datenbankdiagramm unter Verwendung des Designers.<br />

Abb 469<br />

3. Im geöffneten Designer fügen Sie aus dem Fenster Tabelle hinzufügen dem Entwurfsbereich<br />

alle Tabellen der Datenbank hinzu. Schließen Sie das Fenster Tabelle hinzufügen wieder.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 63 / 77


4. Zwischen den Tabellen werden automatisch Verbindungslinien dargestellt, wenn es<br />

Tabellenbeziehung gibt. Ein Datenbankdiagramm entspricht also dem <strong>Access</strong><br />

Beziehungsfenster.<br />

Abb 470<br />

5. Klicken Sie auf das Kreuz unten rechts im Fenster. <strong>Das</strong> Datenbankdiagramm wird in einer<br />

Miniaturansicht dargestellt. Der Bereich innerhalb der gestrichelten Linie, den Sie mit<br />

gedrückter Maustaste verschieben können, wird im Datenbankfenster angezeigt.<br />

Abb 471 Ein Ausschnitt aus dem Datenbankdiagramm<br />

6. Schließen Sie das Datenbankdiagramm-Fenster und speichern Sie die Änderungen unter der<br />

Bezeichnung Standard ab.<br />

8.3 Sichten, Inline-Funktionen und Gespeicherte Prozeduren<br />

Wie Sie bereits im letzten Abschnitt sehen konnten, existieren in einer MSDE-Datenbank keine<br />

Abfragen, wie Sie es in <strong>Access</strong> sonst gewohnt sind, sondern Sichten, Inlinefunktionen und<br />

Gespeicherte Prozeduren. Dies erklärt sich aus der Abstammung der Desktop Engine von dem<br />

Datenbankserver-System MS SQL-Server. Eine <strong>Access</strong>-Abfrage ist ja ein echtes Allround-Talent,<br />

mit welcher Sie Daten auswählen können, die Parameter besitzen kann, aber auch dem Anfügen,<br />

Ändern und Löschen dient. Sogar Kreuztabellen für die erweiterte Datenanalyse können sehr<br />

effektiv mittels Abfragen erstellt werden. Datenbankserver besitzen dieses universelle<br />

Abfragenkonzept nicht. Stattdessen existieren verschiedene Objekt, die unterschiedlich eingesetzt<br />

werden.<br />

Sichten, die auf Datenbankservern auch als Views bezeichnet werden, sind ausschließlich für die<br />

Abfrage von Daten und die Zusammenstellung von Informationen aus mehreren Tabellen gedacht.<br />

Sie bestehen aus einer einzelnen SELECT Anweisung. Der Vorteil einer Sicht liegt in der großen<br />

Effektivität bei Abfrage und Berechnung auch sehr großer Datenmengen auf dem Server bzw. der<br />

MSDE.<br />

Sichten werden in der <strong>Access</strong>-<strong>2003</strong>-Oberfläche als Ansichten bezeichnet. Die Daten einer Sicht<br />

können zwar durch eine WHERE-Klausel ausgewählt und durch GROUP BY zusammengefasst,<br />

aber nicht auf dem Server sortiert werden!<br />

Sollen Abfragen mit Parametern ausgestattet oder sortiert werden, so kann man so genannte Inline-<br />

Funktionen verwenden. Diese liefern wie eine Sicht Abfrageergebnisse zurück, können aber auch<br />

mit Eingangswerten versehen werden. Darüber hinaus ist es möglich, in Inline-Funktionen mehr als<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 64 / 77


ein SELECT-Kommando zu verwenden. Es stehen hier alle Möglichkeiten zur Verfügung, die die<br />

Programmiersprache des Servers, das Transact-SQL, bietet.<br />

Sollen auf dem Server, in der Art einer <strong>Access</strong> Aktionsabfrage, Datensätze geändert werden, dann<br />

sollte am besten eine so genannte Gespeicherte Prozedur verwendet werden. Auch diese stellt den<br />

vollen Umfang der Transact-SQL-Befehle zur Verfügung, es wird aber nicht erwartet, dass eine<br />

Ergebnismenge zurück geliefert wird.<br />

In den folgenden Beispielen wird jeweils ein Beispiel zu diesen unterschiedlichen Objekten<br />

präsentiert. Dies soll natürlich nur ein erster Eindruck von den Möglichkeiten der <strong>Access</strong>/SQL-<br />

Server-Kombination sein.<br />

Zunächst wird eine recht umfangreiche Sicht erstellt, die Informationen zu Kunden und Heften in<br />

einer Auswertung anbietet.<br />

8.3.1 Beispiel 123: Eine SQL-Server Sicht erstellen<br />

1. Wechseln Sie in der Objektleiste des Projektes 123StadtlupeCS.adp in Abfragen und<br />

klicken Sie auf das Symbol Neu. Wählen Sie anschließend die Option Sicht entwerfen aus.<br />

OK. Der Sicht-Designer öffnet sich.<br />

Abb 472 Eine neue Abfrage (Sicht) wird erstellt.<br />

2. Fügen Sie im Dialogfeld die Tabellen Kunden, Aufträge, Anzeigenschaltungen und Hefte<br />

dem Entwurf der Abfrage hinzu.<br />

Abb 473 Tabellen werden hinzugefügt.<br />

3. Schließen Sie danach die Dialogbox. Im Diagramm-Fenster des Designers werden die<br />

Tabellen und ihre Beziehungen angezeigt.<br />

4. Aktivieren Sie die Anzeige des SQL-Befehls dieser Abfrage durch das SQL-Symbol in der<br />

Symbolleiste.<br />

Abb 474<br />

5. Wählen Sie nun die darzustellenden Felder aus, indem Sie in der Tabelle Kunden die<br />

Ankreuzkästchen vor den Feldern Kunden-Nr und Name sowie in der Tabelle Hefte vor dem<br />

Feld Heft-Nr anklicken.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 65 / 77


6. Sie erstellen nun ein berechnetes Feld. Tragen Sie dazu in der ersten Spalte des Rasters<br />

unterhalb von Heft-Nr den Ausdruck Preis + Aufschlag ein. Vergeben Sie als Alias die<br />

Bezeichnung Umsatz.<br />

7. Über das Menü Abfrage/Gruppieren wird jetzt die Zusammenfassung von Daten ermöglicht.<br />

In der Spalte Gruppieren nach des berechneten Feldes stellen Sie als Aggregatfunktion<br />

Summe ein.<br />

8. Speichern Sie die Sicht unter dem Namen Umsätze pro Kunde und Heft und führen Sie diese<br />

aus.<br />

Abb 475<br />

9. Wechseln Sie wieder in die Entwurfsansicht und überprüfen Sie im SQL-Fenster den vom<br />

Designer generierten SQL-Befehl. Diesen sollten Sie mit den bisher erworbenen<br />

Kenntnissen verstehen können.<br />

10. Schließen Sie die Abfrage anschließend.<br />

Entwurfsansicht.<br />

Abb 476 Die Sicht Umsätze pro Kunde und Heft in der<br />

Obwohl Sie keine Möglichkeit haben, die Sicht mit ORDER BY zu sortieren, können Sie<br />

doch das Ergebnis wie gewohnt in der Tabellenansicht über die üblichen Symbole sortieren.<br />

<strong>Das</strong> nächste Beispiel stellt vor, wie über eine Inline-Funktion eine Abfrage mit Parametern erstellt<br />

werden kann.<br />

8.3.2 Beispiel 124: Eine SQL-Server-Inlinefunktion erstellen<br />

1. Wechseln Sie in der Objektleiste des Projektes 124StadtlupeCS.adp in Abfragen und<br />

klicken Sie auf das Symbol Neu.<br />

2. Wählen Sie die Option Inlinefunktion entwerfen. OK. Der Sicht-Designer öffnet sich.<br />

3. Fügen Sie der Inlinefunktion die Tabellen Aufträge und Kunden hinzu.<br />

Abb 477<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 66 / 77


4. Wählen Sie nach dem Schließen des Dialogfeldes Tabelle hinzufügen aus der Tabelle<br />

Kunden die Felder Kunden-Nr und Name und aus der Tabelle Aufträge das Feld Erteilt am<br />

aus.<br />

5. In der Spalte Sortierungsart des Rasters stellen Sie anschließend ein, dass das<br />

Abfrageergebnis nach Kunden-Nr und Erteilt am aufsteigend sortiert werden soll.<br />

Abb 478<br />

6. Jetzt werden noch zwei Parameter vereinbart. Geben Sie in der Spalte Kriterien des Feldes<br />

Erteilt am den Ausdruck BETWEEN @Von AND @Bis ein.<br />

7. Zeigen Sie über Ansicht die Eigenschaften der Abfrage an. Kontrollieren Sie im Register<br />

Funktionsparameter, ob als Parametertypen korrekt datetime eingetragen wurde und<br />

schließen Sie das Fenster wieder.<br />

Abb 479<br />

8. Führen Sie die Abfrage aus.<br />

Abb 480<br />

Abb 481<br />

9. Speichern Sie die Inline-Funktion unter dem Namen Aufträge im Zeitraum.<br />

10. Geben Sie als ersten Parameter den Wert 1.1.2002 und als zweiten Parameter den Wert<br />

31.7.2002 ein.<br />

Abb 482 <strong>Das</strong> Ergebnis der Abfrage Aufträge im Zeitraum<br />

11. Wechseln Sie über das entsprechende Symbol in die SQL-Ansicht und überprüfen Sie den<br />

SQL-Befehl, der hinter Ihrer Abfrage steckt.<br />

12. Schließen Sie den Entwurf.<br />

Abb 483 Die Abfrage in der SQL-Ansicht<br />

<strong>Das</strong> letzte Beispiel stellt vor, wie eine Gespeicherte Prozedur funktioniert, die Änderungen in<br />

Datensätzen durchführt. Da diese Prozedur aus mehr als einem Befehl bestehen soll, wird diese<br />

nicht mit einem Designer, sondern über einen Texteditor erstellt.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 67 / 77


8.3.3 Beispiel 125: Eine SQL-Server-gespeicherte Prozedur<br />

erstellen<br />

1. Wechseln Sie in der Objektleiste des Projektes 125StadtlupeCS.adp in Abfragen und<br />

klicken Sie auf das Symbol Neu. Wählen Sie den Eintrag Text–Gespeicherte Prozedur<br />

entwerfen .<br />

2. Nach dem OK landen Sie in einem einfachen Texteditor. In diesem sind schon die ersten<br />

Befehlszeilen eingetragen, die auf einem Datenbankserver eine Prozedur erzeugen.<br />

Abb 484<br />

3. Speichern Sie als erstes die neue Prozedur unter dem Namen Neue Heftpreise. Beachten Sie,<br />

dass nach dem Speichern die erste Zeile des Textes in CREATE PROCEDURE "Neue<br />

Heftpreise" geändert wurde.<br />

4. Die Prozedur soll einen Parameter erhalten. Entfernen Sie die beiden Symbole /* und */ im<br />

Programmtext. Dies sind so genannte Kommentare.<br />

5. Ändern Sie die Zeile @parameter1 datatype = default value in @Bruttoaenderung<br />

smallmoney . Entfernen Sie das Komma am Ende.<br />

6. Löschen Sie die Zeile @parameter2 datatype OUTPUT vollständig.<br />

7. Fügen Sie der Prozedur hinter dem Text /* SET NOCOUNT ON */ jetzt noch die<br />

ZeilenDECLARE @Nettoaenderung smallmoneySET @Nettoaenderung =<br />

@Bruttoaenderung / 1.06UPDATE Hefte SET Heftpreis = Heftpreis +<br />

@Nettoaenderunghinzu.<br />

8. Damit ist die Prozedur vollständig. Speichern Sie diese erneut. Sie wird dabei geprüft.<br />

Treten keine Fehler auf, so starten Sie sie. Geben Sie 1 als Preisänderung an. Nachdem die<br />

Prozedur ausgeführt wurde, haben Sie den Bruttopreis um 1 € erhöht.<br />

Abb 485<br />

8.4 ODBC Datenquellen verwenden<br />

In diesem Abschnitt soll kurz aufgezeigt werden, wie über eine so genannte ODBC-Datenquelle auf<br />

einen Datenbankserver zugegriffen werden kann. <strong>Das</strong> Verfahren unterscheidet sich technisch<br />

gesehen recht deutlich von dem in den vorherigen Abschnitten aufgezeichneten Weg. Wir haben es<br />

hierbei nämlich nicht mit <strong>Access</strong>-Projekten zu tun. Die gibt es nur für den SQL-Server. Stattdessen<br />

werden bei einem ODBC-Zugriff auf eine Datenbank einzelne Tabellen in eine ganz normale<br />

Datenbankdatei der Jet-Engine (also eine „mdb“-Datei) eingebunden.<br />

Bevor Sie auf einen Datenbankserver in dieser Art zugreifen können, müssen Sie in der Regel<br />

zunächst einmal den ODBC-Zugriff konfigurieren. Dabei legen Sie fest, auf welchen Server<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 68 / 77


zugegriffen werden soll, mit welchen Kontoinformationen die Verbindung passieren soll und Sie<br />

legen Details der Verbindung fest.<br />

All diese Informationen werden auf Ihrem PC entweder in einer Datei oder in der Registry unter<br />

einem frei definierbaren Namen abgelegt. Diesen Namen bezeichnet man auch als Datenquellen-<br />

Namen oder „Data Source Name“ - DSN. Diese Abkürzung begegnet einem häufig, wenn mit<br />

ODBC gearbeitet wird. Wichtig ist noch zu wissen, dass es System-DSNs, Benutzer-DSNs und<br />

Datei-DSNs gibt. Diese unterscheiden sich nur in der Art der Informationsspeicherung. Benutzerund<br />

System-Datenquellen werden in der Registry des Rechners abgelegt. Dabei steht die System-<br />

DSN allen Benutzern des Gerätes zur Verfügung, die Benutzer-DSN nur einem speziellen Benutzer.<br />

Eine Datei-DSN kann in einem Netzwerk verwendet werden, um die Verbindungsinformationen<br />

global zur Verfügung zu stellen.<br />

Für die Verwaltung der Datenquellen gibt es im Betriebssystem ein eigenes Management-<br />

Werkzeug, die Datenquellenverwaltung. Mit deren Hilfe wird in den Beispielen zu ODBC eine<br />

Datenquelle eingerichtet.<br />

Die folgenden Beispiele funktionieren nur, wenn die MSDE auf Ihrem Rechner installiert ist und<br />

Sie bereits die StadtlupeSQL Datenbank angelegt haben, wie in den vorangegangenen Beispielen<br />

beschrieben wurde. Natürlich ist der Zugriff auf die MSDE per ODBC nur als Beispiel zu<br />

verstehen. <strong>Access</strong> Projekte arbeiten hier viel direkter und effektiver. Prinzipiell unterscheidet sich<br />

das Vorgehen jedoch nicht von dem Anlegen einer Datenquelle für ein anderes Server-System.<br />

8.4.1 Beispiel 126: Eine ODBC Systemdatenquelle einrichten<br />

1. Öffnen Sie die Datenquellen-Verwaltung auf Ihrem PC. Diese finden Sie unter Windows XP<br />

in Start/Systemsteuerung/Verwaltung/Datenquellen (ODBC).<br />

2. Klicken Sie im Register System-DSN auf die Schaltfläche Hinzufügen.<br />

Abb 486<br />

3. Wählen Sie aus den installierten Treibern den SQL-Server aus.<br />

4. Nach Fertig stellen vergeben Sie zunächst einen sprechenden Namen (Stadtlupe) für die<br />

DSN ein.<br />

5. Als Server wählen Sie aus der Liste (local). Damit legen Sie Ihre MSDE fest.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 69 / 77


Abb 487<br />

6. Im nächsten Schritt legen Sie die Authentifizierungsmethode fest, die für diese DSN<br />

verwendet werden soll. Wir gehen hier von Windows Authentifizierung aus. Behalten Sie<br />

daher die Voreinstellungen bei.<br />

Abb 488<br />

7. Im nächsten Dialogfeld wählen Sie als Standarddatenbank die Datenbank aus, die Sie in<br />

Bsp. 119 mit dem Upsizing-Assistenten erstellt haben (z. B. 119StadtlupeSQL).<br />

Abb 489<br />

8. Klicken Sie noch einmal auf Weiter und Fertigstellen, bis Sie das letzte Dialogfeld<br />

erreichen. Dort haben Sie die Möglichkeit, über Datenquelle testen Ihre Einstellungen zu<br />

prüfen.<br />

Abb 490<br />

9. Ist der Test erfolgreich abgelaufen, so schließen Sie das Dialogfeld. Die Datenquelle<br />

Stadtlupe steht nun allen Benutzern Ihres PCs zur Verfügung.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 70 / 77


Abb 491<br />

8.4.2 Beispiel 127: Mit ODBC Daten arbeiten<br />

1. Starten Sie MS <strong>Access</strong> und legen Sie eine neue leere Datenbank an. Vergeben Sie den<br />

Namen StadtlupeODBC.mdb für die neue Datei.<br />

2. Über Datei/Externe Daten/Tabellen verknüpfen verknüpfen Sie die Tabellen der Server-<br />

Datenbank über ODBC mit der Datei.<br />

3. Wählen Sie als Dateityp ODBC - Databases aus.<br />

4. Wechseln Sie im Dialog Datenquelle auswählen in das Register Computerdatenquelle . Dort<br />

finden Sie den Eintrag Stadtlupe.<br />

Abb 492<br />

5. Nach OK beginnt die Auswahl der zu verknüpfenden Tabellen oder Sichten.<br />

6. Wählen Sie die Basistabellen Anzeigenschaltungen, Aufträge, Hefte, Mitarbeiter,<br />

Kleinanzeigen und Kunden aus.<br />

Abb 493<br />

7. Nach OK werden die Tabellen mit Ihrer neuen Datenbank verknüpft. Entsprechend wird das<br />

ODBC-Symbol vor dem Tabellennamen angezeigt.<br />

Abb 494<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 71 / 77


8. Sie können nun mit den eingebundenen Tabellen so arbeiten, als gehörten Sie zu Ihrer<br />

lokalen Datenbank.<br />

Allerdings ist es nicht möglich, die Tabellenbeziehungen vollständig darzustellen. Dies ist<br />

aber auch logisch, weil sich der Server um die Relationen zwischen den Tabellen kümmern<br />

muss.<br />

8.5 <strong>Access</strong> und XML<br />

XML wurde als ein Format entwickelt, mit dem sich strukturierte Inhalte im World Wide Web<br />

austauschen lassen. Die Universalität des WWW einerseits, die Flexibilität von XML andererseits<br />

haben dazu geführt, dass XML inzwischen auch für Aufgaben benutzt wird, für die es ursprünglich<br />

nicht vorgesehen war, z.B. als Format für Officeprogramme oder für die Speicherung der<br />

Konfigurationseinstellungen von Benutzungsoberflächen. In der Praxis können vor allem zwei<br />

Einsatzbereiche von XML unterschieden werden:<br />

• Publishing und Management von Dokumenten: Hier dient XML dazu, Informationen für<br />

menschliche Rezipienten zu veröffentlichen. Mit XML lassen sich dabei die Informationen<br />

einerseits inhaltlich strukturieren und andererseits in einer Weise darstellen, die<br />

verschiedenen Ausgabemedien gerecht wird.<br />

• Web-Services: Hier erlaubt XML die Festlegung von Austauschformaten für das so<br />

genannte "Distributed Computing", bei dem Rechner im World Wide Web für die Lösung<br />

bestimmter Aufgaben lose miteinander verbunden werden können. In XML-Formaten wird<br />

einerseits erfasst, welche Dienste ein Anbieter zur Verfügung stellt und wie diese Dienste<br />

abgerufen werden können; andererseits kommunizieren die Rechner über SML-Botschaften<br />

miteinander, wenn sie tatsächlich auf die jeweils bereitgestellten Dienste zugreifen.<br />

Sie können in MS <strong>Access</strong> Daten in eine XML (Extensible Markup Language) - Datei exportieren.<br />

Bei den Informationen, die im- oder exportiert werden sollen, können Sie auswählen zwischen den<br />

eigentlichen Daten, der Struktur sowie der Präsentation.<br />

8.<strong>5.1</strong> Beispiel 128: Exportieren von <strong>Access</strong>-Daten in eine XML-<br />

Datei<br />

1. Die Datenbank 128_Stadtlupe.mdb ist geöffnet.<br />

2. Öffnen Sie die Tabelle Anzeigenschaltungen.<br />

3. Wählen Sie nach Datei/Exportieren als Dateityp XML (*.xml) und als Speicherort den<br />

Ordner Stadtlupe.<br />

Abb 495 Die Tabelle Anzeigenschaltungen wird exportiert.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 72 / 77


4. Nach Exportieren wählen Sie als zu exportierende Informationen Daten (XML ), Schema der<br />

Daten (XSD ) und Präsentation Ihrer Daten (XLS ).<br />

aus.<br />

Abb 496 Wählen Sie die zu exportierenden Informationen<br />

5. Klicken Sie auf Weitere. Im Register Daten geben Sie die zu exportierenden Daten bzw.<br />

Datensätze und den Speicherort der exportierten Datei an. Der Ordner Stadtlupe, den Sie<br />

zuvor gewählt hatten, ist voreingestellt. Im Register Schema wählen Sie Separates<br />

Schemadokument erstellen, um eine von der Datendatei getrennte Schemadatei zu erstellen,<br />

im Register Präsentation wählen Sie Client (HTML).<br />

Abb 497<br />

6. Betrachten Sie das Ergebnis im Windows-Explorer: Sie müssten im Ordner Stadtlupe vier<br />

neue Dateien vorfinden: die Datei Anzeigenschaltungen in vier verschiedenen Formaten.<br />

Abb 498 <strong>Das</strong> Ergebnis des Exports im Window-Explorer<br />

7. Öffnen Sie die Datei Anzeigenschaltungen.xml im Browser. Sie erkennen die Struktur der<br />

XML-Datei.<br />

Abb 499 Die Struktur der XML-Datei wird angezeigt.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 73 / 77


8.6 Übungsaufgaben<br />

8.6.1 Aufgaben<br />

In den folgenden Aufgaben wird aus der Datenbank Handel.mdb eine Client/Server Lösung.<br />

8.6.2 Aufgabe 47: Die Datenbank Handel auf MSDE umstellen<br />

1. Die Datenbank 047Handel.mdb ist geöffnet. Stellen Sie sicher, dass der MS SQLServer<br />

aktiv ist.<br />

2. Verwenden Sie den <strong>Access</strong> Upsizing Assistenten, um eine Client/Server Version der<br />

Datenbank 047Handel.mdb zu erstellen. (8.2.1 Beispiel 119: Upsizing einer vorhandenen<br />

<strong>Access</strong>-Datenbank)<br />

3. Verwenden Sie den Datenbanknamen HandelSQL. (8.2.1 Beispiel 119: Upsizing einer<br />

vorhandenen <strong>Access</strong>-Datenbank)<br />

4. Legen Sie ein neues <strong>Access</strong> Projekt HandelCS an. (8.2.1 Beispiel 119: Upsizing einer<br />

vorhandenen <strong>Access</strong>-Datenbank)<br />

5. Untersuchen Sie im vom Assistenten angezeigten Bericht, ob Fehler vorliegen.<br />

6. Überprüfen Sie abschließend, welche Dateien im Verzeichnis C:\Programme\Microsoft SQL<br />

Server\MSSQL\Data angelegt wurden. Sie sollten eine *.mdf und ein *.ldf Datei finden.<br />

8.6.3 Aufgabe 48: Ein Datenbank-Diagramm anlegen<br />

1. Legen Sie zu Ihrer neuen MSDE-Datenbank HandelCS.adp eine grafische Darstellung des<br />

Datenbankschemas an. (8.2.4 Beispiel 122: Ein Datenbankdiagramm erstellen)<br />

2. Verwenden Sie den Designer und fügen Sie sämtliche Tabellen hinzu.<br />

3. Ordnen Sie die Tabellen in geeigneter Weise an und vergleichen Sie Ihr Ergebnis mit der<br />

Abbildung.<br />

4. Speichern Sie das Diagramm unter dem Namen Standard und schließen Sie es.<br />

Abb 500<br />

8.6.4 Aufgabe 49: Eine benutzerdefinierte Funktion erstellen<br />

1. <strong>Das</strong> Datenbankprojekt Handel.adp ist geöffnet.<br />

2. Die Funktion soll Artikel aus einer bestimmten Warengruppe sortiert darstellen.<br />

3. Legen Sie eine neue Funktion mit dem Designer an. (8.2.3 Beispiel 121: Die Objekte der<br />

MSDE erforschen)<br />

4. Wählen Sie Felder und Eigenschaften so aus, dass das Ergebnis der Funktion der Abbildung<br />

entspricht. Es sollen nur Werkzeuge angezeigt werden.<br />

5. Testen Sie die Funktion und speichern Sie diese unter dem Namen WerkzeugeSortiert ab.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 74 / 77


Abb 501<br />

8.6.5 Aufgabe 50: Eine gespeicherte Prozedur erstellen<br />

1. Die gespeicherte Prozedur, die jetzt erstellt werden soll, nimmt als Parameter einen<br />

Ortsnamen entgegen und zeigt dann Kundeninformationen dazu an. (8.3.3 Beispiel 125:<br />

Eine SQL-Server-gespeicherte Prozedur erstellen)<br />

2. Erstellen Sie die gespeicherte Prozedur mit Hilfe des Designers.<br />

3. Legen Sie eine Abfrage an, deren Feldauswahl der Abbildung entspricht.<br />

Abb 502<br />

4. Wechseln Sie in die SQL-Ansicht und fügen Sie der Prozedur einen Parameter hinzu: @Ort<br />

varchar(100). (8.3.3 Beispiel 125: Eine SQL-Server-gespeicherte Prozedur erstellen)<br />

5. Der Parameter @Ort soll in der WHERE-Klausel verwendet werden. Setzen Sie den<br />

Abfrageoperator LIKE ein, um das Feld Ort mit dem Parameter zu vergleichen.<br />

6. Testen Sie die Abfrage. Beim Starten erscheint ein Dialogfeld, in welches Sie den<br />

Vergleichswert für den Ort eingeben können. Verwenden Sie Berlin.<br />

Abb 503<br />

7. <strong>Das</strong> Ergebnis entspricht dann genau der Abbildung.<br />

Abb 504<br />

8. Speichern Sie die Prozedur unter dem Namen KundenInOrt.<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 75 / 77


Anhang A Übersicht über die Beispieldatenbank<br />

Die Abfragen, die Sie mit der Structured Query Language entwickeln werden, basieren auf der<br />

Datenbank Handel, deren Datenbankschema Sie hier abgebildet finden. <strong>Das</strong> Datenbankschema kann<br />

Ihnen eine gute Hilfe sein, wenn es darum geht, die folgenden Aufgaben zu lösen. Im Großen und<br />

Ganzen sollte das Verständnis der Tabellenstruktur Sie vor keine größeren Probleme stellen.<br />

Sicherheitshalber möchten wir dennoch kurz den Aufbau der Datenbank erläutern, damit Sie einen<br />

leichten Zugang finden.<br />

Bei der Datenbank Handel.mdb haben wir es mit einer einfachen Einkauf-/Verkauf-Lösung zu tun.<br />

Es geht um eine Artikelverwaltung und den Nachweis der Lieferanten der Artikel. Dies ist die<br />

Einkaufsseite der Datenbank. Sie beinhaltet die Tabellen Lieferanten und Artikel. Auf der<br />

Verkaufsseite werden Kunden- und Bestellinformationen verwaltet. Zu diesem Bereich gehören die<br />

Tabellen Kunden, Bestellungen und Bestellpositionen.<br />

Die Relationen zwischen den Tabellen können Sie der Abbildung entnehmen.<br />

Abb 505 Die Beziehungen in der Datenbank Handel<br />

Die Datenbank Handel und alle Datenbanken, die Sie für die Übungsaufgaben benötigen, finden Sie<br />

im Ordner Übungsdateien/Handel. Der Bezeichnung Handel.mdb ist die fortlaufende Nummer des<br />

jeweiligen Beispiels vorangestellt. So ist z. B. die Datenbank 002Handel.mdb die Übungsdatei für<br />

die Übungsaufgabe 2.<br />

Anhang B Informationen zu <strong>Access</strong> im Internet<br />

Sehr geehrte Leserin, sehr geehrter Leser,<br />

anbei finden Sie eine nützliche Aufstellung von Links zu weiterführenden Themen rund um<br />

Microsoft <strong>Access</strong>. Aufgrund der vielfältigen Fragen und Anforderungen, auf die das Buch nicht in<br />

allem Details eingehen kann, werden Sie sicher in diesen Foren alles Notwendige finden.<br />

<strong>Access</strong>-Paradies - Beispiele, Tools und Lösungen: http://www.access-paradies.de<br />

MS-Office-Wissen - FAQ, Tipps, Beispiele,<br />

Downloads, Links<br />

http://www.ms-office-wissen.de<br />

MS-Office-Forum - Forum für Microsoft Office,<br />

Visual Basic, SQL und Windows<br />

http://www.ms-office-forum.de<br />

<strong>Access</strong>-Home - Tipps, Beispiele, Tools<br />

http://www.access-home.de<br />

<strong>Access</strong> Datenbank Reparatur - Hilfe bei defekten<br />

Datenbanken<br />

http://www.arc24.de<br />

<strong>Access</strong> Datenrettung - Hilfe bei defekten<br />

Datenbanken<br />

http://www.access-rettung.de<br />

<strong>Access</strong>-FAQ von Karl Donaubauer<br />

http://www.donkarl.com<br />

The <strong>Access</strong> Web - Englische FAQ<br />

http://www.mvps.org/access/<br />

Office Update<br />

http://office.microsoft.com/de-de/officeupdate/<br />

Office Home – Tools, Infos, Hilfe, Produktupdates http://office.microsoft.com/de-de/default.aspx<br />

Office Downloadcenter<br />

http://office.microsoft.com/dede/officeupdate/default.aspx<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 76 / 77


<strong>Access</strong>-Paradies - Beispiele, Tools und Lösungen: http://www.access-paradies.de<br />

Microsoft Support<br />

http://support.microsoft.com/?ln=de<br />

Knowledge Base<br />

http://support.microsoft.com/search/<br />

Tabelle 16 Nützliche Links im Internet (Stand: 06.09.05)<br />

Anhang C Schema der Beispieldatenbank Stadtlupe<br />

Abb 506<br />

Grundlagen Microsoft <strong>Access</strong> <strong>2003</strong> - <strong>Professional</strong> P.Mölders 11-2008 Seite: 77 / 77

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!