Compartir a través de


Cómo controlar eventos

Propina

Experimente con las API en tiempo real mediante su propio informe o nuestro informe de ejemplo en la sección de espacio aislado para desarrolladores de de la área de juegos de Análisis insertado de Power BI.

Los eventos se usan para comunicarse entre el componente de Power BI (por ejemplo, un informe) y el código de la aplicación web.

Un componente incrustado emite eventos después de ejecutar una acción dentro del componente. Pueden ser interacciones del usuario o una acción automatizada (como un objeto visual que se representa) dentro del componente.

Por ejemplo, buttonClicked es un evento emitido por un informe de Power BI cuando un usuario hace clic en un botón del informe. Puede escuchar el evento mediante report.on(...)y, a continuación, establecer un controlador de eventos.

Ejemplo de cómo controlar un evento

En este ejemplo se muestra cómo controlar un evento de informe. Para obtener información sobre otros tipos de eventos, consulte eventos de y sus valores de respuesta.

Nota

Espere a que el componente se cargue antes de usar las API. Escuche el evento cargado y, a continuación, emita nuevos comandos.

report.on('loaded', function(event)
{
    reportPages = await report.getPages();
});

Eliminación de controladores de eventos

Puede usar report.off(...) para quitar todos los controladores de eventos de un evento específico.

Eventos y sus valores de respuesta

Vea una lista completa de posibles eventos y sus valores de respuesta.

Eventos de error (relevantes para todas las inserciones)

Se genera un evento de error para describir una operación con errores.

interface IError {
    message: string // A general message that describes the operation that failed (example: "Could not set page")
    detailedMessage?: string // Detailed message that describes the error
    errorCode?: string  //  Short message that describes the error
    level?: TraceType // The level of the error (example: 'Fatal')
    technicalDetails?: ITechnicalDetails
}

interface ITechnicalDetails {
    requestId?: string // Id for debugging - should be provided when reporting a bug
}

Nota

Solo se requiere la propiedad message y es posible que las demás propiedades no estén definidas.

Eventos de informe

Se emite un evento de informe para una interacción con un informe incrustado, como hacer clic en un botón de informe o representar un objeto visual.

buttonClicked

El evento buttonClicked se genera cuando un usuario hace clic en un botón Informe.

 id: string
 title?: string
 type?: string (type of button)
 bookmark?: string

commandTriggered

El evento commandTriggered se genera cuando un usuario hace clic en un comando de extensión .

 command: string
 dataPoints?: IIdentityValue[]
 report: models.IReport
 page: models.IPage
 visual: models.IVisual

dataHyperlinkClicked

El evento dataHyperlinkClicked se genera cuando se hace clic en un hipervínculo y el comportamiento del hipervínculo se establece en NavigateAndRaiseEvent o RaiseEvent.

 url: string
 report: models.IReport
 page: models.IPage
 visual: models.IVisual

Para obtener más información, consulte Configuración de las opciones de informe.

dataSelected

El evento dataSelected se genera cuando se selecciona un punto de datos específico.

 report: models.IReport
 page: models.IPage
 visual: models.IVisual
 filters: IFilter[]
 dataPoints: IIdentityValue[]

cargado

El evento loaded se genera cuando se inicializa el informe. La carga se completa cuando desaparece el logotipo de Power BI.

pageChanged

El evento pageChanged se genera cada vez que se cambia una página.

 newPage: Models.IPage

Prestados

El evento rendered se genera cuando se representa completamente un informe. Por ejemplo, si todos los objetos visuales se representan al cargar un informe o después de una interacción del usuario.

saveAsTriggered

El evento saveAsTriggered se genera cuando un usuario hace clic en Guardar como en la interfaz de usuario. Esto le permite crear su propio cuadro de diálogo para la acción Guardar como .

guardado

El evento saved se genera cuando una acción de save o saveAs desencadena un guardado en la interfaz de usuario o mediante las API.

selectionChanged

El evento selectionChanged se genera cada vez que el usuario cambia el objeto visual seleccionado. selectedItems es una lista de todos los objetos visuales seleccionados cuando se selecciona más de uno.

 report: models.IReport
 page: models.IPage
 visual?: models.IVisual
 selectedItems?: models.IVisual[]

visualClicked

El evento visualClicked se genera cada vez que se hace clic en un objeto visual.

 report: models.IReport
 page: models.IPage
 visual: models.IVisual

visualRendered

El evento visualRendered se genera cuando se representa un objeto visual (requiere establecer visualRenderedEvents en true en el objeto de configuración).

Nota

Dado que los objetos visuales pueden representarse debido a las interacciones del usuario, se recomienda que este evento solo se active cuando sea necesario.

 name: string

Para obtener más información, consulte Configuración de las opciones de informe.

Eventos de inserción de informes móviles

Se emite un evento Report Embed Mobile para una interacción con un informe incrustado en un diseño móvil, como el principio o el final de un deslizamiento.

swipeStart y swipeEnd eventos

swipeStart o eventos de swipeEnd se generan cuando un usuario comienza o finaliza un movimiento de deslizar el dedo en un informe incrustado.

interface ISwipeEvent {
    currentPosition: IPosition
    startPosition: IPosition
}

interface IPosition {
    x: number
    y: number
}

Eventos del panel

Se genera un evento de panel cuando se carga el panel y cuando un usuario hace clic en un icono del panel.

cargado

El evento loaded se genera cuando se inicializa el panel.

tileClicked

El evento tileClicked se genera cuando un usuario final hace clic en un icono. No se genera para las páginas activas ancladas.

 tileId: string
 navigationUrl: string
 pageName: string
 reportEmbedUrl: string

Eventos de Q&A

Se genera un evento de pregunta y respuesta (Q&A) cuando se representa un objeto visual después de escribir una pregunta.

visualRendered (Q&A)

El evento visualRendered se genera cuando se representa un objeto visual después de escribir una pregunta y se muestra una respuesta.

 question: string
 normalizedQuestion: string

Eventos de icono

Se genera un evento Tile cuando un usuario hace clic en un icono.

tileClicked (evento de icono)

El evento tileClicked se genera cuando un usuario final hace clic en un icono. No se genera para las páginas activas ancladas.

 tileId: string
 navigationUrl: string
 pageName: string
 reportEmbedUrl: string

tileLoaded

El evento tileLoaded se genera cuando se inicializa el icono. La carga se completa cuando desaparece el logotipo de Power BI.