Datenzugriffsseiten mit Access 2000

Autor: André Minhorst, Duisburg

Seit Access 2000 gibt es eine neue Technologie, die den Zugriff auf die Daten von Access-Datenbanken über das Internet ermöglicht. Genau genommen handelt es sich um eine neue Objektart, die den Formularen ähnelt. Der Unterschied ist, dass Datenzugriffsseiten nicht nur bei geöffneter Access-Datenbank, sondern auch als HTML-Seite angezeigt werden können.

Der Datenbankzugriff via Internet kann auf unterschiedliche Arten erfolgen. Eine der bekanntesten Arten ist der Zugriff mittels ASP-Seiten. ASP-Seiten sind prinzipiell HTML-Seiten, die auf dem Internet-Server erst auf eine Anfrage hin dynamisch zusammengestellt werden. Dabei schickt der Anwender eine mittels HTML-Formular zusammengestellte Anfrage an den Webserver. Ein ASP-Skript stellt dann die entsprechenden Informationen aus der Datenbank zu einer HTML-Seite zusammen. Die HTML-Seite wiederum erscheint danach im Browser des Anwenders.

Bei Access 2000 erwartet den Microsoft-Anwender eine Alternative: Mit der neuen Objektart, den Datenzugriffsseiten, können Sie beliebige Datenbankinhalte auf HTML-Seiten anzeigen.

Vorteile von Datenzugriffsseiten

Datenzugriffsseiten haben Vor- und Nachteile. Zu den Vorteilen gehört, dass der gelernte Access-Entwickler sich keine neue Programmiersprache aneignen muss, er kann mit den vorhandenen Kenntnissen praktisch sofort loslegen. Die vorhandenen Steuerelemente ähneln denen der Formulare und Berichte, sind allerdings nicht mit ihnen identisch. Wenn man eine Datenzugriffsseite erstellt, entsteht automatisch eine HTML-Seite. Access speichert die Datenzugriffsseiten nicht wie die anderen Objekte in der Datenbank, sondern als separates Dokument. Im Datenbankfenster sehen Sie lediglich eine Verknüpfung auf die Datenzugriffsseite. Ein weiterer Vorteil ist, dass Sie keinen Internet-Server benötigen, um die Daten abzurufen.

Nachteile von Datenzugriffsseiten

Je nachdem, in welcher Art und Weise Sie Datenzugriffsseiten einsetzen möchten, entstehen auch Nachteile durch einige Einschränkungen beim Zugriff auf die Datenbank.

Die erste Einschränkung liegt darin, dass Datenzugriffsseiten nicht mit jedem x-beliebigen Browser, sondern nur mit dem Internet Explorer aufgerufen werden können. Die zweite Einschränkung ist noch schwerwiegender: Die Anzeige der Daten setzt voraus, dass auf dem aufrufenden Rechner Office 2000 installiert ist.

Einsatzgebiet von Datenzugriffsseiten

Durch die genannten Einschränkungen ist von einem Einsatz der Datenzugriffsseiten für solche Anwender, die ihre Daten der ganzen Welt präsentieren möchten, abzuraten. Empfehlenswert ist ihr Einsatz aber sicher dort, wo Daten beispielsweise in einem Firmennetzwerk via Intranet bereitgestellt werden sollen. Vor allem die Möglichkeit, bestimmte Daten via Browser abzurufen, anstatt jedes Mal die Datenbankanwendung zu starten, scheint reizvoll.

Entgegen der Möglichkeit bei älteren Access-Versionen, Objekte der Datenbank als HTML-Datei zu speichern, können Sie mit Daten-

zugriffsseiten die gewünschten Daten nicht nur durch entsprechende Filter oder Sortierungen einschränken, sondern auch mit geeigneten Steuerelementen bearbeiten. In den folgenden beiden Kapiteln erfahren Sie zunächst, wie Sie Daten mit Hilfe von Datenzugriffsseiten anzeigen und wie Sie die angezeigten Daten bearbeiten können.

Bild 1: Datenzugriffsseiten im Datenbankfenster

In diesem Kapitel erfahren Sie zunächst, wie Sie mit Hilfe eines Assistenten eine Datenzugriffsseite erstellen können. Anschließend werden Sie lernen, manuell eine Datenzugriffsseite zu bearbeiten. Um die folgenden Beispiele nachvollziehen zu können, verwenden Sie die Datenbank Nordwind.

Bild 2: Auswahl der anzuzeigenden Datenfelder

Hinweis

Wenn Sie die Datenbank Nordwind zunächst kopieren möchten, um nicht in der Originalversion zu arbeiten, beachten Sie Folgendes: Die Datenzugriffsseiten der Beispieldatenbank werden wie alle anderen Datenzugriffsseiten nicht mit der Datenbank, sondern in separaten HTML-Dateien gespeichert. Vergessen Sie daher nicht, auch die entsprechenden HTML-Dateien in das gewünschte Verzeichnis zu kopieren.

Datenzugriffsseiten per Assistent

Wenn Sie eine Datenzugriffsseite mit einem Assistenten erstellen möchten, müssen Sie im Datenbankfenster zunächst in das Register Seiten wechseln. Hier wählen Sie den Eintrag Erstellt eine Datenzugriffsseite unter Verwendung eines Assisten- ten aus (siehe Bild 1).

Abfrage erstellen

Bevor Sie damit beginnen, Datenzugriffsseiten zu erstellen, bereiten Sie noch eine Abfrage vor. In der Abfrage sollen alle Kunden sowie alle jemals von den Kunden bestellten Artikel angezeigt werden. Ziehen Sie daher die Tabellen Artikel, Bestellungen, Bestelldetails und Kunden in die Abfrage. Anschließend ziehen Sie aus der Tabelle Artikel das Feld Artikelname und aus der Tabelle Kunden das Feld Firma in das Entwurfsraster der neuen Abfrage.

Das Gleiche tun Sie mit den Feldern Einzelpreis, Anzahl und Rabatt der Tabelle Bestelldetails. Wenn Sie nun in die Datenblattansicht der Abfrage wechseln, finden Sie eine Zusam-menstellung aller Firmen und der von den jeweiligen Firmen gekauften Artikel inklusive Bestelldetails. Nachdem Sie die Abfrage erstellt haben, können Sie den Assistenten zur Erstellung der Datenzugriffsseiten starten. Im ersten Dialogfenster wählen Sie zunächst die gewünschte Datenherkunft, also eine Tabelle oder Abfrage, aus.

Bild 3: Gruppierung der Daten

Bild 4: Die Daten werden nun nach Firmen gruppiert.

Bild 5: Sortieren von Daten

Anschließend zeigt der Assistent alle Felder der ausgewählten Datenquelle an. Nachdem Sie die Abfrage qryKundenArtikel ausgewählt haben, können Sie die gewünschten Felder in die Auswahl ziehen (siehe Bild 2).

Anschließend können Sie entscheiden, ob die Daten gruppiert angezeigt werden sollen (siehe Bild 3).

Da Sie die Daten nach Firmen gruppieren möchten, markieren Sie auf dem Listeneintrag Firmen und klicken auf die Taste mit dem Pfeil nach rechts (siehe Bild 4).

Schließlich können Sie auch noch eingeben, ob die gewünschten Daten sortiert werden sollen. Im vorliegenden Beispiel können Sie nur das Feld Artikelname auswählen (siehe Bild 5).

Im nun folgenden Dialog warten nun eine Menge Entscheidungen auf Sie: Zunächst einmal müssen Sie festlegen, unter welchem Namen die Seite gespeichert werden soll.

Bedenken Sie bei der Auswahl, dass Sie im Prinzip kein Datenbankobjekt, sondern eine HTML-Seite benennen. Außerdem können Sie auch noch angeben, ob Access die Seite direkt im Browser anzeigen soll oder ob Sie zunächst manuell den Entwurf überarbeiten möchten. Sie können der Seite auch eines von mehreren vorgefertigten Designs zuweisen (siehe Bild 6).

Um Ihnen eine Enttäuschung zu ersparen: Sie sollten zunächst noch einmal den Seitenentwurf anpassen, bevor Sie sich die Datenzugriffsseite im Browser ansehen. Aktivieren Sie also die entsprechende Funktion und klicken Sie auf die Schaltfläche Fertig stellen.

Access öffnet nun die Datenzugriffsseite in der Entwurfsansicht (siehe Bild 7). Hier erwartet Sie nun ein leichtes

Bild 6: Festlegen des Namens und anderer Informationen

Bild 7: Der erste Entwurf der Datenzugriffsseite

Bild 8: Sortieren nach Gruppen

Chaos. Eigentlich entspricht die Ansicht aber beispielsweise der eines Formulars, abgesehen davon, dass hier auch die Navigationsleisten bereits als Steuerelemente abgebildet sind. Im oberen Teil befinden sich entsprechend die Kopfbereiche der Daten.

Zunächst einmal sollten Sie nun die vier Felder Artikelname, Einzelpreis, Anzahl und Rabatt nebeneinander statt untereinander anordnen. Zusätzlich sollen die dazugehörigen Bezeichnungsfelder über den Feldern angeordnet werden – aber nicht zu jedem Datensatz, sondern nur einmal pro Kunde.

Beschriftungsbereich einrichten

Dafür richten Sie einen neuen Bereich ein – einen so genannten Beschriftungsbereich. Führen Sie dazu den Menübefehl Ansicht ( Sor-tieren und Gruppieren aus.

Anschließend öffnet sich der entsprechende Dialog (siehe Bild 8). Hier finden Sie in der Liste Gruppendatensatzquelle die vorhandenen Bereiche. Wählen Sie den gewünschten Bereich aus (im vorliegenden Fall den Bereich qryKundenArtikel). ändern Sie dann den Wert der Eigenschaft Beschriftungsbereich auf Ja. Wenn Sie den Dialog schließen, dann finden Sie den neuen Bereich in der Entwurfsansicht des Datenblattes wieder.

Sie können nun die Beschriftungsfelder der Artikelinformationen in den neuen Beschriftungsbereich verschie-ben (siehe Bild 9).

Alle Datensätze anzeigen

Sie haben nun alle Voraussetzungen geschaffen, um die Artikel eines Kunden untereinander in Listenform anzeigen zu lassen. Damit dies auch wirklich geschieht, müssen Sie nun nur noch zwei weitere Eigenschaften anpassen.

Bild 9: Der neue Beschriftungsbereich mit Beschriftungsfeldern

Bild 10: Alle Artikel eines Kunden

Zunächst einmal sollen die Daten direkt angezeigt werden. Dazu öffnen Sie erneut den Dialog Sortieren und Gruppieren. Markieren Sie den gewünschten Bereich und stellen Sie die Eigenschaft Standardmäßig erweitert für den Bereich qryKundenArtikel-Firma auf den Wert Ja ein. Für den Bereich qryKundenArtikel setzen Sie den Wert der Eigenschaft Dateiseitengröße auf Alle und den Wert der Eigenschaft Datensatznavigationsbereich auf Nein. Mit der Eigenschaft Dateiseitengröße können Sie festlegen, wie viele Datensätze gleichzeitig angezeigt werden sollen. In diesem Fall benötigen Sie auch keinen Datensatznavigationsbereich mehr. Je nach Ihren Vorlieben können Sie natürlich auch weniger Datensätze anzeigen und dafür mit einem Datensatznavigationsbereich arbeiten.

Das Ganze sieht jetzt etwa wie in Bild 10 aus. Da das noch nicht der Höhepunkt der Access-Evolution ist, sollten Sie noch ein wenig daran arbeiten.

Da ein Kunde mitunter auch mehrere unterschiedliche Artikel bestellt hat als auf einer Seite dargestellt werden können, sollten Sie die Anzahl doch auf eine bestimmte Zahl von Datensätzen festlegen, z. B. zehn.

Die derzeitige Art der Anzeige der Daten erweckt leicht den Eindruck, dass man sie bearbeiten kann.

Das Bearbeiten der Datensätze ist aber nur dann möglich, wenn nur ein einziger Datensatz angezeigt wird, siehe nächstes Kapitel. Deshalb sollten Sie dem Anwender diesen Eindruck nehmen und die Textfelder so gestalten, dass sie wie eine herkömmliche Liste aussehen – d. h. beispielsweise, dass die Felder nicht vertieft angezeigt werden. Dazu müssen Sie die Eigenschaft BorderWidth auf den Wert 0 einstellen und einige Trennlinien einfügen (siehe Bild 11). Die Farbe der Navigationssteuerelemente lässt sich leider nicht anpassen.

Bild 11: Artikel in Listenform

Berechnungsfeld einfügen

Wie in Formularen und Berichten lassen sich auch auf Datenzugriffsseiten Berechnungen durchführen. Aus dem Einzelpreis, der Stückzahl und dem Rabatt soll die Datenzugriffsseite nun den Gesamtpreis je Position ermitteln und ausgeben. Die Ausgabe soll rechts neben den einzelnen Informationen angezeigt werden.

Bevor Sie beginnen, müssen Sie noch eines beachten: Sie können in Datenzugriffsseiten keine Makros oder VBA-Prozeduren verwenden. Daher können Sie unter anderem das zu berechnende Feld direkt in der Abfrage berechnen lassen. Fügen Sie der Abfrage also ein neues Feld hinzu und geben Sie in die Spalte Feld den folgenden Ausdruck ein:

Gesamtpreis: [Bestelldetails].[Einzelpreis]*[Anzahl]*(1-[Rabatt])

Nun können Sie das Ergebnis der Berechnung in die Datenzugriffsseite einbinden.

Und so gehen Sie vor:

  • Zeigen Sie die Datenzugriffsseite in der Entwurfsansicht an.
  • Zeigen Sie die Feldliste der aktuellen Datenherkunft an, indem Sie den Menübefehl Ansicht ( Feldliste betätigen.
  • Wählen Sie aus der Feldliste das Feld Gesamtpreis aus (siehe Bild 12) und ziehen Sie es in den Artikel-Kopfbereich neben die anderen Felder.
  • Ziehen Sie das dazugehörende Beschriftungsfeld in den darüber liegenden Beschriftungsbereich neben die anderen Beschriftungen.
  • Bild 12: Auswahl eines zusätzlichen Feldes aus der Feldliste

    Währungsformat einstellen

    Leider zeigt die Datenzugriffsseite das Feld noch nicht im richtigen Format, nämlich dem Währungsformat, an. Um das zu erreichen, führen Sie die folgenden Schritte durch:

  • Klicken Sie auf das Feld, das den Gesamtpreis enthält.
  • Aktivieren Sie die Anzeige des Eigenschaftsfensters mit dem Menübefehl Ansicht ( Eigenschaften, falls es noch nicht angezeigt wird.
  • Wechseln Sie im Eigenschaftsfenster in das Register Daten.
  • ändern Sie die Eigenschaft ControlSource in den folgenden Wert:
  • PostenGesamt: Format([Gesamtpreis],"0.00 DM")

    Access zeigt das Feld nun im richtigen Format an.

    Sie können die Werte nun noch rechts ausrichten, indem Sie die Eigenschaft TextAlign, die Sie im Register Format der Texteigenschaften finden, auf den Wert Right einstellen.

    Bild 13: Die Datenzugriffsseite nimmt Form an.

    Bild 14: Eigenschaften von Navigationssteuerelementen

    überschrift hinzufügen

    Damit der Anwender auch weiß, was die HTML-Seite überhaupt anzeigt, sollten Sie die überschrift noch anpassen. Klicken Sie doppelt auf die Stelle mit der Beschriftung Titeltext durch Klicken hinzufügen, um eine neue überschrift einzugeben. Nach dem Klicken verschwindet der Hinweistext und die blinkende Einfügemarke erscheint. Geben Sie hier eine sinnvolle überschrift ein (z. B. Kunden und deren bisher bestellte Artikel) und formatieren Sie sie dann nach Ihren Wünschen (siehe Bild 13).

    Anpassen der Navigationssteuerelemente

    Es stört nun noch die Beschriftung in den Navigationssteuerelementen. Um die Beschriftung anzupassen, klicken Sie im Entwurfsmodus auf das gewünschte Steuerelement und zeigen die Eigenschaften an. Wechseln Sie in das Register Andere, um die Beschriftung des Feldes anzupassen. Sie finden hier beispielsweise folgenden Eintrag:

    qryKundenArtikel |0 von |2; qryKundenArtikel |0-|1 von |2

    Dabei handelt es sich eigentlich um die Anzeige für zwei unterschiedliche Ansichten: Die erste Variante (vor dem Semikolon) dient der Anzeige der Datensatznummer und der Gesamtanzahl der Datensätze. Sie wird dann eingesetzt, wenn nur ein Datensatz angezeigt werden soll. Die zweite Variante (hinter dem Semikolon) dient der Anzeige der Nummern des ersten und letzten Datensatzes der aktuellen Ansicht und der Gesamtanzahl aller Datensätze. Diese setzt man ein, wenn mehrere Datensätze gleichzeitig zu sehen sein sollen.

    Sie können die beiden Einträge nach Belieben variieren. Wichtig sind nur die Funktionen der Steuerzeichen, wie sie in der folgenden Tabelle zusammengefasst sind. Den senkrechten Strich erhalten Sie mit der Tastenkombination [Alt Gr]+[<].

    Steuerzeichen

    Bedeutung

    |0

    Nummer des ersten angezeigten Datensatzes

    |1

    Nummer des letzten angezeigten Datensatzes (falls mehrere Datensätze angezeigt werden)

    |2

    Gesamtanzahl der Datensätze

    Tab. 1: Steuerzeichen und ihre Bedeutung

    Geben Sie für die Navigationsleiste zur Auswahl der Artikel nun den folgenden Eintrag an:

    Artikel |0 von |2; Artikel |0-|1 von |2

    Für die Navigationsleiste zur Auswahl der Kunden verwenden Sie den folgenden Eintrag:

    Kunde |0 von |2; Kunden |0-|1 von |2

    Weitere Eigenschaften der Navigationssteuerelemente

    Im Register Andere des Eigenschaftsfensters eines Navigationssteuerelements können Sie auch festlegen, welche weiteren Schaltflächen dem Anwender zur Verfügung stehen sollen. Sie müssen lediglich die zu den unterschiedlichen Schaltflächen gehörenden Eigenschaften – wie z. B. ShowDelButton oder ShowFirstButton auf den Wert Wahr oder Falsch setzen (Bild 14).

    Wenn Sie die Breite des Textfeldes innerhalb des Navigationssteuerelements variieren möchten, können Sie dazu nicht direkt auf eine Eigenschaft zurückgreifen. Die Breite ergibt sich nämlich aus der Gesamtbreite des Steuerelementes und der Breite der aktivierten Steuerelemente (siehe Bild 14). Wenn Sie also die Breite über die Eigenschaft Width vergrößern oder eines oder mehrere Steuerelemente entfernen, wird das Textfeld automatisch größer.

    Eine Summe bilden über eine Gruppe von Datensätzen

    Interessant ist auch die Anzeige der Gesamtsumme aller Artikel, die ein Kunde bestellt hat. Wenn Sie die Summe beispielsweise im Kopfbereich der einzelnen Kunden anzeigen möchten, gehen Sie folgendermaßen vor:

  • Fügen Sie ein Textfeld in den Kopfbereich rechts neben dem Textfeld mit dem Kundennamen ein.
  • Aktivieren Sie das Eigenschaftsfenster und wechseln Sie in das Register Daten.
  • Klicken Sie in das Feld ControlSource. Wenn Sie den bisherigen Anweisungen korrekt gefolgt sind, erscheint hier nun unter anderem der Eintrag Gesamtpreis. Wählen Sie diesen Eintrag aus.
  • Teilen Sie dem Steuerelement mit, dass es alle Einträge des angegebenen Feldes aufaddieren soll, indem Sie der Eigenschaft TotalType den Wert Sum zuweisen.
  • Wenn Sie nun in die Datenblattansicht wechseln, erscheint die korrekte Summe.
  • Anzeige von Daten mit einer Pivot-Tabelle

    Wenn Sie Daten anzeigen möchten, die von einer Komponente abhängen – also beispielsweise die Eigenschaften eines Artikels oder die Daten eines Kunden – reicht die soeben vorgestellte Darstellungsart aus. Unübersichtlicher wird es, wenn Sie Daten anzeigen möchten, die von zwei Faktoren abhängen. In dem Fall verwendet man eine so genannte Pivot-Tabelle. Ein einfaches Beispiel einer Pivot-Tabelle ist eine Entfernungstabelle. Sie stellt in den Spalten den Zielort und in den Zeilen den Startort dar. In der dazwischen liegenden Matrix finden Sie dann die jeweilige Entfernung zwischen Start- und Zielort.

    übertragen Sie dies auf die Datenbank Nordwind, dann lassen sich mehrere Beispiele finden, die den Einsatz einer Pivot-Tabelle erfordern. Stellen Sie sich vor, Sie möchten die Ausgaben der unterschiedlichen Kunden für Artikel der verschiedenen Kategorien ermitteln. Dann ist eine Pivot-Tabelle genau das Richtige.

    Vorüberlegungen

    Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

    den kompletten Artikel im PDF-Format mit Beispieldatenbank

    diesen und alle anderen Artikel mit dem Jahresabo

    Schreibe einen Kommentar