Farbschema: Hell
Sie befinden sich hier: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Forms Object Library » Dateneditoren » WklTokenBox » Die Rollen eines Benutzers als Tokens führen

Die Rollen eines Benutzers als Tokens führen

In diesem Tutorial bauen Sie ein Benutzerformular, dessen Rollen Tokens sind: Jede Rolle ist eine Zeile einer untergeordneten Tabelle, die wählbaren Rollen stammen aus einer Tabelle, und andere Werte werden abgelehnt.

Voraussetzungen

  • Microsoft 365 Access oder Access Runtime, in 32 oder 64 Bit, mit der WKL Forms Object Library 1.33 oder höher, installiert und für den aktuellen Windows-Benutzer registriert (Freigegebenes Paket installieren).
  • Eine neue oder vorhandene 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ügen Sie die Prozedur in ein Standardmodul ein und führen Sie sie einmal im Direktbereich aus (CreateTokenSample):

Public Sub CreateTokenSample()
    With CurrentDb
        .Execute "CREATE TABLE tblBenutzer (ID LONG CONSTRAINT PK_Benutzer PRIMARY KEY, Name TEXT(50))"
        .Execute "CREATE TABLE tblRolle (Rolle TEXT(30) CONSTRAINT PK_Rolle PRIMARY KEY)"
        .Execute "CREATE TABLE tblBenutzerRolle (BenutzerID LONG NOT NULL, Rolle TEXT(30) NOT NULL, " & _
                 "CONSTRAINT PK_BenutzerRolle PRIMARY KEY (BenutzerID, Rolle))"
        .Execute "INSERT INTO tblBenutzer VALUES (1, 'Meier')"
        .Execute "INSERT INTO tblRolle VALUES ('Leser')"
        .Execute "INSERT INTO tblRolle VALUES ('Autor')"
        .Execute "INSERT INTO tblRolle VALUES ('Admin')"
        .Execute "INSERT INTO tblBenutzerRolle VALUES (1, 'Leser')"
    End With
End Sub

2. Formular erstellen

Erstellen Sie ein einzelnes Formular frmBenutzer, gebunden an tblBenutzer, mit den Textfeldern ID und Name.

3. Token-Feld einfügen

Wählen Sie Formularentwurf › Steuerelemente › ActiveX-Steuerelemente › WKL Token Box, ziehen Sie das Feld unter Name etwa 8 cm breit und 1 cm hoch auf und nennen Sie es tokRollen. Setzen Sie seinen Steuerelementinhalt (Eigenschaftenblatt, Registerkarte Daten) auf ID, damit das Feld dem Datensatz folgt.

4. An die untergeordnete Tabelle binden

Öffnen Sie den Designer (Eigenschaftenblatt, Registerkarte Andere, Zeile Benutzerdefiniert [...]). Setzen Sie auf der Seite Daten die Datensatzquelle auf tblBenutzerRolle, das Wertfeld auf Rolle, Verknüpfen von (Kind) auf BenutzerID und Verknüpfen nach (Formular) auf ID. Setzen Sie auf der Seite Vorschläge und Regeln die Vorschlagsquelle auf SELECT Rolle FROM tblRolle ORDER BY Rolle und schalten Sie Freie Eingabe aus. Klicken Sie auf OK und speichern Sie das Formular.

5. Ausprobieren

Öffnen Sie das Formular: Bei Meier steht das Token „Leser“. Geben Sie au in das Feld ein und drücken Sie die Eingabetaste: „Autor“ wird hinzugefügt, und tblBenutzerRolle enthält sofort eine zweite Zeile. Geben Sie Gast ein und drücken Sie die Eingabetaste: Der Wert wird abgelehnt, und der Grund erscheint unter dem Feld. Klicken Sie auf die Schaltfläche zum Entfernen von „Leser“: Seine Zeile wird gelöscht.

Erwartetes Ergebnis

  • Jedes Token ist eine Zeile von tblBenutzerRolle, geschrieben beim Hinzufügen oder Entfernen des Tokens; der Datensatz von tblBenutzer bleibt unverändert.
  • Angenommen werden nur Rollen aus tblRolle, und keine Rolle lässt sich zweimal hinzufügen.
  • Bei einem neuen Benutzerdatensatz nimmt das Feld Eingaben an, sobald der Datensatz gespeichert ist.

Nächste Schritte

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