Después de crear una incorporación, que se puede hacer de forma pública, privada, con incorporación firmada o a través de la API, puedes interactuar con esos iframes con JavaScript. Puedes hacer que tu página sea más dinámica en función del estado del elemento incorporado y hasta puedes realizar cambios en él desde tu página web.
Ten en cuenta que Looker no controla el orden en que los navegadores envían eventos a las aplicaciones web. Esto significa que el orden de los eventos no está garantizado en todos los navegadores o plataformas. Asegúrate de escribir tu código JavaScript de forma adecuada para tener en cuenta el manejo de eventos de los diferentes navegadores.
Puedes usar JavaScript de una de las siguientes maneras para el contenido incorporado de Looker:
- Con el kit de desarrollo de software (SDK) de incorporación de Looker, que se describe en la página de documentación del SDK de incorporación
- Usar eventos de JavaScript, que se describen en la sección Cómo acceder a eventos en JavaScript de esta página
Preparación
Para poder interactuar con el iframe incorporado, sigue estos pasos:
- Agrega un ID al iframe.
- Agrega el dominio incorporado al atributo
src
del iframe. - Agrega el dominio incorporado a la lista de entidades permitidas.
Agrega un ID al iframe
Más adelante, cuando recuperes datos del iframe, deberás validar que la información con la que estás trabajando realmente provenga del iframe de Looker. Para facilitar esto, asegúrate de agregar un ID a tu iframe, si aún no lo hiciste. En el siguiente ejemplo, estableces el ID en looker
agregando id="looker"
al iframe:
<iframe id="looker" src="https://instance_name.looker.com/embed/dashboards/1"></iframe>
Agrega el dominio incorporado al atributo src
del iframe
En el atributo src
del iframe, incluye el dominio en el que se usa el iframe. En el siguiente ejemplo, puedes especificar myownpersonaldomain.com
como el dominio agregando ?embed_domain=https://myownpersonaldomain.com"
al final de la URL en el atributo src
:
<iframe
id="looker"
src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com">
</iframe>
Si usas incorporación firmada, asegúrate de agregar embed_domain
a la URL de incorporación.
Si usas el SDK de incorporación, agrega sdk=2
al final de la URL de incorporación. El parámetro sdk=2
indica que el SDK está presente y que Looker puede aprovechar las funciones adicionales que proporciona el SDK, como pasar eventos de JavaScript entre el iframe de Looker y tu dominio. El SDK no puede agregar este parámetro porque forma parte de la URL firmada. Por ejemplo:
<iframe
id="looker"
src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com&sdk=2">
</iframe>
Agrega el dominio de incorporación a la lista de entidades permitidas
Por último, deberás agregar el dominio en el que se usa el iframe a la lista de entidades permitidas en la página Incorporar del panel Administrador de Looker. Para ello, sigue estos pasos:
En el campo Embedded Domain Allowlist, ingresa el dominio en el que se usa el iframe y, luego, presiona la tecla Tab para que el dominio aparezca en un cuadro dentro del campo.
Haz clic en Actualizar.
Puedes usar el comodín *
en la lista de entidades permitidas para crear un patrón de dominio. Por ejemplo, https://*.myownpersonaldomain.com
permitiría https://analytics.myownpersonaldomain.com
y https://data.myownpersonaldomain.com
.
Si usas la incorporación sin cookies con Looker 23.8 o versiones posteriores, se puede especificar el dominio de incorporación cuando se adquiere la sesión sin cookies. Esta es una alternativa para agregar el dominio de incorporación a la lista de entidades permitidas con el panel Administrador > Incorporación. Revisa las prácticas recomendadas de seguridad si decides aprovechar esta función.
Cómo recuperar datos del iframe
Después de completar los pasos de preparación, puedes acceder a los eventos que se pasan entre el iframe de Looker y tu dominio escuchando los eventos postMessage
.
El iframe incorporado puede crear algunos tipos de eventos, como se describe en la sección Referencia de tipos de eventos de esta página.
Cómo acceder a eventos en JavaScript
Este es un ejemplo de cómo escuchar estos eventos en JavaScript nativo y, luego, registrarlos en la consola:
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));
}
}
});
Este es un ejemplo de cómo escuchar estos eventos en jQuery y, luego, registrarlos en la consola:
$(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));
}
}
});
Tabla de resumen de tipos de eventos
En la siguiente tabla, se resumen los tipos de eventos. Selecciona un tipo de evento para ver sus detalles.
Tipo de evento | Causa del evento |
---|---|
dashboard:loaded |
En los paneles en los que las tarjetas no están configuradas para ejecutarse automáticamente, se cargaron el panel y sus elementos, pero las consultas aún no se ejecutan. |
dashboard:run:start |
Comenzó a cargarse un panel, y sus tarjetas comenzaron a cargarse y a consultar datos. |
dashboard:run:complete |
Se terminó de ejecutar un panel y todas las tarjetas terminaron de cargarse y consultarse. |
dashboard:download |
Comenzó la descarga de un PDF de un panel. |
dashboard:edit:start |
SE AGREGARON 22.20
Se cambió un panel al modo de edición. El evento dashboard:save:complete se activará cuando el panel se guarde correctamente. |
dashboard:edit:cancel |
SE AGREGARON 22.20 Se salió de un panel que estaba en modo de edición sin guardar los cambios. |
dashboard:save:complete |
Se editó y guardó un panel. |
dashboard:delete:complete |
Se borró un panel. |
dashboard:tile:start |
Se comenzó a cargar una tarjeta o a consultar datos. |
dashboard:tile:complete |
Una tarjeta terminó de ejecutar la consulta. |
dashboard:tile:download |
Se comenzaron a descargar los datos de una tarjeta. |
dashboard:tile:explore |
Un usuario hizo clic en la opción Explorar desde aquí en una tarjeta del panel. |
dashboard:tile:view |
Un usuario hizo clic en la opción Ver aspecto original en una tarjeta del panel. |
dashboard:filters:changed |
Se aplicaron o cambiaron los filtros de un panel. |
look:ready |
Un filtro comenzó a cargar datos de consulta, independientemente de si se ejecutará la consulta o no. |
look:run:start |
Un filtro comenzó a cargar los datos de la consulta y esta comenzó a ejecutarse. |
look:run:complete |
Un aspecto terminó de ejecutar la consulta. |
look:save:complete |
Se editó y guardó un aspecto. |
look:delete:complete |
Se movió una vista a la carpeta Papelera. |
drillmenu:click |
Un usuario hizo clic en un menú de desglose en un panel que se creó con el parámetro link de LookML. |
drillmodal:download |
Un usuario abrió un cuadro de diálogo de desglose desde una tarjeta del panel y, luego, hizo clic en la opción Descargar. |
drillmodal:explore |
Un usuario hizo clic en la opción Explorar desde aquí en un cuadro de diálogo de desglose. |
explore:ready |
Una exploración comenzó a cargar datos de consulta, independientemente de si se ejecutará o no. |
explore:run:start |
Una exploración comenzó a cargar datos de consulta y la consulta comenzó a ejecutarse. |
explore:run:complete |
Una exploración terminó de ejecutar la consulta. |
explore:state:changed |
La URL de una página Explorar cambió como resultado de las acciones del usuario. |
page:changed |
Un usuario navegó a una página nueva dentro del iframe. |
page:properties:changed |
Cambió la altura de un iframe del panel. |
session:tokens |
El cliente de Looker requiere tokens para continuar. |
session:status |
Envía información sobre el estado de una sesión. |
env:client:dialog |
Se abrió un cuadro de diálogo que puede estar parcialmente fuera de la vista, como un cuadro de diálogo de desglose. Este evento permite que la aplicación de host desplace el cuadro de diálogo para que se vea. |
Referencia de tipos de eventos
El iframe incorporado puede crear muchos tipos diferentes de eventos:
dashboard:loaded
En los paneles en los que las tarjetas no están configuradas para ejecutarse automáticamente, este evento se crea después de que se cargan un panel y sus elementos, pero antes de que se ejecuten las consultas.
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"
}
}
}
}
}
Atributo | Formato | Descripción |
---|---|---|
status |
String | Indica si el panel y sus elementos se cargaron correctamente. |
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.options |
Objeto | Las propiedades y los valores del diseño del panel, el componente de diseño del panel y el elemento del panel Todas las propiedades que se muestran en el objeto options pueden recibir valores actualizados con el evento dashboard:options:set . |
dashboard:run:start
Este evento se crea cuando comienza a cargarse un panel, cuando sus tarjetas comienzan a cargarse y a consultar datos.
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"
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:run:complete
Este evento se crea cuando un panel termina de ejecutarse y todas las tarjetas terminan de cargarse y consultarse. Este evento se crea independientemente de que todas las tarjetas se carguen correctamente o no.
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"
}
}
}
}
}
Atributo | Formato | Descripción |
---|---|---|
status |
String | Indica si el panel y sus elementos se ejecutaron correctamente. Si el panel y sus elementos se ejecutaron correctamente, status muestra "complete" . De lo contrario, status muestra "error" . Si se detuvo el panel en ejecución, ya sea desde la interfaz de usuario o con la acción dashboard:stop , status mostrará "stopped" . |
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.options |
Objeto | Las propiedades y los valores del diseño del panel, el componente de diseño del panel y el elemento del panel Todas las propiedades que se muestran en el objeto options pueden recibir valores actualizados con la acción dashboard:options:set . |
dashboard.tileStatuses |
Array de objetos | Un array de objetos que proporcionan estados de tarjetas. Las propiedades del objeto son las siguientes:
|
dashboard:download
Este evento se crea cuando se inicia la descarga de un PDF de un panel.
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"
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
fileFormat |
String | Es el formato del panel descargado (solo "pdf" en este momento). |
dashboard:edit:start
SE AGREGARON 22.20 Este evento se crea cuando se cambia un panel al modo de edición.
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"
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:edit:cancel
SE AGREGARON 22.20 Este evento se crea cuando se sale del modo de edición de un panel sin guardar los cambios.
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"
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:save:complete
Este evento se crea cuando se edita y, luego, se guarda un panel.
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"
}
}
}
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.options |
Objeto | Las propiedades y los valores del diseño del panel, el componente de diseño del panel y el elemento del panel Todas las propiedades que se muestran en el objeto options pueden recibir valores actualizados con el evento dashboard:options:set . |
dashboard:delete:complete
Este evento se crea cuando se borra un panel.
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"
}
}
}
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.options |
Objeto | Las propiedades y los valores del diseño del panel, el componente de diseño del panel y el elemento del panel Todas las propiedades que se muestran en el objeto options pueden recibir valores actualizados con el evento dashboard:options:set . |
dashboard:tile:start
Este evento se crea cuando una tarjeta comienza a cargar o consultar datos.
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"
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | Es el ID del panel al que pertenece la tarjeta. |
dashboard.title |
String | Es el título del panel, como se muestra en la parte superior del panel al que pertenece la tarjeta. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | Es la URL del panel relativa (solo la ruta de acceso) a la que pertenece la tarjeta. |
dashboard.absoluteUrl |
String | Es la URL completa del panel al que pertenece la tarjeta. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel al que pertenece la tarjeta Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Entero | Es el número de ID del evento, no de la tarjeta. |
tile.title |
String | Es el título de la tarjeta, como se muestra en la parte superior. |
tile.listen |
Objeto | Son los filtros del panel global que esta tarjeta está escuchando. Este objeto tiene el formato: {"Filter Label": "Filter Field", ...} |
dashboard:tile:complete
Este evento se crea cuando una tarjeta termina de ejecutar la consulta.
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"
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | Es el ID del panel al que pertenece la tarjeta. |
dashboard.title |
String | Es el título del panel, como se muestra en la parte superior del panel al que pertenece la tarjeta. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | Es la URL del panel relativa (solo la ruta de acceso) a la que pertenece la tarjeta. |
dashboard.absoluteUrl |
String | Es la URL completa del panel al que pertenece la tarjeta. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel al que pertenece la tarjeta Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
status |
String | Indica si la consulta de tarjetas se completó correctamente. Los valores posibles son "complete" o "error" . |
truncated |
Booleano | Indica si los resultados de la consulta de tarjetas se truncaron porque la consulta mostró más filas que el límite de filas de la consulta. El límite de filas puede ser un límite especificado por el usuario o el límite predeterminado de 5,000 filas de Looker. |
tile.id |
Entero | Es el número de ID del evento, no de la tarjeta. |
tile.title |
String | Es el título de la tarjeta, como se muestra en la parte superior. |
tile.listen |
Objeto | Son los filtros del panel global que esta tarjeta está escuchando. Este objeto tiene el formato: {"Filter Label": "Filter Field", ...} |
tile.errors |
Array de objetos | Se propaga cuando la propiedad status es "error" . Es un array de objetos que proporcionan detalles del error, incluido el texto del mensaje de error, una descripción más detallada del error y la consulta en SQL de la tarjeta que generó el error. |
dashboard:tile:download
Este evento se crea cuando comienzan a descargarse los datos de una tarjeta.
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"
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | Es el ID del panel al que pertenece la tarjeta. |
dashboard.title |
String | Es el título del panel, como se muestra en la parte superior del panel al que pertenece la tarjeta. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | Es la URL del panel relativa (solo la ruta de acceso) a la que pertenece la tarjeta. |
dashboard.absoluteUrl |
String | Es la URL completa del panel al que pertenece la tarjeta. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel al que pertenece la tarjeta Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Entero | Es el número de ID del evento, no de la tarjeta. |
tile.title |
String | Es el título de la tarjeta, como se muestra en la parte superior. |
tile.listen |
Objeto | Son los filtros del panel global que esta tarjeta está escuchando. Este objeto tiene el formato: {"Filter Label": "Filter Field", ...} |
fileFormat |
String | Es el formato de la tarjeta descargada (solo "pdf" en este momento). |
dashboard:tile:explore
Este evento se crea cuando un usuario hace clic en la opción Explorar desde aquí en una tarjeta de panel.
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"
}
}
Atributo | Formato | Descripción |
---|---|---|
label |
String | Es la etiqueta del botón. |
url |
String | Es la URL relativa (solo la ruta de acceso) de la exploración que se mostrará. |
dashboard.id |
Número/cadena | Es el ID del panel al que pertenece la tarjeta. |
dashboard.title |
String | Es el título del panel, como se muestra en la parte superior del panel al que pertenece la tarjeta. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | Es la URL del panel relativa (solo la ruta de acceso) a la que pertenece la tarjeta. |
dashboard.absoluteUrl |
String | Es la URL completa del panel al que pertenece la tarjeta. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel al que pertenece la tarjeta Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Entero | Es el número de ID del evento, no de la tarjeta. |
tile.title |
String | Es el título de la tarjeta, como se muestra en la parte superior. |
tile.listen |
Objeto | Son los filtros del panel global que esta tarjeta está escuchando. Este objeto tiene el formato: {"Filter Label": "Filter Field", ...} |
dashboard:tile:view
Este evento se crea cuando un usuario hace clic en la opción Ver aspecto original en una tarjeta del panel.
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"
}
}
Atributo | Formato | Descripción |
---|---|---|
label |
String | Es la etiqueta del botón. |
url |
String | Es la URL relativa (solo la ruta de acceso) del aspecto que se mostrará. |
dashboard.id |
Número/cadena | Es el ID del panel al que pertenece la tarjeta. |
dashboard.title |
String | Es el título del panel, como se muestra en la parte superior del panel al que pertenece la tarjeta. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | Es la URL del panel relativa (solo la ruta de acceso) a la que pertenece la tarjeta. |
dashboard.absoluteUrl |
String | Es la URL completa del panel al que pertenece la tarjeta. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel al que pertenece la tarjeta Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Entero | Es el número de ID del evento, no de la tarjeta. |
tile.title |
String | Es el título de la tarjeta, como se muestra en la parte superior. |
tile.listen |
Objeto | Son los filtros del panel global que esta tarjeta está escuchando. Este objeto tiene el formato: {"Filter Label": "Filter Field", ...} |
dashboard:filters:changed
Este evento se crea cuando se aplican o cambian los filtros de un panel.
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"
}
}
}
}
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | El ID del panel. |
dashboard.title |
String | Es el título, como se muestra en la parte superior del panel. |
dashboard.canEdit |
Booleano |
SE AGREGARON 22.20
Cuando es true , el usuario puede editar el panel. |
dashboard.url |
String | La URL del panel relativa (solo la ruta de acceso) |
dashboard.absoluteUrl |
String | La URL completa del panel. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.options |
Objeto | Las propiedades y los valores del diseño del panel, el componente de diseño del panel y el elemento del panel Todas las propiedades que se muestran en el objeto options pueden recibir valores actualizados con el evento dashboard:options:set . |
look:ready
Este evento se crea cuando un aspecto comienza a cargar datos de consulta, independientemente de que se ejecute la consulta o no.
type: "look:ready",
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
}
Atributo | Formato | Descripción |
---|---|---|
look.url |
String | La URL de aspecto relativa (solo la ruta) |
look.absoluteUrl |
String | La URL de la vista completa |
look:run:start
Este evento se crea cuando un aspecto comienza a cargar datos de consulta y la consulta comienza a ejecutarse.
type: "look:run:start",
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
}
Atributo | Formato | Descripción |
---|---|---|
look.url |
String | La URL de aspecto relativa (solo la ruta) |
look.absoluteUrl |
String | La URL de la vista completa |
look:run:complete
Este evento se crea cuando un aspecto termina de ejecutar la consulta.
type: look:run:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
}
Atributo | Formato | Descripción |
---|---|---|
look.url |
String | La URL de aspecto relativa (solo la ruta) |
look.absoluteUrl |
String | La URL de la vista completa |
look:save:complete
Este evento se crea cuando se edita y guarda un aspecto. Este evento se crea cuando un usuario realiza una de las siguientes tareas:
- Hace clic en el botón Editar para editar el aspecto y, luego, en Guardar.
- Guarda un aspecto con la opción de menú Guardar > Guardar como…
- Mueve un aspecto de una carpeta a otra.
Este evento no se crea si la vista se guarda con la opción de menú Guardar > En el panel existente o Editar configuración.
type: look:save:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
folderid: 123
}
}
Atributo | Formato | Descripción |
---|---|---|
look.url |
String | La URL de aspecto relativa (solo la ruta) |
look.absoluteUrl |
String | La URL de la vista completa |
look.folderid |
Entero | El ID de la carpeta en la que se almacena el aspecto |
look:delete:complete
Este evento se crea cuando se mueve una vista a la carpeta Papelera.
type: look:delete:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
}
Atributo | Formato | Descripción |
---|---|---|
look.url |
String | La URL de aspecto relativa (solo la ruta) |
look.absoluteUrl |
String | La URL de la vista completa |
drillmenu:click
Este evento se crea cuando un usuario hace clic en un menú de desglose en un panel creado con el parámetro link
de LookML. Por ejemplo, la siguiente definición de LookML crea un menú de desglose en el que un usuario puede ver los datos filtrados por la dimensión state
:
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"
}
}
Cuando el filtro state
se establece en Illinois
, el evento drillmenu:click
muestra lo siguiente al host del iframe:
type: "drillmenu:click",
label: "Filter by Illinois",
link_type: "url",
modal: false,
target: '_self',
url: "#filter::state=Illinois"
context: ' '
Atributo | Formato | Descripción |
---|---|---|
label |
String | La etiqueta del vínculo como se muestra en el menú de desglose |
link_type |
String | Es el tipo de objeto en el destino del vínculo. |
modal |
Booleano | Indica si se usará el cuadro de diálogo de desglose en lugar de la navegación del navegador. |
target |
String | Es _self si el destino del vínculo reemplazará el iframe actual, _blank si el destino del vínculo abrirá una ventana nueva. |
url |
String | La URL del destino del vínculo |
context |
String | Es un atributo interno que usan algunos tipos de visualizaciones. |
La simulación de entorno del iframe evitará que los clics en el menú de desglose se abran en una ventana nueva. Usa estos valores de zona de pruebas dentro de la etiqueta de iframe:
sandbox = "allow-same-origin allow-scripts"
drillmodal:download
Este evento se crea cuando un usuario abre un cuadro de diálogo de desglose desde una tarjeta del panel y hace clic en la opción Descargar.
{
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"
}
Atributo | Formato | Descripción |
---|---|---|
dashboard.id |
Número/cadena | Es el ID del panel al que pertenece la tarjeta. |
dashboard.title |
String | Es el título del panel, como se muestra en la parte superior del panel al que pertenece la tarjeta. |
dashboard.url |
String | Es la URL del panel relativa (solo la ruta de acceso) a la que pertenece la tarjeta. |
dashboard.absoluteUrl |
String | Es la URL completa del panel al que pertenece la tarjeta. |
dashboard.dashboard_filters |
Objeto | Los filtros aplicados al panel al que pertenece la tarjeta Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
drillExploreUrl |
String | La URL de Explore relativa (solo la ruta) que se descargará. |
fileFormat |
String | Es el formato de archivo de la descarga de datos. |
drillmodal:explore
Este evento se crea cuando un usuario hace clic en la opción Explorar desde aquí en un cuadro de diálogo de desglose.
type: "drillmodal:explore",
label: "Explore From Here",
url: "/embed/explore/model/view..."
Atributo | Formato | Descripción |
---|---|---|
label |
String | La etiqueta del botón como se muestra en el menú de desglose |
url |
String | La URL de Explorar relativa (solo la ruta) que se mostrará |
explore:ready
Este evento se crea cuando una exploración comienza a cargar datos de consulta, independientemente de si se ejecuta la consulta o no.
type: "explore:ready",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
}
Atributo | Formato | Descripción |
---|---|---|
explore.url |
String | La URL de Explore relativa (solo la ruta) |
explore.absoluteUrl |
String | La URL completa de Explorar |
explore:run:start
Este evento se crea cuando una exploración comienza a cargar datos de consulta y la consulta comienza a ejecutarse.
type: "explore:run:start",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
}
Atributo | Formato | Descripción |
---|---|---|
explore.url |
String | La URL de Explore relativa (solo la ruta) |
explore.absoluteUrl |
String | La URL completa de Explorar |
explore:run:complete
Este evento se crea cuando una exploración termina de ejecutar la consulta.
type: "explore:run:complete",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
}
Atributo | Formato | Descripción |
---|---|---|
explore.url |
String | La URL de Explore relativa (solo la ruta) |
explore.absoluteUrl |
String | La URL completa de Explorar |
explore:state:changed
Este evento se crea cuando cambia la URL de una página de Explorar como resultado de las acciones del usuario.
type: "explore:state:changed",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/..."
}
Atributo | Formato | Descripción |
---|---|---|
explore.url |
String | La URL de Explore relativa (solo la ruta) |
explore.absoluteUrl |
String | La URL completa de Explorar |
page:changed
Este evento se crea cuando un usuario navega a una página nueva dentro del iframe.
type: "page:changed",
page: {
type: "dashboard",
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/..."
}
Atributo | Formato | Descripción |
---|---|---|
page.type |
String | Es el tipo de página a la que se acaba de navegar, como "dashboard" , "look" o "explore" . |
page.url |
String | La URL relativa (solo la ruta de acceso) de la página a la que se acaba de navegar |
page.absoluteUrl |
String | La URL completa de la página a la que se acaba de navegar |
page:properties:changed
Este evento se crea cuando cambia la altura de un iframe del panel. No está disponible para Looks ni Explorar porque esos elementos ajustan automáticamente su altura al tamaño del iframe.
type: "page:properties:changed",
height: 1000
Atributo | Formato | Descripción |
---|---|---|
height |
Entero | Es la altura del iframe del panel en píxeles. |
session:tokens
Este evento indica que el cliente de Looker requiere tokens para continuar. Este evento se crea inmediatamente cuando se crea el iframe y, luego, de forma periódica durante la sesión.
{
"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
}
Atributo | Formato | Descripción |
---|---|---|
authentication_token |
String | Token de autenticación. Se incluye cuando se crea el iframe. No se incluye en una respuesta a una solicitud para generar tokens o si la sesión venció. |
authentication_token_ttl |
Número | Es el tiempo de actividad del token de autenticación en segundos. Se incluye cuando se crea el iframe. No se incluye en una respuesta a una solicitud para generar tokens o si la sesión venció. |
api_token |
String | Token de API. No se incluye si la sesión venció. |
api_token_ttl |
Número | Es el tiempo de actividad del token de la API en segundos. No se incluye si la sesión venció. |
navigation_token |
String | Token de navegación No se incluye si la sesión venció. |
navigation_token_ttl |
Número | Es el tiempo de actividad del token de navegación en segundos. No se incluye si la sesión venció. |
session_references_token_ttl |
Número | Es el tiempo de actividad de la sesión en segundos. El valor será 0 cuando venza la sesión. Para recuperarla, la aplicación de incorporación debe adquirir una sesión nueva. |
session:status
El evento se genera cuando la aplicación de Looker incorporada controla las solicitudes de tokens de sesión.
{
"type": "session:status",
"session_ttl": 0,
"expired": true,
"interrupted": false
}
Atributo | Formato | Descripción |
---|---|---|
session_ttl |
Número | Es el tiempo de actividad de la sesión en segundos. |
expired |
Booleano | Cuando es true , indica que la sesión venció. |
interrupted |
Booleano | Cuando es true , indica que no se respondió una solicitud de tokens de sesión. Esto podría indicar que un servidor no está disponible temporalmente. |
recoverable |
Booleano | Solo se propaga cuando la interrupción es true . Indica si se puede recuperar la sesión o no. Es probable que un valor de false signifique que hay un problema con la aplicación de incorporación. |
env:client:dialog
El evento se genera cuando se abre un cuadro de diálogo que puede estar parcialmente fuera de la vista, como un cuadro de diálogo de desglose. Este evento permite que la aplicación de host desplace el cuadro de diálogo hasta que esté a la vista con la acción env:host:scroll
.
{
type: "env:client:dialog",
dialogType: 'drilling',
placement: 'cover',
open: true
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | env:client:dialog indica que se abrió o cerró un cuadro de diálogo. Actualmente, solo se admite el cuadro de diálogo de desglose, pero es posible que se agreguen otros en el futuro. Es posible que la parte superior del cuadro de diálogo de desglose no esté visible, ya que el cuadro de diálogo cubre el viewport del iframe. Este evento permite que la aplicación host desplace la parte superior del cuadro de diálogo para que se vea. |
dialogType |
String | Es el tipo de cuadro de diálogo. Actualmente, solo la apertura o el cierre del tipo de diálogo "desglose" activa este evento. |
placement |
String | La ubicación del diálogo. Los cuadros de diálogo de tipo "perforación" siempre usan un placement de "cubierta". |
open |
Booleano | Indica si el diálogo está abierto o se desplaza. |
Realiza cambios en el iframe
Después de preparar tu iframe para la recuperación de datos, puedes realizar cambios en él con los siguientes pasos:
Cómo escribir tu solicitud en JSON
Puedes realizar varios cambios en el iframe, que enviarás en formato JSON. Las opciones disponibles se describen en la sección Referencia de acciones de esta página. No olvides usar JSON.stringify
para convertir tu acción en JSON, de la siguiente manera:
var my_request = JSON.stringify(
{
type: "dashboard:run"
}
);
Publicación de la solicitud en la propiedad contentWindow
del iframe
Por último, publica tu mensaje en el contentWindow
del iframe, de la siguiente manera:
var my_iframe = document.getElementById("my_iframe_id");
my_iframe.contentWindow.postMessage(my_request, 'https://instance_name.looker.com');
Tabla de resumen de acciones
En la siguiente tabla, se resumen las acciones. Selecciona una acción para ver sus detalles.
Acción | Descripción de la acción |
---|---|
dashboard:load |
Carga un panel nuevo en el iframe y reemplaza uno existente. |
dashboard:run |
Ejecuta el panel en el iframe. |
dashboard:edit |
SE AGREGARON 22.20 Cambia el panel al modo de edición. |
dashboard:filters:update |
Actualiza un filtro de panel existente en el iframe. |
dashboard:options:set |
Escribe valores nuevos en el diseño del panel y en las propiedades de los elementos del panel. |
dashboard:schedule_modal:open |
Abre el Programador, que permite a los usuarios publicar contenido de Looker en varios destinos. |
dashboard:stop |
Detiene un panel que se está ejecutando o que está volviendo a cargar datos. |
look:run |
Ejecuta la función Look en el iframe. |
look:filters:update |
Actualiza un filtro de aspecto existente en el iframe. |
explore:run |
Ejecuta la función Explorar en el iframe. |
explore:filters:update |
Actualiza o quita un filtro de Explorar existente en el iframe. |
session:tokens:request |
Envía tokens en respuesta a un evento session:tokens:request . |
env:host:scroll |
Envía información sobre la posición de desplazamiento actual del iframe del host a la aplicación de Looker incorporada. |
Referencia de la acción
Estas son las acciones disponibles que puedes publicar en el iframe incorporado:
dashboard:load
Usa esta acción para cargar un panel nuevo en el iframe y reemplazar uno existente. El nuevo panel comenzará a ejecutar consultas como si se hubiera abierto una nueva página de panel.
{
type: "dashboard:load",
id: "101",
pushHistory: false
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo dashboard:load indica que deseas cargar un panel nuevo en el iframe. |
id |
String | Es el ID del panel que se cargará. |
pushHistory |
Booleano | Si es true , el panel cargado crea una nueva entrada del historial del navegador, y el usuario puede usar el botón Atrás del navegador para volver al panel anterior. Si es false , se reemplaza el panel actual y no se puede usar la navegación del navegador para volver a él. |
dashboard:run
Usa esta acción para ejecutar el panel en el iframe. Esta es la misma acción que presionar el botón Run o Reload Data en el panel.
{
type: "dashboard:run"
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo dashboard:run indica que deseas ejecutar el panel. |
dashboard:edit
SE AGREGARON 22.20 Usa esta acción para cambiar un panel existente en el iframe al modo de edición. Esta es la misma acción que seleccionar Editar panel en el menú del panel.
{
type: "dashboard:edit"
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo dashboard:edit indica que deseas cambiar el panel al modo de edición. |
dashboard:filters:update
Usa esta acción para actualizar un filtro de panel existente en el iframe. No puedes agregar un filtro nuevo al panel con este método.
{
type: "dashboard:filters:update",
filters: {
"Sale date": "Last 28 days",
"Sale amount": "Greater than 100"
}
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo dashboard:filters:update indica que deseas actualizar los filtros que usa el panel. |
filters |
Objeto | Los filtros nuevos que deseas aplicar al panel Este objeto tiene el formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:options:set
Esta acción está disponible después de que se produce el evento dashboard:run:complete
.
El incorporador crea el mensaje y lo envía al iframe, pero el panel no responde hasta después de que se produce dashboard:run:complete
. La acción dashboard:options:set
escribe valores nuevos en el diseño del panel y en las propiedades de los elementos del panel. Solo se pueden actualizar con dashboard:options:set
las propiedades que se muestran en el atributo options
del evento dashboard:run:complete
. Se ignoran todas las propiedades establecidas que el atributo options
del evento dashboard:run:complete
no haya mostrado anteriormente.
{
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"
}
}
}
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo dashboard:options:set indica que deseas escribir valores nuevos en el diseño del panel y en las propiedades de los elementos del panel. |
layouts |
Objeto | Las propiedades del diseño del panel que muestra el atributo options en el evento dashboard:run:complete Tendrán un formato similar al siguiente:
|
layouts.dashboard_layout_components |
Objeto | Uno o más objetos componente de diseño del panel que muestra el atributo options en el evento dashboard:run:complete . Tendrán un formato similar al siguiente:
|
elements |
Objeto | Uno o más objetos elemento del panel que muestra el atributo options en el evento dashboard:run:complete . Tendrán un formato similar al siguiente:id: { title: "string", title_hidden: boolean, vis_config: { type: "string", title: "string" }} |
dashboard:schedule_modal:open
Usa esta acción para abrir el Programador, que permite a los usuarios publicar contenido de Looker en varios destinos.
{
type: "dashboard:schedule_modal:open"
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo dashboard:schedule_modal:open indica que deseas abrir el cuadro de diálogo Programar. |
dashboard:stop
Usa esta acción para detener un panel que se está ejecutando o que está volviendo a cargar datos. Esta es la misma acción que hacer clic en el botón Cancelar en el panel. Un panel detenido con dashboard:stop
envía un evento dashboard:run:complete
con status:
establecido en "stopped"
.
{
type: "dashboard:stop"
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo dashboard:stop indica que deseas detener el panel en ejecución. |
look:run
Usa esta acción para ejecutar la consulta en la que se basa el aspecto en el iframe. Esta acción es similar a presionar el botón Run en el aspecto, con la excepción de que look:run
siempre consulta la base de datos directamente y no recupera datos de la caché de Looker.
{
type: "look:run"
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo look:run indica que deseas ejecutar el aspecto. |
look:filters:update
Usa esta acción para actualizar un filtro de aspecto existente en el iframe. No puedes agregar un filtro nuevo al aspecto con este método.
{
type: "look:filters:update",
filters: {
"orders.created_at": "90 days",
"products.department": "sweaters"
}
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo look:filters:update indica que deseas actualizar los filtros que usa el aspecto. |
filters |
Objeto | Los filtros nuevos que deseas aplicar al aspecto Este objeto tiene el formato: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...} |
explore:run
Usa esta acción para ejecutar la función Explorar en el iframe. Esta acción es similar a presionar el botón Run en Explorar, con la excepción de que explore:run
siempre consulta la base de datos directamente y no recupera datos de la caché de Looker.
{
type: "explore:run"
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo explore:run indica que deseas ejecutar la función Explorar. |
explore:filters:update
Usa esta acción para actualizar o quitar un filtro de Explorar existente en el iframe. Si incluyes un filtro nuevo que haga referencia a un campo válido, este se agregará a la función Explorar.
{
type: "explore:filters:update",
filters: {
"orders.created_at": "90 days",
"orders.status": "complete"
}
deleteFilters: ["products.department"]
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo explore:filters:update indica que deseas actualizar los filtros que usa Explorar. |
filters |
Objeto | Los nuevos filtros que quieres aplicar a Explorar. Si filters incluye un filtro que no existe actualmente en la exploración, pero que hace referencia a un campo válido, ese filtro se agregará a la exploración. Este objeto tiene el formato: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...} |
deleteFilters |
Array | Los filtros existentes que quieres quitar de Explorar El array tiene el siguiente formato: ["view_name.field_name_1", "view_name.field_name_2", ...] |
session:tokens:request
Usa esta acción para enviar tokens en respuesta a una solicitud de session:tokens:request
.
{
type: "session:tokens:request",
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo session:tokens:request indica que deseas enviar tokens en respuesta a un evento session:tokens:request . |
env:host:scroll
Usa esta acción para enviar información sobre la posición de desplazamiento actual del iframe del host a la aplicación de Looker incorporada.
{
type: "env:host:scroll",
offsetTop: 10,
offsetLeft: 10,
scrollX: 5,
scrollY: 5
}
Atributo | Formato | Descripción |
---|---|---|
type |
String | El uso del tipo env:host:scroll indica que deseas enviar información sobre la posición de desplazamiento actual del iframe del host a la aplicación de Looker incorporada. |
offsetTop |
Número | Es el desplazamiento superior del iframe. |
offsetLeft |
Número | Es el desplazamiento a la izquierda del iframe. |
scrollX |
Número | Es la posición de desplazamiento X del host de la aplicación. |
scrollY |
Número | La posición de desplazamiento Y del host de la aplicación. |