Das Verwalten einer datenbankbasierten Collection umfasst unter anderem sowohl das Hinzufügen von Eigenschaften oder Objekten, als auch das Entfernen und Löschen von Objekten aus einer Collection oder Datenbank.
Im Folgenden werden alle wesentlichen Vorgänge beschrieben, die die Verwaltung einer datenbankbasierten Collection betreffen:
Um einer datenbankbasierten Collection eine Proxy-Eigenschaft hinzuzufügen
Proxy-Eigenschaften ermöglichen die transparente Verwendung einer Datenbankspalte (Basiseigenschaft) mit veränderten Metadaten. Zu den Metadaten zählen unter anderem:
-
Beschriftung
-
Beschreibung
-
Eigenschaft als Pflicht oder optional angeben
-
Bildungsart der Anzeige eines Eigenschaftswerts
-
Komponentenwahl zur Anzeige und Bearbeitung von Eigenschaftswerten
Sie können mit Proxy-Eigenschaften eine Eigenschaft innerhalb einer Komponente genau an die Bedürfnisse der Komponente anpassen. Dabei ist zu beachten, dass der Datenwert einer Proxy-Eigenschaft immer der Wert der Basiseigenschaft ist. Aktualisierungen des Wertes über die Proxy-Eigenschaft wirken sich immer zusätzlich auf die Basiseigenschaft aus.
-
Wählen Sie eine Collection mit Rechtsklick.
-
Wählen Sie die Option Proxy-Eigenschaft.
Die Proxy-Eigenschaft wird unterhalb des gewählten Collections-Knotens angelegt.
-
Wählen Sie im Fenster Knotenbearbeitung im Auswahlfeld Basis-Eigenschaft eine Eigenschaft.
-
Erfassen Sie im Eingabefeld Bezeichner den Namen für die Proxy-Eigenschaft.
Um einer datenbankbasierten Collection weitere Eigenschaften hinzuzufügen
-
Wählen Sie eine Collection mit Rechtsklick.
-
Wählen Sie die Option Eigenschaft.
-
Erfassen Sie für diese Eigenschaft mindestens einen Namen und einen Datentypen.
HINWEIS: Jedes Objekt, welches sich zur Laufzeit in der Collection befindet, verfügt nun über eine zusätzliche neue Eigenschaft. Diese können Sie behandeln wie eine datenbankbasierte Eigenschaft, beispielsweise zum Ablegen von temporären Daten.
Um ein neues Objekt in eine Collection hinzuzufügen
-
Wählen Sie einen Aktionsknoten mit Rechtsklick.
Dies kann zum Beispiel der Knoten Initialisierung der Komponente sein.
-
Wählen Sie die Aktion Einfügen und klicken Sie auf den neu erstellten Knoten.
-
Wählen Sie im Fenster Knotenbearbeitung unter Collection die gewünschte Collection.
-
Erfassen Sie mit der Eigenschaft Filterbedingung einen Ausdruck für eine Filterbedingung, wenn Sie das wünschen.
HINWEIS: Beachten Sie, dass das Objekt nur in die Collection eingefügt wird.
Um an einer datenbankbasierten Collection eine Eigenschaft zu ändern
In der folgenden Schrittanleitung wird als Beispiel der Anzeigewert der Spalte Eintrittsdatum in der Ansicht Telefonbuch von <dd.MM.yy> in <yyyy-MM-dd> geändert.
HINWEIS: Die Schrittanleitung dieser Funktion lässt sich auf die Funktionen Spalte über Child-Beziehung und Spalte über Fremdschlüsselbeziehung anwenden. Ausführliche Informationen zu diesen Funktionen finden Sie im One Identity Manager Web Designer Objektmodell Dokumentation
-
Melden Sie sich am Web Portal mit Ihren Benutzerdaten an und wählen Sie die Ansicht Telefonbuch.
-
Wählen Sie die zusätzliche Spalte Eintrittsdatum, wenn diese nicht angezeigt wird und sehen Sie sich den aktuellen Anzeigewert an.
In unserem Beispiel gehen wir davon aus, dass der Anzeigewert <dd.MM.yy> eingestellt ist.
-
Klicken Sie in den Titel der Ansicht Telefonbuch und wechseln Sie in den Web Designer.
-
Öffnen Sie das Fenster Eigenschaften und wechseln Sie mit zum Definitionsobjekt im Definitionsbaumfenster.
-
Öffnen Sie den Knoten Collections mit und markieren Sie das Datenbankobjekt Person.
-
Wählen Sie aus dem Kontextmenü den Eintrag Element in Erweiterung | Eigenschaft verändern.
Die Ansicht im Definitionsbaumfenster wechselt in Konfiguration (kundenspezifisch).
-
Wählen Sie im Knotenbearbeitungsfenster im Auswahlfeld Basis-Eigenschaft* den Eintrag EntryDate und erfassen Sie im Eingabefeld Ausdruck für Anzeigewert den neuen Ausdruck für den Anzeigewert.
In unserem Beispiel könnte das folgender Ausdruck sein.
FormatDate(EntryDate, "yyyy-MM-dd")
-
Wechseln Sie in die Vorschau und kompilieren Sie die Webanwendung neu.
-
Wählen Sie die Ansicht Telefonbuch und die zusätzliche Spalte Eintrittsdatum.
In der Spalte Eintrittsdatum wird als Anzeigewert das Format yyyy-MM-dd angezeigt.
Um Objekte aus der Collection zu entfernen oder aus der Datenbank zu löschen
-
Wählen Sie einen Aktionsknoten mit Rechtsklick.
Dies kann zum Beispiel der Knoten Initialisierung der Komponente sein.
-
Klicken Sie die Aktion Löschen und wählen Sie den neu erstellten Knoten.
-
Wählen Sie im Fenster Knotenbearbeitung unter Collection die gewünschte Collection.
- Nehmen Sie eine der folgenden Aktionen vor:
-
Wählen Sie unter Art des Löschens den Wert Zeilen nur aus Collection entfernen, wenn Sie Objekte aus der Collection entfernen möchten.
-
Wählen Sie unter Art des Löschens den Wert Datenbankobjekt löschen und speichern.
-
Erfassen Sie mit der Eigenschaft Filterbedingung einen Ausdruck für eine Filterbedingung, wenn Sie das wünschen.
Um Objekte in die Datenbank zu speichern
-
Wählen Sie einen Aktionsknoten mit Rechtsklick.
Dies kann zum Beispiel der Knoten Initialisierung der Komponente sein.
-
Wählen Sie die Aktion Speichern und klicken Sie den neu erstellten Knoten.
-
Wählen Sie im Fenster Knotenbearbeitung unter Collection die gewünschte Collection.
-
Erfassen Sie mit der Eigenschaft Filterbedingung einen Ausdruck für eine Filterbedingung, wenn Sie das wünschen.
Daten sind in einer Datenbank über Relationen miteinander logisch verknüpft. Sie können diese Relationen nutzen, um Daten auf einfache Weise aus der Datenbank zu laden.
Voraussetzung für die Nutzung einer solchen Collection ist eine Collection, die die Quelldaten enthält.
Zur Definition von Collectionen gibt es verschiedene Arten von Relationen:
- Definition mit Fremdschlüsselbeziehung:
Mithilfe einer Fremdschlüsselbeziehung werden automatisch diejenigen Objekte in eine Datenbanksicht geladen, die über eine Fremdschlüsselbeziehung aus den Objekten einer anderen Collection referenziert wurden.
- Definition mit Child-Beziehung:
Mithilfe einer Child-Beziehung werden automatisch diejenigen Objekte in eine Datenbanksicht geladen, die über eine Child-Beziehung auf Objekte einer anderen Collection verweisen.
Um eine Collection mit einer Fremdschlüsselbeziehung zu definieren
- Öffnen Sie das Modul oder die Komponente, in dem die Collection angelegt werden soll.
- Wählen Sie mit Rechtsklick den Knoten Collections.
- Wählen Sie die Option Datenbanksicht über Fremdschlüssel-Beziehung.
- Wählen Sie unter Collection mit Quelldaten die Collection mit den Quelldaten.
- Wählen Sie unter Fremdschlüsselspalte die gewünschte Fremdschlüsselspalte, über die die Beziehung zur Zieltabelle hergestellt wird.
- Erfassen Sie unter Bezeichner den gewünschten Namen der neuen Collection an.
Für eine solche Collection ist kein Auslösen eines Ladevorgangs erforderlich. Sobald Daten in der Collection mit den Quelldaten vorliegen, werden die über Fremdschlüssel referenzierten Objekte automatisch nachgeladen.
Um eine Collection mit einer Child-Beziehung zu definieren
- Öffnen Sie das Modul oder die Komponente, in dem die Collection angelegt werden soll.
- Wählen Sie mit Rechtsklick den Knoten Collections.
- Wählen Sie die Option Datenbanksicht über Child-Beziehung.
- Wählen Sie unter Objekttyp die Datenbanktabelle, aus der die Objekte geladen werden sollen.
- Wählen Sie unter Collection mit Quelldaten die Collection, welche die Objekte enthält, auf die verwiesen wird.
- Wählen Sie unter Spalte der Child-Beziehung die gewünschte Fremdschlüsselspalte, über die die Beziehung hergestellt wird.
- Erfassen Sie unter Bezeichner den gewünschten Namen der neuen Collection an.
Für eine solche Collection ist kein Auslösen eines Ladevorgangs erforderlich. Sobald Daten in der Collection mit den Quelldaten vorliegen, werden referenzierte Objekte automatisch nachgeladen.
Für verschiedene Anwendungsfälle ist es erforderlich, Datenbankobjekte aus mehreren Tabellen zusammen zu betrachten. Dafür bietet das Objektmodell den speziellen Collection-Typ Datenbankobjekt aus mehreren Tabellen an.
Um eine Collection mit der Option "Datenbankobjekt aus mehreren Tabellen" zu definieren
- Öffnen Sie das Modul oder die Komponente, in dem die Collection angelegt werden soll.
- Wählen Sie mit Rechtsklick den Knoten Collections.
- Wählen Sie die Option Datenbankobjekt aus mehreren Tabellen hinzufügen.
- Erfassen Sie unter Bezeichner den gewünschten Namen der neuen Collection.
Eine solche Collection ist datenbankbasiert, kann aber Objekte verschiedener Datenbanktabellen aufnehmen.
Weitere Informationen finden Sie unter "Datenbankobjekte" als Collection. Dabei müssen Sie explizit angeben, aus welcher Datenbanktabelle die Objekte geladen werden sollen.
HINWEIS: Der Datenbankabfrage-Assistent steht Ihnen an einer Collection in einem Modul oder einer Komponente zur Verfügung, oder wenn Sie ein neues Modul oder eine neue Komponente anlegen möchten.
Aus Sicherheitsgründen ist es im Web Designer nicht möglich SQL-Ausdrücke direkt auszuführen. Stattdessen unterstützt Sie dieser Assistent dabei SQL-Ausdrücke zu erstellen, die in der Tabelle QBMLimitedSQL hinterlegt und in der Tabelle QBMGroupHasLimitedSQL mit mindestens einer Rechtegruppe verknüpft werden. Für die Abfrage wird ein eigener Collection-Knoten angelegt.
Um eine Datenbankabfrage zu erstellen
- Nehmen Sie eine der folgenden Aktionen vor:
- Wählen Sie in der Navigationsansicht ein Modul oder eine Komponente.
- Erstellen Sie ein neues Modul beziehungsweise eine neue Komponente.
- Markieren Sie in der Ansicht Objektdefinition im Definitionsbaumfenster den Knoten Collections und wählen Sie aus dem Kontextmenü den Eintrag Assistenten | Datenbankabfrage-Assistent oder Element in Erweiterung | Assistenten | Datenbankabfrage-Assistent.
Die Seite Assistent zum Erstellen oder Wählen einer Datenbankabfrage wird angezeigt, um einen SQL-Ausdruck anzugeben oder einen bereits erstellten auszuwählen.
- Wählen Sie die Option Neu.
Folgende Eingabefelder werden angezeigt.
Tabelle 57: Einstellungen zu einem SQL-Ausdruck
Name der Collection |
Überschreiben Sie bei Bedarf den voreingestellten Namen für die Collection, die Sie mit dieser Abfrage anlegen. |
Bezeichner |
Erfassen Sie in diesem Eingabefeld einen eindeutigen Identifier, der später verwendet wird, um den Eintrag zu identifizieren. |
SQL-Ausdruck |
Erfassen Sie im Eingabefeld den kompletten Ausdruck. Es können auch Parameter deklariert werden. |
Beschreibung |
Erfassen Sie im Eingabefeld eine Erklärung zu diesem Eintrag. Damit fällt es anderen Benutzern leichter, diesen Ausdruck zu verstehen und einzuordnen. |
- Nehmen Sie die Einstellungen vor und klicken Sie Weiter.
Auf der Seite Assistent zum Erstellen oder Wählen einer Datenbankabfrage geben Sie die Dialoggruppen an, die das SQL-Fragment ausführen dürfen. Alle Dialoggruppen sind ausgewählt.
- Geben Sie die gewünschten Dialoggruppen an.
- Deaktivieren Sie die gewünschte Dialoggruppe, indem Sie doppelklicken.
- Deaktivieren Sie Alle auswählen / abwählen, um alle gelisteten Dialoggruppen abzuwählen und die gewünschten Dialoggruppen wieder einzeln zu aktivieren.
- Aktivieren Sie die gewünschte Dialoggruppe, indem Sie doppelklicken.
- Geben Sie auf der folgenden Seite Assistent zum Erstellen oder Wählen einer Datenbankabfrage die Parameter an, die Sie auswählen möchten und deren Werte festlegen.
- Deaktivieren Sie bei Bedarf die Parameter-Spalte, die Sie nicht in die Abfrage einbinden möchten beziehungsweise der Parser Parameter erkannt hat, die keine sind.
- Deaktivieren Sie Alle auswählen / abwählen, um alle Parameter-Spalten einzeln auszuwählen.
- Erfassen Sie einen Wert für den Parameter, indem Sie neben der gewünschten Parameter-Spalte klicken.
HINWEIS: Sie haben die Möglichkeit Ihre Datenbankabfrage mit der Schaltfläche Ausdruck testen zu prüfen. Sobald die im Hintergrund laufenden Datenbankprozesse abgeschlossen sind, können Sie die neuen Ausdrücke testen.
Die Seite Verarbeitung wird angezeigt und die neue Collection und der SQL-Ausdruck erstellt.
- Schließen Sie den Assistenten mit Fertig.
Um eine Datenbankabfrage zu wählen
- Nehmen Sie eine der folgenden Aktionen vor:
- Wählen Sie in der Navigationsansicht ein Modul oder eine Komponente.
- Erstellen Sie ein neues Modul beziehungsweise eine neue Komponente.
- Markieren Sie in der Ansicht Objektdefinition im Definitionsbaumfenster den Knoten Collections und wählen Sie aus dem Kontextmenü den Eintrag Assistenten | Datenbankabfrage-Assistent oder Element in Erweiterung | Assistenten | Datenbankabfrage-Assistent.
Die Seite Assistent zum Erstellen oder Wählen einer Datenbankabfrage wird angezeigt, um einen SQL-Ausdruck anzugeben oder einen bereits erstellten auszuwählen.
- Wählen Sie die Option Bereits vorhanden.
Folgende Eingabe- und Auswahlfelder werden angezeigt.
Tabelle 58: Einstellungen zu einem bereits erstellten SQL-Ausdruck
Name der Collection |
Überschreiben Sie bei Bedarf den voreingestellten Namen für die Collection, die Sie mit dieser Abfrage anlegen. |
SQL-Fragment |
Wählen Sie im Auswahlfeld ein vorhandenes Fragment, dass Sie im Eingabefeld SQL-Ausdruck verwenden und ergänzen können. |
SQL-Ausdruck |
Ergänzen Sie gegebenenfalls im Eingabefeld das ausgewählte Fragment und die voreingestellten Parameter. |
- Nehmen Sie die Einstellungen vor und klicken Sie Weiter.
Auf der folgenden Seite Assistent zum Erstellen oder Wählen einer Datenbankabfrage können Sie die Dialoggruppen angeben, die das SQL-Fragement ausführen dürfen.
- Geben Sie die gewünschten Dialoggruppen an.
- Geben Sie auf der folgenden Seite Assistent zum Erstellen oder Wählen einer Datenbankabfrage die Parameter an, die Sie auswählen möchten und deren Werte festlegen.
- Deaktivieren Sie bei Bedarf die Parameter-Spalte, die Sie nicht in die Abfrage einbinden möchten beziehungsweise der Parser Parameter erkannt hat, die keine sind.
- Deaktivieren Sie Alle auswählen / abwählen, um alle Parameter-Spalten einzeln auszuwählen.
- Erfassen Sie einen Wert für den Parameter, indem Sie neben der gewünschten Parameter-Spalte klicken.
HINWEIS: Sie haben die Möglichkeit Ihre Datenbankabfrage mit der Schaltfläche Ausdruck testen zu prüfen. Sobald die im Hintergrund laufenden Datenbankprozesse abgeschlossen sind, können Sie die neuen Ausdrücke testen.
Die Seite Verarbeitung wird angezeigt und die neue Collection und der SQL-Ausdruck erstellt.
- Schließen Sie den Assistenten mit Fertig.