Usare i selettori per controllare quali oggetti visivi vengono applicati
Alcune funzionalità consentono di usare i selettori per controllare quali oggetti visivi vengono applicati. Il selettore è facoltativo e, quando non viene visualizzato, le impostazioni sono applicabili a tutti gli oggetti visivi del report.
Funzionalità supportate
I selettori possono essere usati nelle funzionalità seguenti:
- modifica comandi di menu
- nascondere o visualizzare intestazioni visive
- filtri dei dati sul di caricamento dei report
Tipi di selettore
Nome oggetto visivo
Applicare le impostazioni solo per l'oggetto visivo specificato.
selector: {
$schema: "http://powerbi.com/product/schema#visualSelector",
visualName: <a visual name> // You can retrieve the name using `getVisuals`
}
Per trovare un nome visivo, è possibile usare l'API getVisuals()
in una pagina e ottenere la proprietà name
dell'oggetto visivo. Il nome dell'oggetto visivo è un identificatore univoco.
Tipo di oggetto visivo
Applicare le impostazioni a tutti gli oggetti visivi del tipo specificato.
selector: {
$schema: "http://powerbi.com/product/schema#visualTypeSelector",
visualType: <a visual type> // You can retrieve the type using `getVisuals`
}
Per trovare un tipo di oggetto visivo, è possibile usare l'API getVisuals()
in una pagina e ottenere la proprietà type
dell'oggetto visivo.
Destinazione filtro dei dati
Applicare lo stato del filtro dei dati solo per i filtri dei dati con la destinazione specificata.
selector: {
$schema: "http://powerbi.com/product/schema#slicerTargetSelector",
target: <target data field>
}
Esempi
Impostazioni intestazione visiva
Nascondere tutte le intestazioni visive nel report.
let config = { … settings: { … visualSettings: { visualHeaders: [ { settings: { visible: false } /* No selector - Hide visual header for all the visuals in the report */ } ] } } };
Nascondere un'intestazione visiva per un oggetto visivo specifico usando il selettore visivo.
let config = { … settings: { … visualSettings: { visualHeaders: [ { settings: { visible: false } selector: { $schema: "http://powerbi.com/product/schema#visualSelector", visualName: "VisualContainer1", } } ] } } };
Impostazioni dei comandi di menu
Entrambe le estensioni dei comandi di menu e i comandi predefiniti visualizzano i selettori di supporto.
Aggiunta di un comando di estensione a un menu di opzioni visive specifico.
let config = { ... settings: { ... // Adding the extension command to the options menu extensions: [ { command: { name: "campaign", title: "Start campaign", icon: base64Icon, selector: { $schema: "http://powerbi.com/product/schema#visualSelector", visualName: tableVisualName }, extend: { visualOptionsMenu: { title: "Start campaign", menuLocation: models.MenuLocation.Top, } } } }, ], } }
Nascondere alcuni comandi predefiniti per tutti gli oggetti visivi con
table
tipo.let tableSelector = { $schema: "http://powerbi.com/product/schema#visualTypeSelector", visualType: 'table' }; let config = { ... settings: { ... // Hiding built-in commands on the options menu commands: [ { spotlight: { selector: tableSelector, displayOption: models.CommandDisplayOption.Hidden, }, exportData: { selector: tableSelector, displayOption: models.CommandDisplayOption.Hidden, }, seeData: { selector: tableSelector, displayOption: models.CommandDisplayOption.Hidden, }, } ] }, };
Filtri dei dati al caricamento
Nota
I filtri dei dati sul carico non supportano il selettore del tipo di oggetto visivo
Impostare un filtro dei dati specifico in base al nome
let slicers = [ { selector: { $schema: "http://powerbi.com/product/schema#visualSelector", visualName: "d1feb8891635af3b335a" }, state: { filters: [ { $schema:"http://powerbi.com/product/schema#advanced", target: { table: "Store", column: "StoreNumber" }, filterType: models.FilterType.AdvancedFilter, logicalOperator: "And", conditions: [ { operator: "GreaterThanOrEqual", value: 37 }, { operator: "LessThanOrEqual", value: 576 }] }] } } ]; embedConfig = { slicers: slicers, ... };
Impostare i filtri dei dati in base alla destinazione
// We want to slice all slicers with "StoreNumber" column target let target = { table: "Store", column: "StoreNumber" }; let slicers = [ { selector: { $schema: "http://powerbi.com/product/schema#slicerTargetSelector", target: target }, state: { filters: [ { $schema:"http://powerbi.com/product/schema#advanced", target: target, filterType: models.FilterType.AdvancedFilter, logicalOperator: "And", conditions: [ {operator: "GreaterThanOrEqual", value: 37 }, {operator: "LessThanOrEqual", value: 576 }] }] } } ]; embedConfig = { slicers: slicers, ... };