Farbschema: Dunkel
Sie befinden sich hier: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Forms Object Library » Datenansichten » WklGrid » Kundenraster mit Bestellungen erstellen

Kundenraster mit Bestellungen erstellen

In diesem Tutorial legen Sie eine Tabelle mit Kunden und eine Tabelle mit deren Bestellungen an und platzieren zwei WklGrid-Steuerelemente auf einem Formular. Das erste binden Sie mit dem Designer, das zweite verknüpfen Sie ohne Code mit dem ersten. Anschließend fügen Sie eine Detailansicht hinzu und arbeiten in der Formularansicht mit Gruppen und Filtern. Das dauert etwa fünfzehn Minuten.

Voraussetzungen

  • Microsoft 365 Access oder Access Runtime, in 32 oder 64 Bit, mit der WKL Forms Object Library 1.23 oder höher, installiert und für den aktuellen Windows-Benutzer registriert (Freigegebenes Paket installieren).
  • Eine neue Datenbank an einem vertrauenswürdigen Speicherort.
  • Jedes WKL-Steuerelement öffnet seinen Designer auf dieselbe Weise: in der Entwurfsansicht im Eigenschaftenblatt (F4), Registerkarte Andere, Zeile Benutzerdefiniert, [...] (Designer eines Steuerelements öffnen).

Schritte

1. Beispieltabellen anlegen

Führen Sie diese Zeilen nacheinander im Direktbereich (Strg+G) aus:

CurrentDb.Execute "CREATE TABLE tblKunden (KundeID COUNTER PRIMARY KEY, Firma TEXT(50), Ort TEXT(50), Umsatz CURRENCY)"
CurrentDb.Execute "CREATE TABLE tblBestellungen (BestellNr COUNTER PRIMARY KEY, KundeID LONG, Artikel TEXT(50), Menge LONG)"
CurrentDb.Execute "INSERT INTO tblKunden (Firma, Ort, Umsatz) VALUES ('Albers', 'Bonn', 120)"
CurrentDb.Execute "INSERT INTO tblKunden (Firma, Ort, Umsatz) VALUES ('Bauer', 'Köln', 80)"
CurrentDb.Execute "INSERT INTO tblKunden (Firma, Ort, Umsatz) VALUES ('Conrad', 'Bonn', 300)"
CurrentDb.Execute "INSERT INTO tblBestellungen (KundeID, Artikel, Menge) VALUES (1, 'Schrauben', 100)"
CurrentDb.Execute "INSERT INTO tblBestellungen (KundeID, Artikel, Menge) VALUES (3, 'Muttern', 50)"
CurrentDb.Execute "INSERT INTO tblBestellungen (KundeID, Artikel, Menge) VALUES (3, 'Unterlegscheiben', 20)"

2. Zwei Raster einfügen

Erstellen Sie ein leeres Formular, speichern Sie es als frmKunden und bleiben Sie in der Entwurfsansicht. Wählen Sie Formularentwurf › Steuerelemente › ActiveX-Steuerelemente, markieren Sie WKL Grid und klicken Sie auf OK. Ziehen Sie das Steuerelement über die obere Hälfte des Formulars auf und nennen Sie es Grid1. Fügen Sie darunter ein zweites WKL Grid ein und nennen Sie es Grid2. Speichern Sie das Formular.

3. Kunden mit dem Designer binden

Markieren Sie Grid1, öffnen Sie das Eigenschaftenblatt, Registerkarte Andere, und klicken Sie in der Zeile Benutzerdefiniert auf [...]. Im Designer:

  1. Seite Datenherkunft: Wählen Sie tblKunden als Tabelle und KundeID als Schlüsselfeld, und klicken Sie dann auf Spalten aus Feldern anlegen.
  2. Seite Spalten: Markieren Sie Umsatz, setzen Sie Format auf Währung und Summe in der Fußzeile auf Summe.
  3. Seite Gruppierung und Summen: Schalten Sie Fußzeile mit Summen ein.
  4. Seite Darstellung: Schalten Sie Live-Vorschau mit echten Daten ein.

Die Vorschau rechts zeigt die drei Kunden mit der Summe. Klicken Sie auf OK und speichern Sie das Formular.

4. Bestellungen mit dem ausgewählten Kunden verknüpfen

Markieren Sie Grid2 und öffnen Sie seinen Designer auf dieselbe Weise:

  1. Seite Datenherkunft: tblBestellungen, Schlüsselfeld BestellNr, Spalten aus Feldern anlegen.
  2. Seite Verknüpfung: Wählen Sie als Masterfeld Grid1 (die Liste bietet die anderen Raster des Formulars und deren Felder an) und als Detailfeld KundeID.

Klicken Sie auf OK und speichern Sie das Formular. Code ist nicht nötig: Grid2 zeigt die Bestellungen des Kunden, der in Grid1 ausgewählt ist.

5. Detailansicht hinzufügen

Öffnen Sie erneut den Designer von Grid1, Seite Detailansichten, klicken Sie auf Hinzufügen und tragen Sie ein: Tabelle tblBestellungen, Schlüsselfeld BestellNr, Detailfeld KundeID, Masterfeld KundeID, Beschriftung Bestellungen. Klicken Sie auf OK und speichern Sie das Formular.

Dasselbe per Code, zum Beispiel in Form_Load:

Me.Grid1.Object.AddDetailView "Bestellungen", "tblBestellungen", "BestellNr", "KundeID", "KundeID", "Bestellungen"

6. Mit dem Formular arbeiten

Öffnen Sie frmKunden in der Formularansicht:

  1. Klicken Sie in Grid1 auf Conrad: Grid2 zeigt zwei Bestellungen.
  2. Klicken Sie auf den Pfeil links neben Conrad (oder drücken Sie Strg und +): Die Bestellungen öffnen sich unter dem Datensatz auf der Registerkarte Bestellungen.
  3. Ziehen Sie den Spaltenkopf Ort in den Gruppierungsbereich über den Spaltenköpfen: Die Kunden werden nach Ort gruppiert, jede Gruppenzeile mit der Anzahl ihrer Datensätze und ihrer Summe.
  4. Klicken Sie mit der rechten Maustaste auf einen Spaltenkopf und wählen Sie Filterzeile anzeigen. Geben Sie dann unter Umsatz >= 100 ein: Nur Albers und Conrad bleiben übrig; die Filterleiste unter dem Raster zeigt die Bedingung.
  5. Klicken Sie mit der rechten Maustaste auf das Raster und wählen Sie Exportieren …, um das Raster als Excel-Arbeitsmappe mit den Gruppen als Gliederung zu speichern.

Erwartetes Ergebnis

Ein Formular mit zwei Rastern, die ohne eine Zeile Code zusammenarbeiten: Die Bestellungen folgen dem ausgewählten Kunden, jeder Kunde klappt seine Bestellungen auf, und Gruppen, Filter und Summe reagieren sofort auf den Benutzer. Die Einstellungen des Designers werden mit dem Formular gespeichert.

Nächste Schritte

de/wiki/msaccess/comctl/data-views/grid/tutorial.txt · Zuletzt geändert: von Wolfgang van der Stille