Beschreibung
Sheet Security kann ganz nützlich sein, einfach kann sie mit der Anzeigebedingung umgesetzt werden. Die Anzeigebedingung ist erst ab der Version February 2021 verfügbar.
Sheet Security kann so aussehen, einmal ist das Sheet Abteilung zu sehen, das andere Mal ist nur das Sheet User zu sehen. Beide mal ist es dieselbe App.
Vorbereitungen
Damit die Sheet Security mit der funktioniert, sollten folgende Punkte zuerst geprüft und erstellt werden.
- Ich empfehle es eine Daten-Insel mit den Usern und der OE oder dem Feld, das der Filter ist zu erstellen. Woher die Daten kommen für die Dateninsel ist nicht so wichtig. Ich empfehle die Daten nicht als Inline-Tabelle zu erstellen, sondern aus der Datenquelle zu erheben oder als Excel zu laden.
- Prüfen was die Vairable OSUser() ausgibt, denn aus der Variable lesen wir den angemeldeten User aus. Bei mir sieht der Inhalt so aus “UserDirectory=Meine Domain; UserId=qlikblog“, von dem String benötigen wir nur den User. Dabei ist aber die Länge des User Namens ist wichtig. Diese Anzahl wird später in einer Formel verwendet. Die Daten-Insel muss immer den User enthalten, da mit dem User die Berechtigung geprüft wird.
Anpassungen der App
- für die Prüfungen, ob ein User Zugriff hat oder nicht, muss das Feld “Anzeigebedingung“ mit der Berechnung abgefüllt werden.
In der Anzeigebedingung kann eine Formel oder eine Variable mit der Formel eingefügt werden.
Die Formel muss als Ergebnis immer 1 oder 0 ergeben. - Mögliche Berechnung für den Zugriff
=if(only( {< User={"$(=right(OSUser(), 8))"} >} OE) = 'b', 1,0)3. - Anpassungen an der Formel
- Länge des Usernames anpassen. Der Wert ist nach OSuser(), dort steht die Zahl 8. Diese Zahl muss mit der Länge des Usernamens ersetzt werden.
- Felder für OE und User, diese Felder müssen an die Felder der Dateninsel angepasst werden. Im Beispiel ist es eine Tabelle mit “User” und “OE”.
Sobald die Formel abgefüllt ist, wird das Sheet ausgeblendet, wenn der User nicht berechtigt ist.
Das Ausblenden erfolgt, auch wenn die Formel falsch ist! Und das Sheet kann nicht mehr eingeblendet werden.
Lösung für nicht mehr auffindbare Sheets
Falls eine Formel falsch ist oder das Sheet nicht mehr sichtbar ist, kann es wieder hergestellt werden
in dem die Formel nicht mehr ausgewertet werden kann oder einen Fehler verursacht.
