OBIEE - Variablen
In OBIEE gibt es zwei Arten von Variablen, die häufig verwendet werden:
- Repository-Variablen
- Sitzungsvariablen
Außerdem können Sie Präsentations- und Anforderungsvariablen definieren.
Repository-Variablen
Eine Repository-Variable hat zu jedem Zeitpunkt einen einzelnen Wert. Repository-Variablen werden mit dem Oracle BI Administration Tool definiert. Repository-Variablen können im Expression Builder-Assistenten anstelle von Konstanten verwendet werden.
Es gibt zwei Arten von Repository-Variablen:
- Statische Repository-Variablen
- Dynamische Repository-Variablen
Statische Repository-Variablen werden im Dialogfeld "Variablen" definiert und ihr Wert bleibt bestehen, bis sie vom Administrator geändert werden.
Statische Repository-Variablen enthalten Standardinitialisierer, die numerische Werte oder Zeichenwerte sind. Darüber hinaus können Sie mit Expression Builder eine Konstante als Standardinitialisierer einfügen, z. B. Datum, Uhrzeit usw. Sie können keinen anderen Wert oder Ausdruck als Standardinitialisierer für eine statische Repository-Variable verwenden.
In älteren BI-Versionen hat das Administrator-Tool den Wert statischer Repository-Variablen nicht begrenzt. Bei der Konsistenzprüfung wird möglicherweise eine Warnung angezeigt, wenn Ihr Repository von älteren Versionen aktualisiert wurde. Aktualisieren Sie in diesem Fall die statischen Repository-Variablen, sodass Standardinitialisierer einen konstanten Wert haben.
Dynamische Repository-Variablen sind mit statischen Variablen identisch, die Werte werden jedoch durch Daten aktualisiert, die von Abfragen zurückgegeben werden. Wenn Sie eine dynamische Repository-Variable definieren, erstellen Sie einen Initialisierungsblock oder verwenden einen bereits vorhandenen Block, der eine SQL-Abfrage enthält. Sie können auch einen Zeitplan einrichten, dem der Oracle BI-Server folgt, um die Abfrage auszuführen und den Wert der Variablen regelmäßig zu aktualisieren.
Wenn sich der Wert einer dynamischen Repository-Variablen ändert, werden alle einem Geschäftsmodell zugeordneten Cache-Einträge automatisch gelöscht.
Jede Abfrage kann mehrere Variablen aktualisieren: eine Variable für jede Spalte in der Abfrage. Sie planen, dass diese Abfragen vom Oracle BI-Server ausgeführt werden.
Dynamische Repository-Variablen sind nützlich, um den Inhalt logischer Tabellenquellen zu definieren. Angenommen, Sie haben zwei Quellen für Informationen zu Bestellungen. Eine Quelle enthält aktuelle Bestellungen und die andere enthält historische Daten.
Erstellen Sie Repository-Variablen
Im Administration Tool → Gehen Sie zu Verwalten → Wählen Sie Variablen → Variablenmanager → Gehen Sie zu Aktion → Neu → Repository> Variable.
Geben Sie im Dialogfeld "Variable" einen Namen für die Variable ein (Namen für alle Variablen sollten eindeutig sein) → Wählen Sie den Variablentyp aus - Statisch oder Dynamisch.
Wenn Sie eine dynamische Variable auswählen, verwenden Sie die Liste der Initialisierungsblöcke, um einen vorhandenen Initialisierungsblock auszuwählen, der zum fortlaufenden Aktualisieren des Werts verwendet wird.
So erstellen Sie einen neuen Initialisierungsblock → Klicken Sie auf Neu. Um einen Standardinitialisiererwert hinzuzufügen, geben Sie den Wert in das Feld Standardinitialisierer ein oder klicken Sie auf die Schaltfläche Ausdrucksgenerator, um Ausdrucksgenerator zu verwenden.
Bei statischen Repository-Variablen bleibt der Wert, den Sie im Standard-Initialisierungsfenster angeben, bestehen. Es wird sich nur ändern, wenn Sie es ändern. Wenn Sie eine Variable mit einer Zeichenfolge initialisieren, schließen Sie die Zeichenfolge in einfache Anführungszeichen ein. Statische Repository-Variablen müssen Standardinitialisierer haben, die konstante Werte sind. → Klicken Sie auf OK, um das Dialogfeld zu schließen.
Sitzungsvariablen
Sitzungsvariablen ähneln dynamischen Repository-Variablen und beziehen ihre Werte aus Initialisierungsblöcken. Wenn ein Benutzer eine Sitzung beginnt, erstellt der Oracle BI-Server neue Instanzen von Sitzungsvariablen und initialisiert sie.
Es gibt so viele Instanzen einer Sitzungsvariablen wie aktive Sitzungen auf dem Oracle BI-Server. Jede Instanz einer Sitzungsvariablen kann mit einem anderen Wert initialisiert werden.
Es gibt zwei Arten von Sitzungsvariablen:
- Systemsitzungsvariablen
- Nicht-System-Sitzungsvariablen
Systemsitzungsvariablen werden von Oracle BI und Presentation Server für bestimmte Zwecke verwendet. Sie haben vordefinierte reservierte Namen, die nicht von anderen Variablen verwendet werden können.
USER |
Diese Variable enthält den Wert, den der Benutzer mit dem Anmeldenamen eingibt. Diese Variable wird normalerweise aus dem LDAP-Profil des Benutzers ausgefüllt. |
USERGUID |
Diese Variable enthält die globale eindeutige Kennung (GUID) des Benutzers und wird aus dem LDAP-Profil des Benutzers ausgefüllt. |
GROUP |
Es enthält die Gruppen, zu denen der Benutzer gehört. Wenn ein Benutzer mehreren Gruppen angehört, fügen Sie die Gruppennamen in dieselbe Spalte ein, getrennt durch Semikolons (Beispiel - GruppeA; GruppeB; GruppeC). Wenn ein Semikolon als Teil eines Gruppennamens enthalten sein muss, müssen Sie dem Semikolon ein Backslash-Zeichen (\) voranstellen. |
ROLES |
Diese Variable enthält die Anwendungsrollen, zu denen der Benutzer gehört. Wenn ein Benutzer mehreren Rollen angehört, fügen Sie die Rollennamen in dieselbe Spalte ein, die durch Semikolons getrennt sind (Beispiel - RoleA; RoleB; RoleC). Wenn ein Semikolon als Teil eines Rollennamens enthalten sein muss, müssen Sie dem Semikolon ein Backslash-Zeichen (\) voranstellen. |
ROLEGUIDS |
Es enthält die GUIDs für die Anwendungsrollen, zu denen der Benutzer gehört. GUIDs für Anwendungsrollen entsprechen den Namen der Anwendungsrollen. |
PERMISSIONS |
Es enthält die Berechtigungen des Benutzers. Beispiel - oracle.bi.server.manageRepositories. |
Nicht-System-Sitzungsvariablen werden zum Festlegen der Benutzerfilter verwendet. Beispielsweise könnten Sie eine Nicht-Systemvariable namens Sale_Region definieren, die mit dem Namen der sale_region des Benutzers initialisiert wird.
Sitzungsvariablen erstellen
Im Administration Tool → Gehen Sie zu Verwalten → Variablen auswählen.
Klicken Sie im Dialogfeld Variablenmanager auf Aktion → Neu → Sitzung → Variable.
Geben Sie im Dialogfeld Sitzungsvariable den Variablennamen ein (Namen für alle Variablen sollten eindeutig sein und Namen von Systemsitzungsvariablen sind reserviert und können nicht für andere Variablentypen verwendet werden).
Für Sitzungsvariablen können Sie die folgenden Optionen auswählen:
Enable any user to set the value- Mit dieser Option werden Sitzungsvariablen festgelegt, nachdem der Initialisierungsblock den Wert gefüllt hat. Beispiel - Mit dieser Option können Nicht-Administratoren diese Variable für die Stichprobe festlegen.
Security sensitive - Dies wird verwendet, um die Variable als sicherheitsempfindlich zu identifizieren, wenn eine Datenbanksicherheitsstrategie auf Zeilenebene verwendet wird, z. B. eine Virtual Private Database (VPD).
Mit der Option Liste der Initialisierungsblöcke können Sie einen Initialisierungsblock auswählen, mit dem der Wert regelmäßig aktualisiert wird. Sie können auch einen neuen Initialisierungsblock erstellen.
Um einen Standardinitialisiererwert hinzuzufügen, geben Sie den Wert in das Feld Standardinitialisierer ein oder klicken Sie auf die Schaltfläche Ausdrucksgenerator, um Ausdrucksgenerator zu verwenden. Klicken Sie auf OK, um das Dialogfeld zu schließen.
Der Administrator kann mit dem Oracle BI Administration Tool Nicht-System-Sitzungsvariablen erstellen.
Präsentationsvariablen
Präsentationsvariablen werden mit der Erstellung von Dashboard-Eingabeaufforderungen erstellt. Es gibt zwei Arten von Dashboard-Eingabeaufforderungen, die verwendet werden können:
Spaltenaufforderung
Die mit der Spaltenaufforderung erstellte Präsentationsvariable ist einer Spalte zugeordnet, und die Werte, die sie annehmen kann, stammen aus den Spaltenwerten.
Um eine Präsentationsvariable zu erstellen, gehen Sie zum Dialogfeld Neue Eingabeaufforderung oder zum Dialogfeld Eingabeaufforderung bearbeiten → Wählen Sie im Feld Satz einer Variablen die Option Präsentationsvariable aus → Geben Sie den Namen für die Variable ein.
Variable Eingabeaufforderung
Die als Variablenaufforderung erstellte Präsentationsvariable ist keiner Spalte zugeordnet, und Sie müssen ihre Werte definieren.
So erstellen Sie eine Präsentationsvariable als Teil einer Variablenaufforderung im Dialogfeld "Neue Eingabeaufforderung" oder im Dialogfeld "Eingabeaufforderung bearbeiten" → Wählen Sie im Feld "Eingabeaufforderung für" die Option "Präsentationsvariable" aus → Geben Sie den Namen für die Variable ein.
Der Wert einer Präsentationsvariablen wird durch die Spalte oder Variablenaufforderung gefüllt, mit der sie erstellt wird. Jedes Mal, wenn ein Benutzer einen Wert in der Eingabeaufforderung für Spalten oder Variablen auswählt, wird der Wert der Präsentationsvariablen auf den vom Benutzer ausgewählten Wert festgelegt.
Initialisierungsblöcke
Initialisierungsblöcke werden zum Initialisieren von OBIEE-Variablen verwendet: Dynamic Repository-Variablen, Systemsitzungsvariablen und Nicht-Systemsitzungsvariablen.
Es enthält eine SQL-Anweisung, die ausgeführt wird, um die diesem Block zugeordneten Variablen zu initialisieren oder zu aktualisieren. Die ausgeführte SQL-Anweisung zeigt auf physische Tabellen, auf die über den Verbindungspool zugegriffen werden kann. Der Verbindungspool wird im Dialogfeld "Initialisierungsblock" definiert.
Wenn die Abfrage für einen Initialisierungsblock datenbankspezifisches SQL enthalten soll, können Sie einen Datenbanktyp für diese Abfrage auswählen.
Initialisieren Sie dynamische Repository-Variablen mithilfe des Initialisierungsblocks
Das Standardfeld für die Initiierungszeichenfolge des Initialisierungsblocks wird verwendet, um den Wert der dynamischen Repository-Variablen festzulegen. Sie definieren auch einen Zeitplan, dem der Oracle BI-Server folgt, um die Abfrage auszuführen und den Wert der Variablen zu aktualisieren. Wenn Sie die Protokollierungsstufe auf 2 oder höher festlegen, werden die Protokollinformationen für alle SQL-Abfragen, die zum Abrufen des Variablenwerts ausgeführt werden, in der Datei nqquery.log gespeichert.
Speicherort dieser Datei auf dem BI-Server -
ORACLE_INSTANCE \ diagnostics \ logs \ OracleBIServerComponent \ coreapplication_obisn
Sitzungsvariablen mit dem Initialisierungsblock initialisieren
Sitzungsvariablen beziehen ihre Werte ebenfalls aus dem Initialisierungsblock, ändern sich jedoch nie mit den Zeitintervallen. Wenn ein Benutzer eine neue Sitzung beginnt, erstellt der Oracle BI-Server eine neue Instanz von Sitzungsvariablen.
Alle SQL-Abfragen, die ausgeführt werden, um Sitzungsvariableninformationen vom BI-Server abzurufen, wenn die Protokollierungsstufe im Identity Manager-Benutzerobjekt auf 2 oder höher oder die LOGLEVEL-Systemsitzungsvariable im Variablenmanager auf 2 oder höher festgelegt ist, werden in nqquery.log gespeichert Datei.
Speicherort dieser Datei auf dem BI-Server -
ORACLE_INSTANCE \ diagnostics \ logs \ OracleBIServerComponent \ coreapplication_obisn
Erstellen Sie Initialisierungsblöcke im Administrator-Tool
Das Dialogfeld Manager → Variablen → Variablenmanager wird angezeigt. Gehen Sie zum Menü Aktion → Klicken Sie auf Neu → Repository → Initialisierungsblock → Geben Sie den Namen des Initialisierungsblocks ein.
Gehen Sie zur Registerkarte Zeitplan → Wählen Sie Startdatum und -zeit sowie das Aktualisierungsintervall aus.
Sie können die folgenden Optionen für Initialisierungsblöcke auswählen:
Disable- Wenn Sie diese Option auswählen, ist der Initialisierungsblock deaktiviert. Um einen Initialisierungsblock zu aktivieren, klicken Sie im Variablenmanager mit der rechten Maustaste auf einen vorhandenen Initialisierungsblock und wählen Sie Aktivieren. Mit dieser Option können Sie diese Eigenschaft ändern, ohne das Dialogfeld "Initialisierungsblock" zu öffnen.
Allow deferred execution - Auf diese Weise können Sie die Ausführung des Initialisierungsblocks verschieben, bis während der Sitzung zum ersten Mal auf eine zugeordnete Sitzungsvariable zugegriffen wird.
Required for authentication - Wenn Sie dies auswählen, muss der Initialisierungsblock ausgeführt werden, damit sich Benutzer anmelden können. Benutzern wird der Zugriff auf Oracle BI verweigert, wenn der Initialisierungsblock nicht ausgeführt wird.