Partager via


Guide pratique pour gérer les événements

Pourboire

Expérimentez avec des API en temps réel à l’aide de votre propre rapport ou de notre exemple de rapport dans la section bac à sable des développeurs de la Power BI Embedded Analytics Playground.

Les événements sont utilisés pour communiquer entre le composant Power BI (par exemple, un rapport) et le code de l’application web.

Un composant incorporé émet des événements après l’exécution d’une action à l’intérieur du composant. Il peut s’agir d’interactions utilisateur ou d’une action automatisée (comme un visuel affiché) dans le composant.

Par exemple, buttonClicked est un événement émis par un rapport Power BI lorsqu’un utilisateur clique sur un bouton dans le rapport. Vous pouvez écouter l’événement à l’aide de report.on(...), puis définir un gestionnaire d’événements.

Exemple de gestion d’un événement

Cet exemple montre comment gérer un événement de rapport. Pour en savoir plus sur d’autres types d’événements, consultez Événements et leurs valeurs de réponse.

Note

Attendez que le composant se charge avant d’utiliser les API. Écoutez l’événement chargé, puis émettez de nouvelles commandes.

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

Comment supprimer des gestionnaires d’événements

Vous pouvez utiliser report.off(...) pour supprimer tous les gestionnaires d’événements pour un événement spécifique.

Événements et leurs valeurs de réponse

Affichez une liste complète des événements possibles et leurs valeurs de réponse.

Événements d’erreur (pertinents pour toutes les incorporations)

Un événement d’erreur est émis pour décrire une opération ayant échoué.

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
}

Note

Seule la propriété message est requise et les autres propriétés peuvent ne pas être définies.

Événements de rapport

Un événement de rapport est émis pour une interaction avec un rapport incorporé, par exemple en cliquant sur un bouton de rapport ou en affichant un visuel.

buttonClicked

L’événement buttonClicked est déclenché lorsqu’un utilisateur clique sur un bouton Rapport.

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

commandTriggered

L’événement commandTriggered est déclenché lorsqu’un utilisateur clique sur une commande d’extension .

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

dataHyperlinkClicked

L’événement est déclenché lorsqu’un lien hypertexte est cliqué, et le comportement du lien hypertexte est défini sur ou .

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

Pour plus d’informations, consultez Configurer les paramètres de rapport.

dataSelected

L’événement dataSelected est déclenché lorsqu’un point de données spécifique est sélectionné.

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

chargé

L’événement loaded est déclenché lorsque le rapport initialise. Le chargement est terminé lorsque le logo Power BI disparaît.

pageChanged

L’événement pageChanged est déclenché chaque fois qu’une page est modifiée.

 newPage: Models.IPage

Rendu

L’événement rendered est déclenché lorsqu’un rapport est entièrement rendu. Par exemple, si tous les visuels sont rendus lors du chargement d’un rapport ou après une interaction utilisateur.

saveAsTriggered

L’événement saveAsTriggered est déclenché lorsqu’un utilisateur clique sur enregistrer sous dans l’interface utilisateur. Cela vous permet de créer votre propre boîte de dialogue pour l’action enregistrer sous .

sauvé

L’événement saved est déclenché lorsqu’un enregistrement est déclenché par une action save ou saveAs dans l’interface utilisateur ou à l’aide des API.

selectionChanged

L’événement selectionChanged est déclenché chaque fois que l’utilisateur modifie le visuel sélectionné. selectedItems est une liste de tous les visuels sélectionnés lorsque plusieurs visuels sont sélectionnés.

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

visualClicked

L’événement visualClicked est déclenché chaque fois qu’un visuel est cliqué.

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

visualRendered

L’événement visualRendered est déclenché lorsqu’un visuel est rendu (nécessite le paramètre visualRenderedEvents pour true dans l’objet paramètres).

Note

Étant donné que les visuels peuvent s’afficher en raison d’interactions utilisateur, il est recommandé d’activer cet événement uniquement si nécessaire.

 name: string

Pour plus d’informations, consultez Configurer les paramètres de rapport.

Événements d’incorporation de rapports mobiles

Un événement Report Embed Mobile est émis pour une interaction avec un rapport incorporé dans une disposition mobile, comme le début ou la fin d’un mouvement de balayage.

événements swipeStart et swipeEnd

swipeStart ou swipeEnd événements sont déclenchés lorsqu’un utilisateur commence ou termine un mouvement de balayage sur un rapport incorporé.

interface ISwipeEvent {
    currentPosition: IPosition
    startPosition: IPosition
}

interface IPosition {
    x: number
    y: number
}

Événements de tableau de bord

Un événement de tableau de bord est émis lorsque le tableau de bord est chargé et lorsqu’un utilisateur clique sur une vignette dans le tableau de bord.

chargé

L’événement loaded est déclenché lorsque le tableau de bord initialise.

tileClicked

L’événement tileClicked est déclenché lorsqu’un utilisateur final clique sur une vignette. Il n’est pas déclenché pour les pages actives épinglées.

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

Événements Q&A

Un événement question et réponse (Q&A) est déclenché lorsqu’un visuel est rendu après avoir entré une question.

visualRendered (Q&A)

L’événement visualRendered est déclenché lorsqu’un visuel est rendu une fois qu’une question est entrée et qu’une réponse s’affiche.

 question: string
 normalizedQuestion: string

Événements de vignette

Un événement de vignette est déclenché lorsqu’un utilisateur clique sur une vignette.

tileClicked (événement de vignette)

L’événement tileClicked est déclenché lorsqu’un utilisateur final clique sur une vignette. Il n’est pas déclenché pour les pages actives épinglées.

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

tileLoaded

L’événement tileLoaded est déclenché lorsque la vignette initialise. Le chargement est terminé lorsque le logo Power BI disparaît.