Nachdem Sie ein Einbettungselement erstellt haben – was öffentlich, privat, mit signierter Einbettung oder über die API erfolgen kann –, können Sie mit diesen iFrames über JavaScript interagieren. Sie können Ihre Seite dynamischer gestalten, indem Sie den Status des eingebetteten Elements berücksichtigen. Außerdem können Sie das eingebettete Element über Ihre Webseite ändern.
Beachten Sie, dass Looker die Reihenfolge, in der Browser Ereignisse an Webanwendungen senden, nicht steuert. Das bedeutet, dass die Reihenfolge der Ereignisse nicht browser- oder plattformübergreifend garantiert ist. Achten Sie darauf, Ihr JavaScript so zu schreiben, dass die Ereignisbehandlung verschiedener Browser berücksichtigt wird.
Sie haben folgende Möglichkeiten, JavaScript für eingebettete Looker-Inhalte zu verwenden:
- Mithilfe des Looker Embed SDK, das auf der Dokumentationsseite Embed SDK beschrieben wird
- JavaScript-Ereignisse verwenden, wie im Abschnitt Auf Ereignisse in JavaScript zugreifen auf dieser Seite beschrieben
Vorbereitung
Bevor Sie mit dem eingebetteten iFrame interagieren können, müssen Sie die folgenden Schritte ausführen:
- Dem iFrame eine ID hinzufügen
- Fügen Sie die Einbettungsdomain dem
src
-Attribut des iFrames hinzu. - Die Einbettungsdomain auf die Zulassungsliste setzen
Dem iFrame eine ID hinzufügen
Wenn Sie später Daten aus dem iFrame abrufen, müssen Sie prüfen, ob die Informationen, mit denen Sie arbeiten, tatsächlich aus dem iFrame von Looker stammen. Fügen Sie dazu Ihrem iFrame eine ID hinzu, falls noch nicht geschehen. Im folgenden Beispiel wird die ID auf looker
festgelegt, indem dem iFrame id="looker"
hinzugefügt wird:
<iframe id="looker" src="https://instance_name.looker.com/embed/dashboards/1"></iframe>
Die Einbettungsdomain dem src
-Attribut des iFrames hinzufügen
Fügen Sie in das Attribut src
des iFrames die Domain ein, in der der iFrame verwendet wird. Im folgenden Beispiel können Sie myownpersonaldomain.com
als Domain angeben, indem Sie ?embed_domain=https://myownpersonaldomain.com"
am Ende der URL im Attribut src
hinzufügen:
<iframe
id="looker"
src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com">
</iframe>
Wenn Sie signiertes Einbetten verwenden, müssen Sie die embed_domain
der Einbettungs-URL hinzufügen.
Wenn Sie das Embed SDK verwenden, fügen Sie sdk=3
am Ende der Einbettungs-URL hinzu. Der Parameter sdk=3
gibt an, dass das SDK vorhanden ist und Looker zusätzliche Funktionen nutzen kann, die das SDK bietet, z. B. das Übergeben von JavaScript-Ereignissen zwischen dem Looker-iFrame und Ihrer Domain. Das SDK kann diesen Parameter nicht selbst hinzufügen, da er Teil der signierten URL ist. Beispiel:
<iframe
id="looker"
src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com&sdk=2">
</iframe>
Einbetten der Domain auf die Zulassungsliste setzen
Schließlich müssen Sie die Domain, in der das iFrame verwendet wird, auf der Seite Einbetten im Admin-Bereich von Looker auf die Zulassungsliste setzen. Gehen Sie dazu so vor:
Geben Sie im Feld Zulassungsliste für eingebettete Domains die Domain ein, in der der iFrame verwendet wird, und drücken Sie dann die Tabulatortaste, damit die Domain in einem Feld im Feld angezeigt wird.
Klicken Sie auf Aktualisieren.
Sie können den Platzhalter *
in der Zulassungsliste verwenden, um ein Domainmuster zu erstellen. Mit https://*.myownpersonaldomain.com
wären beispielsweise sowohl https://analytics.myownpersonaldomain.com
als auch https://data.myownpersonaldomain.com
zulässig.
Wenn Sie cookieless embedding mit Looker 23.8 oder höher verwenden, kann die Einbettungsdomain beim Abrufen der cookieless-Sitzung angegeben werden. Das ist eine Alternative dazu, die Einbettungsdomain über das Feld Verwaltung > Einbetten der Zulassungsliste hinzuzufügen. Wenn Sie diese Funktion nutzen möchten, sollten Sie sich die Best Practices für die Sicherheit ansehen.
Daten aus dem iFrame abrufen
Nachdem Sie die Vorbereitung abgeschlossen haben, können Sie auf die Ereignisse zugreifen, die zwischen dem Looker-iFrame und Ihrer Domain übergeben werden. Dazu müssen Sie auf postMessage
-Ereignisse warten.
Das eingebettete iFrame kann einige Ereignistypen erstellen, wie im Abschnitt Referenz für Ereignistypen auf dieser Seite beschrieben.
Auf Ereignisse in JavaScript zugreifen
Hier ist ein Beispiel dafür, wie Sie in JavaScript auf diese Ereignisse warten und sie dann in der Konsole protokollieren:
window.addEventListener("message", function(event) {
if (event.source === document.getElementById("looker").contentWindow) {
if (event.origin === "https://instance_name.looker.com") {
console.log(JSON.parse(event.data));
}
}
});
Hier ist ein Beispiel dafür, wie Sie in jQuery auf diese Ereignisse warten und sie dann in der Konsole protokollieren:
$(window).on("message", function(event) {
if (event.originalEvent.source === $("#looker")[0].contentWindow) {
if (event.origin === "https://instance_name.looker.com") {
console.log(JSON.parse(event.data));
}
}
});
Übersichtstabelle nach Ereignistyp
In der folgenden Tabelle sind die Ereignistypen zusammengefasst. Wählen Sie einen Ereignistyp aus, um die Details zu diesem Ereignis aufzurufen.
Ereignistyp | Ursache des Ereignisses |
---|---|
dashboard:loaded |
Bei Dashboards, bei denen die Kacheln nicht auf automatische Ausführung eingestellt sind, wurden das Dashboard und seine Elemente geladen, aber die Abfragen werden noch nicht ausgeführt. |
dashboard:run:start |
Ein Dashboard wird geladen und die zugehörigen Kacheln werden geladen und fragen Daten ab. |
dashboard:run:complete |
Ein Dashboard wurde fertig ausgeführt und alle Tiles wurden geladen und abgefragt. |
dashboard:download |
Der Download eines Dashboards als PDF wurde gestartet. |
dashboard:edit:start |
Hinzugefügt: 22.20
Ein Dashboard wurde in den Bearbeitungsmodus versetzt. Das Ereignis dashboard:save:complete wird ausgelöst, wenn das Dashboard gespeichert wurde. |
dashboard:edit:cancel |
Hinzugefügt: 22.20 Ein Dashboard, das sich im Bearbeitungsmodus befand, wurde ohne Speichern aus dem Bearbeitungsmodus geschlossen. |
dashboard:save:complete |
Ein Dashboard wurde bearbeitet und gespeichert. |
dashboard:delete:complete |
Ein Dashboard wurde gelöscht. |
dashboard:tile:start |
Das Laden einer Kachel oder das Abfragen von Daten für eine Kachel wurde gestartet. |
dashboard:tile:complete |
Für eine Kachel wurde die Abfrage ausgeführt. |
dashboard:tile:download |
Die Daten einer Kachel werden heruntergeladen. |
dashboard:tile:explore |
Ein Nutzer hat in einer Dashboard-Kachel auf die Option Hieraus explorieren geklickt. |
dashboard:tile:view |
Ein Nutzer hat in einer Dashboardkachel auf die Option Original-Look ansehen geklickt. |
dashboard:filters:changed |
Die Filter eines Dashboards wurden angewendet oder geändert. |
look:ready |
Ein Look hat mit dem Laden von Abfragedaten begonnen, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht. |
look:run:start |
Für einen Look werden Abfragedaten geladen und die Abfrage wird ausgeführt. |
look:run:complete |
Die Abfrage für einen Look wurde ausgeführt. |
look:edit:start |
Hinzugefügt am 25.10.
Ein Look wurde in den Bearbeitungsmodus versetzt. Das Ereignis look:save:complete wird ausgelöst, wenn der Look gespeichert wird. |
look:edit:cancel |
Hinzugefügt am 25.10. Ein Look, der sich im Bearbeitungsmodus befand, wurde beendet, ohne dass die Änderungen gespeichert wurden. |
look:save:complete |
Ein Look wurde bearbeitet und gespeichert. |
look:delete:complete |
Ein Look wurde in den Papierkorb verschoben. |
drillmenu:click |
Ein Nutzer hat in einem Dashboard, das mit dem LookML-Parameter link erstellt wurde, auf ein Aufschlüsselungsmenü geklickt. |
drillmodal:download |
Ein Nutzer hat ein Aufschlüsselungsdialogfeld über eine Dashboardkachel geöffnet und auf die Option Herunterladen geklickt. |
drillmodal:explore |
Ein Nutzer hat in einem Drilldown-Dialogfeld auf die Option Von hier aus untersuchen geklickt. |
explore:ready |
Für eine explorative Datenanalyse werden Abfragedaten geladen, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht. |
explore:run:start |
Ein Explore hat mit dem Laden von Abfragedaten begonnen und die Abfrage wird ausgeführt. |
explore:run:complete |
Eine Explore-Instanz hat die Ausführung der Abfrage abgeschlossen. |
explore:state:changed |
Die URL einer Seite im Tab „Entdecken“ hat sich aufgrund der Aktionen des Nutzers geändert. |
page:changed |
Ein Nutzer hat eine neue Seite im iFrame aufgerufen. |
page:properties:changed |
Die Höhe eines Dashboard-iFrames hat sich geändert. |
session:tokens |
Der Looker-Client benötigt Tokens, um fortzufahren. |
session:expired |
Hinzugefügt am 25.10. Die Sitzung des Nutzers ist abgelaufen. |
session:status |
Sendet Informationen zum Status einer Sitzung. |
env:client:dialog |
Ein Dialogfeld wurde geöffnet, das möglicherweise teilweise nicht sichtbar ist, z. B. ein Drilldown-Dialogfeld. Durch dieses Ereignis kann die Hostanwendung das Dialogfeld in den sichtbaren Bereich scrollen. |
Referenz zu Ereignistypen
Der eingebettete iFrame kann viele verschiedene Arten von Ereignissen erstellen:
dashboard:loaded
Bei Dashboards, bei denen die Kacheln nicht auf automatische Ausführung eingestellt sind, wird dieses Ereignis erstellt, nachdem ein Dashboard und seine Elemente geladen wurden, aber bevor Abfragen ausgeführt werden.
type: "dashboard:loaded",
status: "complete",
dashboard: {
id: 1,
title: "Business Pulse",
canEdit: true,
dashboard_filters: {
"date": "Last 6 Years",
"state": ""
},
absoluteUrl: "https://self-signed.looker.com:9999/embed/dashboards/1?embed_domain=https%3A%2F%2Fself-signed.looker.com%3A9999&date=Last+6+Years&state=",
url: "/embed/dashboards/1?embed_domain=https%3A%2F%2Fself-signed.looker.com%3A9999&date=Last+6+Years&state=",
options: {
layouts: [
{
id: 1,
dashboard_id: 1,
type: "newspaper",
active: true,
column_width: null,
width: null,
deleted: false,
dashboard_layout_components: [
{
id: 1,
dashboard_layout_id: 1,
dashboard_element_id: 1,
row: 0,
column: 0,
width: 8,
height: 4,
deleted: false
},
{
id: 2,
dashboard_layout_id: 1,
dashboard_element_id: 2,
row: 0,
column: 8,
width: 8,
height: 4,
deleted: false
}
]
}
],
elements: {
1: {
title: "Total Orders",
title_hidden: false,
vis_config: {
type: "single_value",
font_size: "medium",
title: "Total Orders"
}
},
2: {
title: "Average Order Profit",
title_hidden: false,
vis_config: {
type: "single_value",
title: "Average Order Profit"
}
}
}
}
}
Attribut | Format | Beschreibung |
---|---|---|
status |
String | Gibt an, ob das Dashboard und seine Elemente erfolgreich geladen wurden. |
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.options |
Objekt | Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options -Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden. |
dashboard:run:start
Dieses Ereignis wird erstellt, wenn ein Dashboard geladen wird und die Kacheln mit dem Laden und Abfragen von Daten beginnen.
type: "dashboard:run:start",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:run:complete
Dieses Ereignis wird erstellt, wenn ein Dashboard fertig ausgeführt wurde und alle Kacheln geladen und abgefragt wurden. Dieses Ereignis wird unabhängig davon erstellt, ob alle Kacheln erfolgreich geladen werden.
type: "dashboard:run:complete",
status: "complete",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://my.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
options: {
layouts: [
{
id: 1,
dashboard_id: 1,
type: "newspaper",
active: true,
column_width: null,
width: null,
deleted: false,
dashboard_layout_components: [
{
id: 1,
dashboard_layout_id: 1,
dashboard_element_id: 1,
row: 0,
column: 0,
width: 8,
height: 4,
deleted: false
},
{
id: 2,
dashboard_layout_id: 1,
dashboard_element_id: 2,
row: 0,
column: 8,
width: 8,
height: 4,
deleted: false
}
]
}
],
elements: {
1: {
title: "Total Orders",
title_hidden: false,
vis_config: {
type: "single_value",
font_size: "medium",
title: "Total Orders"
}
},
2: {
title: "Average Order Profit",
title_hidden: false,
vis_config: {
type: "single_value",
title: "Average Order Profit"
}
}
}
}
}
Attribut | Format | Beschreibung |
---|---|---|
status |
String | Gibt an, ob das Dashboard und seine Elemente erfolgreich ausgeführt wurden. Wenn das Dashboard und seine Elemente erfolgreich ausgeführt wurden, gibt status den Wert "complete" zurück. Andernfalls gibt status den Wert "error" zurück. Wenn das laufende Dashboard über die Benutzeroberfläche oder mit der Aktion dashboard:stop beendet wurde, gibt status den Wert "stopped" zurück. |
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.options |
Objekt | Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle im options -Objekt zurückgegebenen Attribute können mit der Aktion dashboard:options:set aktualisierte Werte angegeben werden. |
dashboard.tileStatuses |
Objekt-Array | Ein Array von Objekten, die Kachelstatus enthalten. Objekteigenschaften:
|
dashboard:download
Dieses Ereignis wird erstellt, wenn der Download einer PDF-Datei eines Dashboards gestartet wurde.
type: "dashboard:download",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
fileFormat: "pdf"
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
fileFormat |
String | Das Format des heruntergeladenen Dashboards (derzeit nur "pdf" ). |
dashboard:edit:start
Added 22.20 Dieses Ereignis wird erstellt, wenn ein Dashboard in den Bearbeitungsmodus versetzt wird.
type: "dashboard:edit:start",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:edit:cancel
Hinzugefügt: 22.20 Dieses Ereignis wird erstellt, wenn ein Dashboard, das sich im Bearbeitungsmodus befindet, ohne Speichern aus dem Bearbeitungsmodus beendet wird.
type: "dashboard:edit:cancel",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:save:complete
Dieses Ereignis wird erstellt, wenn ein Dashboard bearbeitet und dann gespeichert wird.
type: "dashboard:save:complete",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
url: "/embed/dashboards/...",
options: {
layouts: [
{
id: 1,
dashboard_id: 1,
type: "newspaper",
active: true,
column_width: null,
width: null,
deleted: false,
dashboard_layout_components: [
{
id: 1,
dashboard_layout_id: 1,
dashboard_element_id: 1,
row: 0,
column: 0,
width: 8,
height: 4,
deleted: false
},
{
id: 2,
dashboard_layout_id: 1,
dashboard_element_id: 2,
row: 0,
column: 8,
width: 8,
height: 4,
deleted: false
}
]
}
],
elements: {
1: {
title: "Total Orders",
title_hidden: false,
vis_config: {
type: "single_value",
font_size: "medium",
title: "Total Orders"
}
},
2: {
title: "Average Order Profit",
title_hidden: false,
vis_config: {
type: "single_value",
title: "Average Order Profit"
}
}
}
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.options |
Objekt | Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options -Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden. |
dashboard:delete:complete
Dieses Ereignis wird erstellt, wenn ein Dashboard gelöscht wird.
type: "dashboard:delete:complete",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
url: "/embed/dashboards/...",
options: {
layouts: [
{
id: 1,
dashboard_id: 1,
type: "newspaper",
active: true,
column_width: null,
width: null,
deleted: false,
dashboard_layout_components: [
{
id: 1,
dashboard_layout_id: 1,
dashboard_element_id: 1,
row: 0,
column: 0,
width: 8,
height: 4,
deleted: false
},
{
id: 2,
dashboard_layout_id: 1,
dashboard_element_id: 2,
row: 0,
column: 8,
width: 8,
height: 4,
deleted: false
}
]
}
],
elements: {
1: {
title: "Total Orders",
title_hidden: false,
vis_config: {
type: "single_value",
font_size: "medium",
title: "Total Orders"
}
},
2: {
title: "Average Order Profit",
title_hidden: false,
vis_config: {
type: "single_value",
title: "Average Order Profit"
}
}
}
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.options |
Objekt | Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options -Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden. |
dashboard:tile:start
Dieses Ereignis wird erstellt, wenn eine Kachel mit dem Laden oder Abfragen von Daten beginnt.
type: "dashboard:tile:start",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
tile: {
id: 123,
title: "Quarterly Sales",
listen: {
"Date": "order.date",
"Total Orders": "order.count"
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards, zu dem die Kachel gehört. |
dashboard.title |
String | Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört. |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL, zu der die Kachel gehört. |
dashboard.dashboard_filters |
Objekt | Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Ganzzahl | Die ID-Nummer des Ereignisses, nicht der Kachel. |
tile.title |
String | Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird. |
tile.listen |
Objekt | Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...} |
dashboard:tile:complete
Dieses Ereignis wird erstellt, wenn für eine Kachel die Abfrage ausgeführt wurde.
type: "dashboard:tile:complete",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
status: "complete",
truncated: false,
tile: {
id: 123,
title: "Quarterly Sales",
listen: {
"Date": "order.date",
"Total Orders": "order.count"
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards, zu dem die Kachel gehört. |
dashboard.title |
String | Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört. |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL, zu der die Kachel gehört. |
dashboard.dashboard_filters |
Objekt | Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
status |
String | Gibt an, ob die Kachel-Abfrage erfolgreich abgeschlossen wurde. Mögliche Werte sind "complete" und "error" . |
truncated |
Boolesch | Gibt an, ob die Ergebnisse der Kachel-Abfrage gekürzt wurden, weil die Abfrage mehr Zeilen zurückgegeben hat als das Zeilenlimit für Abfragen. Das Zeilenlimit kann ein vom Nutzer angegebenes Zeilenlimit oder das Looker-Standardzeilenlimit von 5.000 Zeilen sein. |
tile.id |
Ganzzahl | Die ID-Nummer des Ereignisses, nicht der Kachel. |
tile.title |
String | Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird. |
tile.listen |
Objekt | Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...} |
tile.errors |
Objekt-Array | Wird ausgefüllt, wenn die Property status "error" ist. Ein Array von Objekten mit Details zum Fehler, einschließlich des Fehlermeldungstexts, einer detaillierteren Beschreibung des Fehlers und der SQL-Abfrage des Kachels, die den Fehler verursacht hat. |
dashboard:tile:download
Dieses Ereignis wird erstellt, wenn die Daten einer Kachel heruntergeladen werden.
type: "dashboard:tile:download",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
tile: {
id: 123,
title: "Quarterly Sales"
listen: {
"Date": "order.date",
"Total Orders": "order.count"
}
}
fileFormat: "pdf"
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards, zu dem die Kachel gehört. |
dashboard.title |
String | Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört. |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL, zu der die Kachel gehört. |
dashboard.dashboard_filters |
Objekt | Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Ganzzahl | Die ID-Nummer des Ereignisses, nicht der Kachel. |
tile.title |
String | Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird. |
tile.listen |
Objekt | Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...} |
fileFormat |
String | Das Format der heruntergeladenen Kachel (derzeit nur "pdf" ). |
dashboard:tile:explore
Dieses Ereignis wird erstellt, wenn ein Nutzer in einer Dashboardkachel auf die Option Von hier aus untersuchen klickt.
type: "dashboard:tile:explore",
label: 'Explore From Here',
url: '/embed/explore/model/view...',
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
tile: {
id: 123,
title: "Quarterly Sales",
listen: {
"Date": "order.date",
"Total Orders": "order.count"
}
}
Attribut | Format | Beschreibung |
---|---|---|
label |
String | Das Label der Schaltfläche. |
url |
String | Die relative URL (nur der Pfad) des anzuzeigenden Explores. |
dashboard.id |
Zahl/String | Die ID des Dashboards, zu dem die Kachel gehört. |
dashboard.title |
String | Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört. |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL, zu der die Kachel gehört. |
dashboard.dashboard_filters |
Objekt | Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Ganzzahl | Die ID-Nummer des Ereignisses, nicht der Kachel. |
tile.title |
String | Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird. |
tile.listen |
Objekt | Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...} |
dashboard:tile:view
Dieses Ereignis wird erstellt, wenn ein Nutzer in einer Dashboardkachel auf die Option Originaldarstellung ansehen klickt.
type: "dashboard:tile:view",
label: 'View Original Look',
url: '/embed/look/...',
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
tile: {
id: 123,
title: "Quarterly Sales",
listen: {
"Date": "order.date",
"Total Orders": "order.count"
}
}
Attribut | Format | Beschreibung |
---|---|---|
label |
String | Das Label der Schaltfläche. |
url |
String | Die relative URL (nur der Pfad) des anzuzeigenden Looks. |
dashboard.id |
Zahl/String | Die ID des Dashboards, zu dem die Kachel gehört. |
dashboard.title |
String | Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört. |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL, zu der die Kachel gehört. |
dashboard.dashboard_filters |
Objekt | Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Ganzzahl | Die ID-Nummer des Ereignisses, nicht der Kachel. |
tile.title |
String | Der Titel der Kachel, wie er oben auf der Kachel angezeigt wird. |
tile.listen |
Objekt | Die globalen Dashboard-Filter, die für dieses Tile berücksichtigt werden. Dieses Objekt hat das folgende Format: {"Filter Label": "Filter Field", ...} |
dashboard:filters:changed
Dieses Ereignis wird erstellt, wenn die Filter eines Dashboards angewendet oder geändert wurden.
type: "dashboard:filters:changed",
dashboard: {
id: 23,
title: "My Dashboard",
canEdit: true,
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
options: {
layouts: [
{
id: 1,
dashboard_id: 1,
type: "newspaper",
active: true,
column_width: null,
width: null,
deleted: false,
dashboard_layout_components: [
{
id: 1,
dashboard_layout_id: 1,
dashboard_element_id: 1,
row: 0,
column: 0,
width: 8,
height: 4,
deleted: false
},
{
id: 2,
dashboard_layout_id: 1,
dashboard_element_id: 2,
row: 0,
column: 8,
width: 8,
height: 4,
deleted: false
}
]
}
],
elements: {
1: {
title: "Total Orders",
title_hidden: false,
vis_config: {
type: "single_value",
font_size: "medium",
title: "Total Orders"
}
},
2: {
title: "Average Order Profit",
title_hidden: false,
vis_config: {
type: "single_value",
title: "Average Order Profit"
}
}
}
}
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards. |
dashboard.title |
String | Der Titel, wie er oben im Dashboard angezeigt wird. |
dashboard.canEdit |
Boolesch |
Hinzugefügt: 22.20
Wenn true , kann der Nutzer das Dashboard bearbeiten. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad). |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL. |
dashboard.dashboard_filters |
Objekt | Die auf das Dashboard angewendeten Filter. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.options |
Objekt | Die Eigenschaften und Werte für Dashboard-Layout, Dashboard-Layoutkomponente und Dashboard-Element. Für alle Attribute, die im options -Objekt zurückgegeben werden, können mit dem Ereignis dashboard:options:set aktualisierte Werte angegeben werden. |
look:ready
Dieses Ereignis wird erstellt, wenn mit dem Laden von Abfragedaten für einen Look begonnen wird, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht.
type: "look:ready",
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Attribut | Format | Beschreibung |
---|---|---|
look.url |
String | Die relative Look-URL (nur der Pfad) |
look.absoluteUrl |
String | Die vollständige Look-URL |
look:run:start
Dieses Ereignis wird erstellt, wenn mit dem Laden von Abfragedaten für einen Look begonnen wird und die Abfrage ausgeführt wird.
type: "look:run:start",
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Attribut | Format | Beschreibung |
---|---|---|
look.url |
String | Die relative Look-URL (nur der Pfad) |
look.absoluteUrl |
String | Die vollständige Look-URL |
look:run:complete
Dieses Ereignis wird erstellt, wenn für einen Look die Ausführung der Abfrage abgeschlossen ist.
type: look:run:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Attribut | Format | Beschreibung |
---|---|---|
look.url |
String | Die relative Look-URL (nur der Pfad) |
look.absoluteUrl |
String | Die vollständige Look-URL |
look:edit:start
Hinzugefügt am 25.10. Dieses Ereignis wird ausgelöst, wenn ein Look in den Bearbeitungsmodus versetzt wird.
type: "look:edit:start",
look: {
id: 46,
title: "My Look",
url: "/embed/looks/46",
absoluteUrl: "https://instance_name.looker.com/embed/looks/46",
}
Attribut | Format | Beschreibung |
---|---|---|
look.id |
String | Die ID des Looks. |
look.title |
String | Der Titel des Looks. |
url |
String | Die relative Look-URL (nur der Pfad). |
absoluteUrl |
String | Die vollständige Look-URL. |
look:edit:cancel
Hinzugefügt: 25.10. Dieses Ereignis wird ausgelöst, wenn ein Look, der sich im Bearbeitungsmodus befindet, ohne Speichern beendet wird.
type: "look:edit:cancel",
look: {
id: 46,
title: "My Look",
url: "/embed/looks/46",
absoluteUrl: "https://instance_name.looker.com/embed/looks/46",
}
Attribut | Format | Beschreibung |
---|---|---|
look.id |
String | Die ID des Looks. |
look.title |
String | Der Titel des Looks. |
url |
String | Die relative Look-URL (nur der Pfad). |
absoluteUrl |
String | Die vollständige Look-URL. |
look:save:complete
Dieses Ereignis wird erstellt, wenn ein Look bearbeitet und gespeichert wird. Dieses Ereignis wird erstellt, wenn ein Nutzer eine der folgenden Aufgaben ausführt:
- Klickt auf die Schaltfläche Bearbeiten, um den Look zu bearbeiten, und klickt dann auf Speichern.
- Speichert einen Look mit der Menüoption Speichern > Speichern unter…
- Verschiebt einen Look von einem Ordner in einen anderen
Dieses Ereignis wird nicht erstellt, wenn der Look mit der Menüoption Speichern > In vorhandenes Dashboard oder Einstellungen bearbeiten gespeichert wird.
type: look:save:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
folderid: 123
}
Attribut | Format | Beschreibung |
---|---|---|
look.url |
String | Die relative Look-URL (nur der Pfad) |
look.absoluteUrl |
String | Die vollständige Look-URL |
look.folderid |
Ganzzahl | Die Ordner-ID, in der der Look gespeichert ist |
look:delete:complete
Dieses Ereignis wird erstellt, wenn ein Look in den Papierkorb verschoben wird.
type: look:delete:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Attribut | Format | Beschreibung |
---|---|---|
look.url |
String | Die relative Look-URL (nur der Pfad) |
look.absoluteUrl |
String | Die vollständige Look-URL |
drillmenu:click
Dieses Ereignis wird erstellt, wenn ein Nutzer in einem Dashboard, das mit dem LookML-Parameter link
erstellt wurde, auf ein Drilldown-Menü klickt. Mit dem folgenden LookML-Code wird beispielsweise ein Aufschlüsselungsmenü erstellt, in dem ein Nutzer Daten sehen kann, die nach der Dimension state
gefiltert sind:
dimension: state {
type: string
sql: ${TABLE}.state ;;
link: {
label: "Filter by {{ state | encode_uri }}"
url: "filter::q={{ state | encode_uri }}"
icon_url: "https://google.com/favicon.ico"
}
}
Wenn der state
-Filter auf Illinois
gesetzt ist, gibt das drillmenu:click
-Ereignis Folgendes an den Host des iFrames zurück:
type: "drillmenu:click",
label: "Filter by Illinois",
link_type: "url",
modal: false,
target: '_self',
url: "#filter::state=Illinois"
context: ' '
Attribut | Format | Beschreibung |
---|---|---|
label |
String | Das Linklabel, wie es im Drilldown-Menü angezeigt wird |
link_type |
String | Der Objekttyp am Linkziel |
modal |
Boolesch | Gibt an, ob das Drilldown-Dialogfeld anstelle der Browsernavigation verwendet wird. |
target |
String | _self , wenn das Linkziel den aktuellen iFrame ersetzt, _blank , wenn das Linkziel ein neues Fenster öffnet |
url |
String | Die URL des Linkziels |
context |
String | Internes Attribut, das von einigen Visualisierungstypen verwendet wird |
Durch Sandboxing des iFrames wird verhindert, dass Drilldown-Menü-Klicks in einem neuen Fenster geöffnet werden. Verwenden Sie die folgenden Werte für das Sandboxing im iFrame-Tag:
sandbox = "allow-same-origin allow-scripts"
drillmodal:download
Dieses Ereignis wird erstellt, wenn ein Nutzer ein Drilldown-Dialogfeld über eine Dashboardkachel öffnet und auf die Option Herunterladen klickt.
{
type: "drillmodal:download",
dashboard: {
id: 23,
title: "My Dashboard",
url: "/embed/dashboards/…",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/…",
dashboard_filters: {
"Date": "Last 28 days",
"Total Orders": "Greater than 100"
}
}
drillExploreUrl: "/embed...",
fileFormat: "pdf"
}
Attribut | Format | Beschreibung |
---|---|---|
dashboard.id |
Zahl/String | Die ID des Dashboards, zu dem die Kachel gehört. |
dashboard.title |
String | Der Dashboard-Titel, wie er oben im Dashboard angezeigt wird, zu dem das Tile gehört. |
dashboard.url |
String | Die relative Dashboard-URL (nur der Pfad), zu der die Kachel gehört. |
dashboard.absoluteUrl |
String | Die vollständige Dashboard-URL, zu der die Kachel gehört. |
dashboard.dashboard_filters |
Objekt | Die Filter, die auf das Dashboard angewendet werden, zu dem die Kachel gehört. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
drillExploreUrl |
String | Die relative Explore-URL (nur der Pfad), die heruntergeladen werden soll. |
fileFormat |
String | Das Dateiformat des Datenexports. |
drillmodal:explore
Dieses Ereignis wird erstellt, wenn ein Nutzer in einem Drilldown-Dialogfeld auf die Option Von hier aus untersuchen klickt.
type: "drillmodal:explore",
label: "Explore From Here",
url: "/embed/explore/model/view..."
Attribut | Format | Beschreibung |
---|---|---|
label |
String | Das Schaltflächenlabel, wie es im Drilldown-Menü angezeigt wird |
url |
String | Die relative Explore-URL (nur der Pfad), die aufgerufen werden soll |
explore:ready
Dieses Ereignis wird erstellt, wenn mit dem Laden von Abfragedaten für ein Explore begonnen wird, unabhängig davon, ob die Abfrage ausgeführt wird oder nicht.
type: "explore:ready",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
Attribut | Format | Beschreibung |
---|---|---|
explore.url |
String | Die relative Explore-URL (nur der Pfad) |
explore.absoluteUrl |
String | Die vollständige Explore-URL |
explore:run:start
Dieses Ereignis wird erstellt, wenn in einem Explore mit dem Laden von Abfragedaten begonnen wird und die Abfrage ausgeführt wird.
type: "explore:run:start",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
Attribut | Format | Beschreibung |
---|---|---|
explore.url |
String | Die relative Explore-URL (nur der Pfad) |
explore.absoluteUrl |
String | Die vollständige Explore-URL |
explore:run:complete
Dieses Ereignis wird erstellt, wenn eine Abfrage in einem Explore ausgeführt wurde.
type: "explore:run:complete",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
}
Attribut | Format | Beschreibung |
---|---|---|
explore.url |
String | Die relative Explore-URL (nur der Pfad) |
explore.absoluteUrl |
String | Die vollständige Explore-URL |
explore:state:changed
Dieses Ereignis wird erstellt, wenn sich die URL einer Explore-Seite aufgrund der Aktionen des Nutzers ändert.
type: "explore:state:changed",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/..."
}
Attribut | Format | Beschreibung |
---|---|---|
explore.url |
String | Die relative Explore-URL (nur der Pfad) |
explore.absoluteUrl |
String | Die vollständige Explore-URL |
page:changed
Dieses Ereignis wird erstellt, wenn ein Nutzer innerhalb des iFrames zu einer neuen Seite wechselt.
type: "page:changed",
page: {
type: "dashboard",
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/..."
}
Attribut | Format | Beschreibung |
---|---|---|
page.type |
String | Der Typ der Seite, die gerade aufgerufen wurde, z. B. "dashboard" , "look" oder "explore" |
page.url |
String | Die relative URL (nur der Pfad) der Seite, zu der gerade navigiert wurde |
page.absoluteUrl |
String | Die vollständige URL der Seite, zu der gerade navigiert wurde |
page:properties:changed
Dieses Ereignis wird erstellt, wenn sich die Höhe eines Dashboard-iFrames ändert. Sie ist nicht für Looks oder Explores verfügbar, da diese Elemente ihre Höhe automatisch an die Größe des iFrames anpassen.
type: "page:properties:changed",
height: 1000
Attribut | Format | Beschreibung |
---|---|---|
height |
Ganzzahl | Die Höhe des Dashboard-iFrames in Pixeln |
session:tokens
Dieses Ereignis gibt an, dass der Looker-Client Tokens benötigt, um fortzufahren. Dieses Ereignis wird sofort beim Erstellen des iFrames und danach regelmäßig für die Dauer der Sitzung erstellt.
{
"type": "session:tokens",
"api_token": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3NlbGYtc2lnbmVkLmxvb2tlci5jb206OTk5OSIsImV4cCI6MTY3MDYyNjMzMCwic3ViIjoiYVdrNWFGUzM4RnRwNzFFWXhuS3ZaMXdKRmV3ZjB2VzYtTV9zLWtCcHE1dXIiLCJ0b2tlbl90eXBlIjoiYXBpX3Rva2VuIiwicmFuZG9taXplciI6IkxjYnpOeDNTVjNOb3o3UVlqTVJjNmhlMkdodjh1a2UwWUhiZWNRMHVCYm1KIn0.CBv1__QGc_H7bKNe31SHMMQCsc5ya1xOiEv1UDWAyxM",
"api_token_ttl": 463,
"navigation_token": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3NlbGYtc2lnbmVkLmxvb2tlci5jb206OTk5OSIsImV4cCI6MTY3MDYyNjMzMCwic3ViIjoiYVdrNWFGUzM4RnRwNzFFWXhuS3ZaMXdKRmV3ZjB2VzYtTV9zLWtCcHE1dXIiLCJ0b2tlbl90eXBlIjoibmF2aWdhdGlvbl90b2tlbiIsInJhbmRvbWl6ZXIiOiJHVVNlc00tdTRPRDlNdktodFJDU2pEcVFhUkJNeTh5dm42Q1FDUXhuLTNxMiJ9.sWo7LUEI5LeragVmeDamUR7u2myXpFJ0aqK_IIALUqI",
"navigation_token_ttl": 463,
"session_reference_token_ttl": 2924
}
Attribut | Format | Beschreibung |
---|---|---|
authentication_token |
String | Authentifizierungstoken. Wird beim Erstellen des iFrames eingefügt. Nicht in einer Antwort auf eine Anfrage zum Generieren von Tokens enthalten oder wenn die Sitzung abgelaufen ist. |
authentication_token_ttl |
Zahl | Gültigkeitsdauer des Authentifizierungstokens in Sekunden. Wird beim Erstellen des iFrames eingefügt. Nicht in einer Antwort auf eine Anfrage zum Generieren von Tokens enthalten oder wenn die Sitzung abgelaufen ist. |
api_token |
String | API-Token Nicht enthalten, wenn die Sitzung abgelaufen ist. |
api_token_ttl |
Zahl | Gültigkeitsdauer des API-Tokens in Sekunden. Nicht enthalten, wenn die Sitzung abgelaufen ist. |
navigation_token |
String | Navigationstoken. Nicht enthalten, wenn die Sitzung abgelaufen ist. |
navigation_token_ttl |
Zahl | Gültigkeitsdauer des Navigationstokens in Sekunden. Nicht enthalten, wenn die Sitzung abgelaufen ist. |
session_references_token_ttl |
Zahl | Gültigkeitsdauer der Sitzung in Sekunden. Der Wert ist 0, wenn die Sitzung abgelaufen ist. Um die Verbindung wiederherzustellen, muss die Einbettungsanwendung eine neue Sitzung starten. |
session:expired
Hinzugefügt am 25.10. Dieses Ereignis wird ausgelöst, wenn die Sitzung des eingebetteten Nutzers abläuft.
type: "session:expired",
Dieses Ereignis hat keine Nutzlast.
session:status
Das Ereignis wird generiert, wenn die eingebettete Looker-Anwendung Anfragen für Sitzungstokens verarbeitet.
{
"type": "session:status",
"session_ttl": 0,
"expired": true,
"interrupted": false
}
Attribut | Format | Beschreibung |
---|---|---|
session_ttl |
Zahl | Gültigkeitsdauer der Sitzung in Sekunden. |
expired |
Boolesch | Wenn true , gibt dies an, dass die Sitzung abgelaufen ist. |
interrupted |
Boolesch | Wenn true , bedeutet das, dass eine Anfrage für Sitzungstokens nicht beantwortet wurde. Das kann darauf hinweisen, dass ein Server vorübergehend nicht verfügbar ist. |
recoverable |
Boolesch | Wird nur ausgefüllt, wenn „interrupted“ true ist. Gibt an, ob die Sitzung wiederhergestellt werden kann. Ein Wert von false deutet wahrscheinlich auf ein Problem mit der Einbettungsanwendung hin. |
env:client:dialog
Das Ereignis wird generiert, wenn ein Dialogfeld geöffnet wurde, das möglicherweise teilweise nicht sichtbar ist, z. B. ein Drilldown-Dialogfeld. Mit diesem Ereignis kann die Hostanwendung das Dialogfeld mit der Aktion env:host:scroll
in den sichtbaren Bereich scrollen.
{
type: "env:client:dialog",
dialogType: 'drilling',
placement: 'cover',
open: true
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | env:client:dialog gibt an, dass ein Dialogfeld geöffnet oder geschlossen wurde. Derzeit wird nur der Drilldown-Dialog unterstützt. In Zukunft werden möglicherweise weitere Dialoge hinzugefügt. Es ist möglich, dass der obere Bereich des Drilldown-Dialogfelds nicht zu sehen ist, da das Dialogfeld den iFrame-Darstellungsbereich abdeckt. Mit diesem Ereignis kann die Hostanwendung den oberen Rand des Dialogfelds in den sichtbaren Bereich scrollen. |
dialogType |
String | Der Typ des Dialogfelds. Dieses Ereignis wird nur ausgelöst, wenn der Dialogtyp „drilling“ geöffnet oder geschlossen wird. |
placement |
String | Die Positionierung des Dialogfelds. Für Dialogfelder vom Typ „drilling“ wird immer ein placement von „cover“ verwendet. |
open |
Boolesch | Gibt an, ob das Dialogfeld geöffnet oder gescrollt wird. |
Änderungen am iFrame vornehmen
Nachdem Sie das iFrame für den Datenabruf vorbereitet haben, können Sie es so ändern:
Anfrage in JSON schreiben
Sie können mehrere Änderungen am iFrame vornehmen, die Sie im JSON-Format einreichen. Die verfügbaren Optionen werden auf dieser Seite im Abschnitt Aktionsreferenz beschrieben. Vergessen Sie nicht, JSON.stringify
zu verwenden, um Ihre Aktion in JSON umzuwandeln, wie hier:
var my_request = JSON.stringify(
{
type: "dashboard:run"
}
);
Anfrage an die contentWindow
-Property des iFrames senden
Senden Sie Ihre Nachricht schließlich an contentWindow
des iFrames:
var my_iframe = document.getElementById("my_iframe_id");
my_iframe.contentWindow.postMessage(my_request, 'https://instance_name.looker.com');
Tabelle mit Aktionsübersicht
In der folgenden Tabelle sind die Aktionen zusammengefasst. Wählen Sie eine Aktion aus, um die Details dazu aufzurufen.
Aktion | Aktionsbeschreibung |
---|---|
page:load |
Lädt eine neue Seite in den iFrame und ersetzt die vorhandene Seite. |
dashboard:load |
Lädt ein neues Dashboard in den iFrame und ersetzt damit ein vorhandenes Dashboard. |
dashboard:run |
Führt das Dashboard im iFrame aus. |
dashboard:edit |
Hinzugefügt: 22.20 Das Dashboard wird in den Bearbeitungsmodus versetzt. |
dashboard:filters:update |
Aktualisiert einen vorhandenen Dashboardfilter im iFrame. |
dashboard:options:set |
Schreibt neue Werte in das Dashboard-Layout und in die Eigenschaften von Dashboard-Elementen. |
dashboard:schedule_modal:open |
Öffnet das Planungsprogramm, mit dem Nutzer Looker-Inhalte an verschiedene Ziele senden können. |
dashboard:stop |
Beendet ein Dashboard, das gerade ausgeführt wird oder Daten neu lädt. |
look:run |
Führt den Look im iFrame aus. |
look:filters:update |
Aktualisiert einen vorhandenen Look-Filter im iFrame. |
explore:run |
Führt die explorative Datenanalyse im iFrame aus. |
explore:filters:update |
Aktualisiert oder entfernt einen vorhandenen Explore-Filter im iFrame. |
session:tokens:request |
Sendet Tokens als Reaktion auf ein session:tokens:request -Ereignis. |
env:host:scroll |
Sendet Informationen zur aktuellen Scrollposition des Host-iFrames an die eingebettete Looker-Anwendung. |
Aktionsreferenz
Folgende Aktionen können Sie an den eingebetteten iFrame senden:
page:load
Mit dieser Aktion können Sie zu neuen Inhalten im iFrame wechseln und die vorhandenen Inhalte ersetzen. Diese Aktion ähnelt der Aktion dashboard:load
, ist jedoch flexibler, da in der URL zusätzliche Parameter angegeben werden können.
Es gibt Verhaltensunterschiede, die vor der Verwendung von page:load
berücksichtigt werden sollten. dashboard:load
verhindert die Navigation, wenn das aktuelle Dashboard bearbeitet wird. page:load
verhindert die Navigation nicht. Die Hostanwendung kann ermitteln, ob ein Dashboard oder Look bearbeitet wird, indem sie dashboard:edit:start
, look:edit:start
und die entsprechenden Ereignisse für das Ende der Bearbeitung erfasst. Aus diesem Grund empfehlen wir die Verwendung des Embed SDK. Das Embed SDK erfasst, ob ein Dashboard oder Look bearbeitet wird. Die Verbindung kann also abgefragt werden, um zu prüfen, ob Inhalte bearbeitet werden, bevor die Navigation erfolgt.
{
type: 'page:load',
url: '/embed/dashboard/32?state=california,
pushHistory: false
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ page:load verwenden, wird neuer Inhalt in den iFrame geladen. |
url |
String | Die URL der zu ladenden Inhalte. |
pushHistory |
Boolesch | Wenn true , wird durch die geladenen Inhalte ein neuer Browserverlaufseintrag erstellt und der Nutzer kann mit der Schaltfläche „Zurück“ des Browsers zur vorherigen Seite zurückkehren. Wenn false , wird der aktuelle Inhalt ersetzt und die Browsernavigation kann nicht verwendet werden, um zu ihm zurückzukehren. |
dashboard:load
Mit dieser Aktion wird ein neues Dashboard in den iFrame geladen und ein vorhandenes Dashboard ersetzt. Im neuen Dashboard werden Abfragen so ausgeführt, als ob eine neue Dashboardseite geöffnet worden wäre.
{
type: "dashboard:load",
id: "101",
pushHistory: false
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ dashboard:load verwenden, wird ein neues Dashboard in den iFrame geladen. |
id |
String | Die ID des zu ladenden Dashboards. |
pushHistory |
Boolesch | Wenn true , wird beim Laden des Dashboards ein neuer Browserverlaufseintrag erstellt und der Nutzer kann mit der Schaltfläche „Zurück“ des Browsers zum vorherigen Dashboard zurückkehren. Wenn false , wird das aktuelle Dashboard ersetzt und Sie können nicht über die Browsernavigation dorthin zurückkehren. |
dashboard:run
Mit dieser Aktion wird das Dashboard im iFrame ausgeführt. Das ist dasselbe wie das Klicken auf die Schaltfläche Ausführen oder Daten neu laden im Dashboard.
{
type: "dashboard:run"
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ dashboard:run verwenden, geben Sie an, dass Sie das Dashboard ausführen möchten. |
dashboard:edit
Hinzugefügt: 22.20 Mit dieser Aktion können Sie ein vorhandenes Dashboard im iFrame in den Bearbeitungsmodus versetzen. Das ist dieselbe Aktion wie das Auswählen von Dashboard bearbeiten im Dashboard-Menü.
{
type: "dashboard:edit"
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ dashboard:edit verwenden, wird das Dashboard in den Bearbeitungsmodus versetzt. |
dashboard:filters:update
Mit dieser Aktion können Sie einen vorhandenen Dashboardfilter im iFrame aktualisieren. Mit dieser Methode können Sie dem Dashboard keinen neuen Filter hinzufügen.
{
type: "dashboard:filters:update",
filters: {
"Sale date": "Last 28 days",
"Sale amount": "Greater than 100"
}
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ dashboard:filters:update verwenden, geben Sie an, dass Sie die vom Dashboard verwendeten Filter aktualisieren möchten. |
filters |
Objekt | Die neuen Filter, die Sie auf das Dashboard anwenden möchten. Dieses Objekt hat das folgende Format: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:options:set
Diese Aktion ist verfügbar, nachdem das Ereignis dashboard:run:complete
eingetreten ist.
Der Einbettungsdienst erstellt die Nachricht und sendet sie an das iFrame. Das Dashboard reagiert jedoch erst nach dashboard:run:complete
. Mit der Aktion dashboard:options:set
werden neue Werte in die Eigenschaften des Dashboardlayouts und der Dashboardelemente geschrieben. Mit dashboard:options:set
können nur Properties aktualisiert werden, die im Attribut options
des Ereignisses dashboard:run:complete
zurückgegeben wurden. Alle Properties, die festgelegt wurden und nicht zuvor vom Attribut options
des Ereignisses dashboard:run:complete
zurückgegeben wurden, werden ignoriert.
{
type: "dashboard:options:set",
layouts: [
{
id: 1,
dashboard_id: 1,
type: "newspaper",
active: true,
column_width: null,
width: null,
deleted: false,
dashboard_layout_components: [
{
id: 1,
dashboard_layout_id: 1,
dashboard_element_id: 1,
row: 0,
column: 0,
width: 8,
height: 4,
deleted: false
},
{
id: 2,
dashboard_layout_id: 1,
dashboard_element_id: 2,
row: 0,
column: 8,
width: 8,
height: 4,
deleted: false
}
]
}
],
elements: {
1: {
title: "Total Orders",
title_hidden: false,
vis_config: {
type: "single_value",
font_size: "medium",
title: "Total Orders"
}
},
2: {
title: "Average Order Profit",
title_hidden: false,
vis_config: {
type: "single_value",
title: "Average Order Profit"
}
}
}
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ dashboard:options:set verwenden, geben Sie an, dass Sie neue Werte in das Dashboard-Layout und die Eigenschaften von Dashboard-Elementen schreiben möchten. |
layouts |
Objekt | Die Eigenschaften des Dashboard-Layouts, die vom Attribut options im Ereignis dashboard:run:complete zurückgegeben werden. Sie haben ein Format, das dem folgenden ähnelt:
|
layouts.dashboard_layout_components |
Objekt | Ein oder mehrere Dashboard-Layoutkomponenten, die vom Attribut options im dashboard:run:complete -Ereignis zurückgegeben werden. Sie haben ein Format, das dem folgenden ähnelt:
|
elements |
Objekt | Ein oder mehrere Dashboard-Element-Objekte, die vom Attribut options im Ereignis dashboard:run:complete zurückgegeben werden. Sie haben ein Format, das dem folgenden ähnelt:id: { title: "string", title_hidden: boolean, vis_config: { type: "string", title: "string" }} |
dashboard:schedule_modal:open
Mit dieser Aktion wird das Planungsprogramm geöffnet, mit dem Nutzer Looker-Inhalte an verschiedene Ziele senden können.
{
type: "dashboard:schedule_modal:open"
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ dashboard:schedule_modal:open verwenden, wird das Dialogfeld Zeitplan geöffnet. |
dashboard:stop
Mit dieser Aktion können Sie ein Dashboard beenden, das gerade ausgeführt wird oder Daten neu lädt. Dies entspricht dem Klicken auf die Schaltfläche Abbrechen im Dashboard. Wenn ein Dashboard mit dashboard:stop
beendet wird, wird ein dashboard:run:complete
-Ereignis mit status:
auf "stopped"
festgelegt gesendet.
{
type: "dashboard:stop"
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ dashboard:stop verwenden, wird das laufende Dashboard beendet. |
look:run
Mit dieser Aktion wird die Abfrage, auf der der Look basiert, im iFrame ausgeführt. Diese Aktion ähnelt dem Klicken auf die Schaltfläche Ausführen im Look. Der Unterschied besteht darin, dass mit look:run
immer direkt die Datenbank abgefragt wird und keine Daten aus dem Looker-Cache abgerufen werden.
{
type: "look:run"
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ look:run verwenden, wird der Look ausgeführt. |
look:filters:update
Mit dieser Aktion können Sie einen vorhandenen Look-Filter im iFrame aktualisieren. Mit dieser Methode können Sie dem Look keinen neuen Filter hinzufügen.
{
type: "look:filters:update",
filters: {
"orders.created_at": "90 days",
"products.department": "sweaters"
}
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ look:filters:update verwenden, geben Sie an, dass Sie die vom Look verwendeten Filter aktualisieren möchten. |
filters |
Objekt | Die neuen Filter, die Sie auf den Look anwenden möchten. Dieses Objekt hat das folgende Format: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...} |
explore:run
Mit dieser Aktion wird die explorative Datenanalyse im iFrame ausgeführt. Diese Aktion ähnelt dem Klicken auf die Schaltfläche Ausführen in der Übersicht, mit der Ausnahme, dass explore:run
immer die Datenbank direkt abfragt und keine Daten aus dem Looker-Cache abruft.
{
type: "explore:run"
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ explore:run verwenden, geben Sie an, dass Sie die Analyse ausführen möchten. |
explore:filters:update
Mit dieser Aktion können Sie einen vorhandenen Explore-Filter im iFrame aktualisieren oder entfernen. Wenn Sie einen neuen Filter einfügen, der auf ein gültiges Feld verweist, wird der neue Filter dem Explore hinzugefügt.
{
type: "explore:filters:update",
filters: {
"orders.created_at": "90 days",
"orders.status": "complete"
}
deleteFilters: ["products.department"]
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ explore:filters:update verwenden, geben Sie an, dass Sie die von der Funktion „Erkunden“ verwendeten Filter aktualisieren möchten. |
filters |
Objekt | Die neuen Filter, die Sie auf das Explore anwenden möchten. Wenn filters einen Filter enthält, der im Explore nicht vorhanden ist, aber auf ein gültiges Feld verweist, wird dieser Filter dem Explore hinzugefügt. Dieses Objekt hat das Format {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...} . |
deleteFilters |
Array | Die vorhandenen Filter, die Sie aus dem Explore-Bereich entfernen möchten. Das Array hat das Format: ["view_name.field_name_1", "view_name.field_name_2", ...] |
session:tokens:request
Mit dieser Aktion können Sie als Reaktion auf eine session:tokens:request
-Anfrage Tokens senden.
{
type: "session:tokens:request",
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ session:tokens:request verwenden, bedeutet das, dass Sie als Reaktion auf ein session:tokens:request -Ereignis Tokens senden möchten. |
env:host:scroll
Mit dieser Aktion können Sie Informationen zur aktuellen Scrollposition des Host-iFrames an die eingebettete Looker-Anwendung senden.
{
type: "env:host:scroll",
offsetTop: 10,
offsetLeft: 10,
scrollX: 5,
scrollY: 5
}
Attribut | Format | Beschreibung |
---|---|---|
type |
String | Wenn Sie den Typ env:host:scroll verwenden, geben Sie an, dass Sie Informationen zur aktuellen Scrollposition des Host-iFrames an die eingebettete Looker-Anwendung senden möchten. |
offsetTop |
Zahl | Der obere Versatz des iFrame. |
offsetLeft |
Zahl | Der Offset links vom iFrame. |
scrollX |
Zahl | Die scrollX-Position des Anwendungshosts. |
scrollY |
Zahl | Die scrollY-Position des Anwendungshosts. |