Configurare i campi dati
Quando si crea una visualizzazione, l'oggetto visivo viene eseguito in base ai campi dati assegnati. Questo articolo illustra come usare le API di creazione di report di Power BI per interagire con i campi dati e assegnarli ai ruoli dei dati. Per determinare quali ruoli di dati ha un oggetto visivo, usare il getCapabilities
metodo .
Aggiungere un campo dati
Per aggiungere un campo dati a un ruolo dati visivo, chiamare il addDataField
metodo dell'oggetto visivo.
addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>
Questo metodo include le variabili seguenti:
dataRole
- Nome del ruolo dati a cui deve essere assegnato il campo dati. IldataRole
parametro equivale alla proprietà del ruoloname
dati. Per recuperare i ruoli e i nomi dei dati disponibili, usare ilgetCapabilities
metodo .dataField
- Campo dati da aggiungere al ruolo dati. Il campo dati è un oggetto di destinazione, che può essere una colonna, una colonna con aggregazione, misura, gerarchia o gerarchia con aggregazione. Per altre informazioni sulle destinazioni, vedere Usare destinazioni per selezionare il campo dati da eseguire.index
(facoltativo) - Indice in corrispondenza del quale deve essere aggiunto il campo dati. Il comportamento predefinito è che il campo venga aggiunto l'ultimo.
Ad esempio:
const dataField = {
$schema: "http://powerbi.com/product/schema#column",
table: "Store",
column: "Name"
};
await visual.addDataField('Category', dataField);
Ottenere i campi dati
Per ottenere un elenco dei campi dati definiti in un ruolo dati, chiamare il getDataFields
metodo dell'oggetto visivo.
getDataFields(dataRole: string): Promise<models.IBaseTarget>
Questo metodo ha la dataRole
variabile, ovvero il nome del ruolo dati da cui recuperare i campi dati.
Ad esempio:
let dataField = await visual.getDataFields('Category');
Rimuovere i campi dati
Per rimuovere un campo dati applicato a un ruolo dati, chiamare il removeDataField
metodo dell'oggetto visivo.
removeDataField(dataRole: string, index: number): Promise<models.IError>
Questo metodo include i parametri seguenti:
dataRole
- Nome del ruolo dati di destinazione a cui è associato il campo dati.index
- Indice del campo dati da eliminare.
Ad esempio:
await visual.removeDataField('Category', 2);
Per ottenere l'indice del campo dati, è possibile usare l'indice della destinazione nella getDataFields
matrice dei risultati.