Aggiungere un'icona di avviso di visualizzazione all'oggetto visivo

In un oggetto visivo di Power BI un'icona di avviso di visualizzazione può notificare all'utente un possibile problema o un errore. Le icone di avviso di visualizzazione possono essere utili in molti casi, ad esempio:

  • Un oggetto visivo mappa può visualizzare un'icona di avviso quando i valori non rientrano nell'intervallo valido di latitudine o longitudine.

  • Un oggetto visivo grafico a torta può visualizzare un'icona di avviso quando visualizza valori negativi misti con quelli positivi.

  • Un grafico cartesiano può visualizzare un'icona di avviso quando vengono calcolati valori di infinito. Ad esempio, se Y è zero, quando si divide X per Y, il risultato è infinito.

Quando viene visualizzata l'icona, l'utente può passare il puntatore del mouse su di essa per visualizzare il titolo del messaggio di avviso.

Screenshot che mostra un'icona di avviso in un oggetto visivo di Power BI.

Quando l'utente seleziona l'icona di avviso, viene visualizzato un messaggio che descrive il problema in una finestra popup.

Screenshot che mostra un messaggio di avviso attivato selezionando un'icona di avviso in un oggetto visivo di Power BI.

Creare un'icona di avviso

È possibile creare un'icona di avviso con un messaggio personalizzato per un oggetto visivo personalizzato. La decisione se generare o meno l'icona di avviso spetta all'utente. Come illustrato in questi esempi, l'oggetto visivo continua a funzionare quando viene visualizzata l'icona di avviso.

Aggiungere una chiamata al metodo di aggiornamento

Per aggiungere un'icona di avviso di visualizzazione all'oggetto visivo, richiamare il metodo displayWarningIcon. Il metodo fa parte di IVisualHost e viene esposto tramite powerbi-visuals-api.

Aggiungere l'importazione seguente al file:

import powerbiVisualsApi from "powerbi-visuals-api"; 

Dopo aver aggiunto l'importazione, aggiungere una condizione che determina quando visualizzare l'icona di avviso. Usare gli esempi in questo articolo per visualizzare due condizioni facoltative.

Esempio 1: Verificare la compatibilità della lingua

La localizzazione viene usata per visualizzare gli oggetti visivi nella lingua nativa del cliente, che è scoraggiato dalle impostazioni del sistema operativo.

In questo esempio, l'oggetto visivo confronta la lingua dell'oggetto visivo, che è impostata sull'inglese degli Stati Uniti, con la lingua del sistema operativo. Se le lingue non corrispondono, viene visualizzata l'icona di avviso.

if (this.locale != 'en-US') { 

            this.host.displayWarningIcon('Language inconsistency', 'This visual supports only US English. For the visual to work as expected, set your browser's language to US English.'); 
        }

Screenshot che mostra il messaggio di avviso di mancata corrispondenza della lingua.

Esempio 2: Confrontare i colori nelle colonne adiacenti

In questo esempio, l'icona di avviso di visualizzazione viene visualizzata quando due colonne accanto all'altra hanno lo stesso colore.

Il metodo getColumnColorByIndex scorre tutte le colonne. Se due colonne adiacenti hanno lo stesso colore, viene visualizzata un'icona di avviso.

let category = options.dataViews[0].categorical.categories[0]; 

let dataValue = options.dataViews[0].categorical.values[0]; 

let colorPalette = this.host.colorPalette; 

for (let i = 0, len = Math.max(category.values.length, dataValue.values.length); i < len-1; i++) { 

    const color1: string = getColumnColorByIndex(category, i, colorPalette); 

    const color2: string = getColumnColorByIndex(category, i+1, colorPalette); 

    if (color1 == color2) { 

        this.host.displayWarningIcon('Adjacent columns have the same color.', 'Columns that are next to each other have the same color. To change a column's color, use the data colors option in the Format tab.'); 
    } 

} 

Considerazioni e limitazioni

  • Alcuni errori e avvisi non sono causati dall'oggetto visivo. Ad esempio, troppi valori. L'errore Mancata visualizzazione di tutti i dati deriva dal servizio Power BI. Tali errori e avvisi vengono propagati prima delle chiamate dell'oggetto visivo. Hanno la precedenza sugli errori che hanno origine dal codice dell'oggetto visivo. Se si verifica un errore durante il caricamento dei dati, prima che venga eseguito il codice dell'oggetto visivo e venga soddisfatta la condizione dell'icona di avviso di visualizzazione, l'oggetto visivo mostra tale errore anziché l'errore dell'icona di avviso di visualizzazione.

  • L'avviso di visualizzazione viene cancellato durante ogni rendering dell'oggetto visivo, ad esempio quando vengono trascinati nuovi dati nell'oggetto visivo. Il metodo update() dell'oggetto visivo viene richiamato dopo il rendering dell'oggetto visivo. Se l'avviso dell'oggetto visivo viene generato in base a una condizione archiviata nel metodo di aggiornamento, ogni volta che viene eseguito il rendering dell'oggetto visivo, se la condizione viene soddisfatta, l'oggetto visivo visualizza nuovamente l'avviso.

  • Il ridimensionamento di un oggetto visivo non influisce sull'icona di avviso.

Le limitazioni seguenti fanno riferimento al testo dell'icona di visualizzazione:

  • La lunghezza massima del titolo è di 70 caratteri

  • La lunghezza massima del testo è di 2.000 caratteri

  • Il testo viene visualizzato solo come testo normale

DataViewUtils