Tworzenie aplikacji szablonu On-demand
Aplikacje szablonu On-demand to zwykłe aplikacje Qlik Sense, które charakteryzują się istotną cechą: zawierają skrypty ładowania z wyrażeniami wiązania danych używanymi do formułowania zapytań wykonywanych na źródłach danych. Wyrażenia te są używane w czasie generowania aplikacji On-demand w celu odczytu wartości ze stanu selekcji aplikacji selekcji i w celu powiązania ich ze skryptem aplikacji szablonu w taki sposób, aby do generowanej aplikacji został załadowany kontrolowany przez użytkownika podzbiór danych.
Aplikacja szablonu zwykle łączy się z tym samym źródłem danych co aplikacja selekcji. Skrypt ładowania aplikacji selekcji zwykle ładuje zagregowane dane, aby zmniejszyć ilości danych, jednocześnie oferując interaktywne wizualizacje ważnych wymiarów i miar. Skrypt ładowania aplikacji szablonu używa zapytań, które ładują kontrolowany podzbiór danych o większej szczegółowości.
Aby inni użytkownicy mogli generować aplikacje On-demand, arkusze aplikacji szablonów muszą być upublicznione. Więcej informacji zawiera temat Udzielanie dostępu do arkuszy, grup arkuszy, zakładek i narracji.
Struktura aplikacji szablonu
Aplikacja szablonu jest powiązana z aplikacją selekcji za pośrednictwem łącza nawigacyjnego aplikacji On-demand. Łącze nawigacyjne aplikacji zawiera właściwości, które kontrolują liczbę rekordów uwzględnianych przez zapytania podczas ładowania danych do aplikacji On-demand. Skrypt ładowania należący do aplikacji szablonu zawiera wyrażenia do wiązania danych określające dane pola z aplikacji selekcji, które będą używane do formułowania zapytań składanych podczas ładowania danych do aplikacji On-demand.
Nowa składnia wyrażenia wiążącego dane została wprowadzona w czerwcu 2020 roku. Poprzednia składnia i prefiksy od_, ods_, odo_, odso_ oraz odb_ zachowują się jak dotychczas, włączając ograniczenia ilościowe, przyrostek _n oraz specyfikacje formatu. Jeśli aplikacja ma działać na wersjach Qlik Sense sprzed czerwca 2020 r., należy użyć starej składni. Aby uzyskać informacje o starej składni, zobacz temat Tworzenie aplikacji szablonu On-demand (stara wersja).
Przy użyciu nowych prefiksów przyrostek _n nie jest obsługiwany.
Podstawowe wyrażenia wiążące dane mają następującą postać:
$(odag_FIELDNAME)
Prefiks odag_ służy do powiązania stanu selekcji aplikacji selekcji ze skryptem ładowania należącym do aplikacji On-demand, który jest tworzony przez skopiowanie aplikacji szablonu. Część wyrażenia do wiązania danych, która następuje po prefiksie odag, musi być nazwą zgodną z nazwą pola w aplikacji selekcji. Gdy aplikacja On-demand zostanie wygenerowana, bieżący stan selekcji aplikacji selekcji jest używany do uzyskania żądanych wartości do powiązania z każdym polem. Każde wystąpienie wyrażenia $(odag_FIELDNAME) w skrypcie ładowania należącym do nowo utworzonej aplikacji On-demand jest zastępowane listą wartości wybranych dla odpowiadającego pola w stanie selekcji aplikacji selekcji.
Dostępne są inne prefiksy dla bardziej specjalistycznych wiązań danych. Więcej informacji na temat dostosowywania do szczególnych przypadków i optymalizacji instrukcji LOAD można znaleźć w temacie Tworzenie powiązań między wyrażeniami w aplikacjach szablonu On-demand.
Wiązania on-demand mogą być wstawiane bezpośrednio do instrukcji SELECT i WHERE w skrypcie ładowania. Po dodaniu wiązań bezpośrednio do instrukcji WHERE można je łatwo połączyć z innymi warunkami w instrukcji.
Podczas tworzenia skryptu ładowania można dodać zmienną zastępczą $(odagActive) . Pozwala to na załadowanie przykładowych danych do aplikacji szablonu, dzięki czemu można tworzyć wykresy główne dla widoków dynamicznych bez ładowania wszystkich danych.
W przypadku zmiany skryptu szablonu aplikacji i wstawienia nowej zmiennej operacji wiązania należy utworzyć nowe łącza nawigacji aplikacji on-demand, które zastąpią istniejące łącza nawigacji aplikacji. W przeciwnym razie wybór odpowiedniego pola nie zostanie wysłany dla istniejących aplikacji on-demand korzystających z tego szablonu aplikacji.
Poniższe przykłady ilustrują przykładowy skrypt ładowania szablonu on-demand.
Przykład: Dodawanie niektórych przykładowych danych
W tym przykładzie dodawane są przykładowe wartości, dzięki czemu aplikacja może być załadowana nawet jeśli wiązania nie są kompletne.
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;
Przykład: Ładowanie danych do aplikacji szablonu
Poniżej znajduje się przykładowy skrypt do ładowania przykładowych danych i filtrowania ich za pomocą wygenerowanych wiązań odag_FIELDNAME. Wiązania odagn_<Field Name> wybierają liczby w wartościach podwójnych i domyślnie nie używają cudzysłowów.
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));
Jednokrotne logowanie (SSO, ang. Single Sign-On)
Aplikacje On-demand mogą używać logowanie jednokrotne (SSO) ze źródłami danych, które obsługują SSO. Silnik i źródło danych muszą być skonfigurowane w taki sposób, aby zezwalały na stosowanie SSO.
Po skonfigurowaniu silnika i źródła danych pod kątem obsługi SSO w aplikacji szablonu należy włączyć SSO, dodając poniższą składnię do skryptu aplikacji szablonu:
///!ODAG_SSO
Usługa aplikacji On-Demand analizuje ten skrypt podczas generowania aplikacji On-demand i każdorazowo podczas jej przeładowania.
Gdy aplikacja On-demand zostanie załadowana z SSO, tożsamość użytkownika końcowego zostanie wysłana do źródła danych. Użytkownik końcowy musi mieć dostęp do źródeł używanych w połączeniach danych aplikacji szablonu. Ładowane są tylko dane, do których użytkownik ma dostęp w tych źródłach, nawet jeśli wybrano większy zestaw danych.