Jinja Templates ist eine Programmiersprache zum Erstellen von Vorlagen. Dadurch können Sie dynamische SQL-Abfragen schreiben, die sich abhängig von angegebenen Bedingungen ändern. Die Vorlagen können in virtuellen Datensätzen im BI-Builder verwendet werden. Ein Beispiel dafür wäre die Einbindung einer dynamischen Zeitspanne, durch die nur Daten für ausgewählte Zeiträume abgefragt werden.
In diesem Beitrag zeigen wir, wie Sie eine Jinja-Vorlage zu einem virtuellen Datensatz hinzufügen und welche grundlegenden Variablen für die Vorlagen verwendet werden.
Einen virtuellen Datensatz erstellen
Öffnen Sie den BI-Builder und gehen Sie auf SQL > SQL Lab. Schreiben Sie im Fenster eine SQL-Abfrage und speichern Sie diese als einen neuen Datensatz.
Diagramm aus dem virtuellen Datensatz erstellen und zum Dashboard hinzufügen
Virtuellen Datensatz bearbeiten
Um eine Vorlage hinzuzufügen, öffnen Sie den Bereich Datasets, wählen Sie den gewünschten virtuellen Datensatz aus und klicken Sie auf Bearbeiten.
Editieren Sie die SQL-Abfrage und fügen Sie die Jinja-Vorlage hinzu:
WHERE {% if from_dttm is not none %} date_create >= from_iso8601_timestamp('{{ from_dttm }}') AND {% endif %} {% if to_dttm is not none %} date_create < from_iso8601_timestamp('{{ to_dttm }}') AND {% endif %} true;
- {% if from_dttm is not none %} — prüft, ob das Startdatum für die Filterung vorhanden ist.
- date_create >= from_iso8601_timestamp('{{ from_dttm }}') AND — filtert die Daten, ob sie die Datensätze einschließen, deren Erstellungsdatum mit dem angegebenen Startdatum beginnt.
- {% endif %} — schließt die Prüfung des Startdatums ab.
- {% if to_dttm is not none %} — prüft, ob das Enddatum für die Filterung vorhanden ist.
- date_create < from_iso860i_timestamp('{{ to_dttm }}') AND — filtert die Daten, damit sie die Datensätze einschließen, deren Erstellungsdatum vor dem angegebenen Enddatum liegt.
- {% endif %} — schließt die Prüfung des Enddatums ab.
- true — unterstützt Anfragen ohne die Datumsangaben.
Die Variablen in den Vorlagen sorgen für eine flexible Anfrage, indem sie es ermöglichen, den Zeitraum für die Datenauswahl durch einen Filter anzupassen. So können Sie verschiedene Werte from_dttm
und to_dttm
, angeben, und den restlichen Teil der Abfrage nicht ändern.
Variablen für Jinja-Vorlagen
Variable | Aktion |
---|---|
portal_url |
Die Variable zeigt die Website-Adresse, aus welcher der BI-Builder geöffnet wurde. Beispielsweise können Sie die Zeile SELECT '{{portal_url()}}' as string zur Abfrage hinzufügen, um die Website-Adresse, aus welcher der BI-Builder geöffnet wurde, im Bericht anzuzeigen.
|
columns | Definiert die Spalten für die Datengruppierung in der Abfrage |
filter | Gibt die Filter an, die auf Daten angewendet werden |
from_dttm und to_dttm | Legt die Zeitspanne für die Datensortierung fest |
groupby | Wiederholt die Funktion columns und gruppiert die Daten nach angegebenen Spalten |
metrics | Schließt Aggregatfunktion ein, z. B. Betrag oder durchschnittlicher Wert |
row_limit und row_offset | Schränkt die Anzahl der Zeilen im Ergebnis und das Sampling-Start-Offset ein |
table_columns | Listet verfügbare Spalten im Datensatz |
time_column und time_grain | Definiert die Zeitspalte und das Datenaggregationsintervall |
Vorlage prüfen
Klicken Sie auf den Datensatz und erstellen Sie ein Diagramm im geöffneten Fenster. Wählen Sie den Modus Rohdatensätze aus, übertragen Sie die Parameter von links in den Block Spalten, stellen Sie den Filter ein und klicken Sie auf Diagramm erstellen.
Prüfen Sie, wie die Vorlage in der Abfrage funktioniert, klicken Sie dafür auf Drei Punkte (...) > Abfrage anzeigen.
Im Diagramm funktioniert ein dynamischer Zeitbereich jetzt, der die Daten für die ausgewählten Zeitperioden abruft.
Zusammenfassung
- Jinja Templates ist eine Programmiersprache zum Erstellen von Vorlagen. Dadurch können Sie dynamische SQL-Abfragen schreiben, die sich abhängig von angegebenen Bedingungen ändern.
- Um eine Jinja-Vorlage hinzuzufügen, bearbeiten Sie die SQL-Abfrage in einem neuen oder vorhandenen Datensatz.