Zu Hauptinhalt springen

Erstellen einer On-Demand-Vorlage-App

AUF DIESER SEITE

Erstellen einer On-Demand-Vorlage-App

Bei einer On-Demand-Vorlage-App handelt es sich um eine gewöhnliche Qlik Sense-App mit einem wesentlichen Unterschied: Ihr Ladeskript enthält Datenbindungsformeln, die verwendet werden, um die Anfragen bei den Datenquellen zu formulieren. Diese Datenbindungsformeln werden bei der Generierung von On-Demand-Apps verwendet, um Werte vom Auswahlstatus der Auswahl-App zu lesen und sie an das Skript der Vorlage-App zu binden, sodass die generierte App mit einer benutzerdefinierten Teilmenge von Daten geladen wird.

Die Vorlage-App stellt in der Regel eine Verbindung zur gleichen Datenquelle wie die Auswahl-App her. Das Ladeskript einer Auswahl-App lädt normalerweise aggregierte Daten, um das Datenvolumen zu reduzieren und nach wie vor interaktive Visualisierungen von wichtigen Dimensionen und Kennzahlen bieten zu können. Das Ladeskript einer Vorlagen-App verwendet Abfragen, die eine definierte Teilmenge detaillierter Daten laden.

Hinweis: Eine On-Demand-Vorlage-App lädt Daten nicht direkt. Die Verbindung der Vorlage-App muss gültig sein, aber um zu testen, ob die Verbindung ordnungsgemäß funktioniert, müssen Sie eine On-Demand-App erstellen. Beim Erstellen einer On-Demand-App wird das Ladeskript durch den On-Demand-App-Dienst geändert, um den Auswahlstatus der On-Demand-Auswahl-App zu laden. Wenn die On-Demand-App fehlerfrei erstellt wird, wissen Sie, dass die Verbindung in der Vorlage-App ordnungsgemäß funktioniert.

Struktur einer Vorlagen-App

Eine Vorlage-App ist mit einer Auswahl-App über einen Navigationslink für On-Demand-Apps verknüpft. Der App-Navigationslink umfasst Eigenschaften, die die Anzahl der abgefragten Datensätze steuern, wenn die On-Demand-App mit Daten geladen wird. Das Datenladeskript der Vorlagen-App enthält Datenbindungsformeln, die angeben, welche Felddaten aus der Auswahl-App zur Formulierung der Abfragen verwendet werden, die beim Laden von Daten in die On-Demand-App ausgegeben werden.

Hinweis: In der Qlik Sense Enterprise on Windows-Installation unter ProgramData\Qlik\Examples\OnDemandApp\sample finden Sie ein Beispiel für eine On-Demand-Vorlage-App.
Hinweis:

In June 2020 wurde eine neue Syntax für Datenbindungsformeln eingeführt. Die vorherige Syntax und die Zusätze od_, ods_, odo_, odso_ und odb_ verhalten sich wie bisher, einschließlich Mengenbeschränkungen, Suffix _n und Formatspezifikationen. Wenn Ihre App in Qlik Sense Versionen vor June 2020 funktionieren soll, verwenden Sie die alte Syntax. Informationen zur alten Syntax finden Sie unter Erstellen einer On-Demand-Vorlage-App (alte Version).

Das Suffix _n wird nicht unterstützt, wenn Sie die neuen Zusätze verwenden.

Grundlegende Datenbindungsformeln haben folgende Form:

$(odag_FIELDNAME)

Der Zusatz odag_ wird verwendet, um den Auswahlstatus der Auswahl-App an das Ladeskript der On-Demand-App zu binden, die durch Kopieren der Vorlage-App erstellt wird. Der Teil der Datenbindungsformel nach dem Zusatz odag_ muss ein Name sein, der einem Feld in der Auswahl-App entspricht. Wenn die On-Demand-App erstellt wird, wird der aktuelle Auswahlstatus der Auswahl-App verwendet, um die gewünschten Werte zum Binden der einzelnen Felder zu erhalten. Jede Instanz einer $(odag_FIELDNAME)-Formel im Datenladeskript einer neu erstellten On-Demand-App wird durch eine Liste von Werten ersetzt, die für das entsprechende Feld im Auswahlstatus der Auswahl-App ausgewählt wurden.

Daneben sind weitere Zusätze für spezifischere Datenbindung verfügbar. Weitere Informationen zur Anpassung für spezifische Fälle und zur Optimierung von load-Anweisungen finden Sie unter Bindungsformeln in On-Demand-Vorlage-Apps.

On-Demand-Bindungen können direkt in SELECT- und WHERE-Anweisungen im Ladeskript eingefügt werden. Wenn Sie Bindungen direkt in Ihren WHERE-Anweisungen hinzufügen, können diese leicht mit anderen Bedingungen in der Anweisung kombiniert werden.

Sie können beim Erstellen des Ladeskripts die Platzhaltervariable $(odagActive) hinzufügen. Dadurch können Sie Beispieldaten in die Vorlage-App laden, damit Master-Diagramme für dynamische Ansichten erstellt werden können, ohne alle Daten zu laden.

Die folgenden Beispiele zeigen ein Ladeskript mit On-Demand-Beispielvorlage.

Example: Hinzufügen von Beispieldaten

In diesem Beispiel werden Beispieldaten hinzugefügt, damit die App geladen werden kann, auch wenn die Bindungen nicht vollständig sind.


IF '$(odagActive)'='' THEN
trace ODAG variables not inserted! Loading sample data.;
SET 'odag_Origin Code' = '''LAX''';
SET 'odag_Destination Code' = '''JFK''';
SET odagn_Year = 2015;
SET odag_Quarter = '''1''';
SET 'odag_Ticket Carrier Code' = '''CA''';
SET 'odag_Fare Class' = '''X''';
END IF;

Example: Laden von Daten in die Vorlage-App

Das folgende Beispiel ist ein Beispielladeskript für das Laden von Beispieldaten und deren Filterung mit den generierten odag_FIELDNAME-Bindungen. Die odagn_<Field Name>-Bindungen wählen die Zahlen in den dualen Werten aus und verwenden sie standardmäßig ohne Anführungszeichen.


SQL SELECT *
FROM FlightDB.Flights
WHERE "Origin Code" IN ($(odag_Origin Code))
AND "Destination Code" IN ($(odag_Destination Code))
AND "Year" IN ($(odagn_Year))
AND "Quarter" IN ($(odag_Quarter))
AND "Ticket Carrier Code" IN ($(odag_Ticket Carrier Code))
AND "Fare Class" IN ($(odag_Fare Class));

Single Sign-on (SSO)

On-Demand-Apps können single sign-on (SSO) mit Datenquellen verwenden, die SSO unterstützen. Die Engine und die Datenquelle müssen so konfiguriert werden, dass SSO zulässig ist.

Weitere Informationen finden Sie unter Konfigurieren von SAP HANA für SAML Single Sign-On mit Qlik Sense (nur auf Englisch) und Konfigurieren von Cloudera Impala für Single Sign-On (nur auf Englisch).

Nachdem die Engine und die Datenquelle für SSO konfiguriert wurden, muss die Vorlagen-App SSO aktivieren. Dazu wird dem Skript der Vorlagen-App folgende Syntax hinzugefügt:

///!ODAG_SSO

Der On-Demand App Service analysiert das Skript beim Generieren einer On-Demand-App und bei jeder erneuten Ausführung des Skripts.

Wird eine On-Demand-App mit SSO geladen, so wird die Identität des Endbenutzers an die Datenquelle gesendet. Der Endbenutzer muss Zugriff auf die in den Datenverbindungen der Vorlagen-App verwendeten Quellen haben. Es werden nur die Daten geladen, auf die dieser Benutzer zugreifen kann, selbst wenn ein größerer Satz von Daten ausgewählt wird.

Warnung: On-Demand-Apps, die aus Vorlagen-Apps generiert werden, die single sign-on (SSO) verwenden, können nicht veröffentlicht werden.

Neuladen von Knoten für Vorlage-Apps

Administratoren können steuern, wo On-Demand-Apps in einer Umgebung mit mehreren Knoten neu geladen werden, indem Lastenausgleichsregeln für Vorlage-Apps festgelegt werden. Wenn eine Lastenausgleichregel festgelegt wird, werden alle über Links zur Vorlage-App erstellten Apps gemäß der Regel erstellt, die auf die Vorlage-App zutrifft. Weitere Informationen finden Sie unter Verwalten von On-demand-Apps (nur auf Englisch).