Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Quando si crea una visualizzazione, viene eseguito il rendering dell'oggetto visivo 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 dati. Per determinare i ruoli dati di un oggetto visivo, usare il metodo getCapabilities.
Aggiungere un campo dati
Per aggiungere un campo dati a un ruolo dati visivo, chiamare il metodo addDataField dell'oggetto visivo.
addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>
Questo metodo ha le variabili seguenti:
-
dataRole: nome del ruolo dati a cui deve essere assegnato il campo dati. Il parametrodataRoleequivale alla proprietànamedel ruolo dati. Per recuperare i nomi e i ruoli dati disponibili, usare il metodogetCapabilities. -
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 le destinazioni per selezionare il campo dati su cui agire. -
index(facoltativo): indice in corrispondenza del quale deve essere aggiunto il campo dati. Il comportamento predefinito è per il campo da aggiungere per ultimo.
Per esempio:
const dataField = {
$schema: "http://powerbi.com/product/schema#column",
table: "Store",
column: "Name"
};
await visual.addDataField('Category', dataField);
Ottenere campi dati
Per ottenere un elenco dei campi dati definiti in un ruolo dati, chiamare il metodo getDataFields dell'oggetto visivo. L'elenco conterrà campi nascosti e visibili.
getDataFields(dataRole: string): Promise<models.IBaseTarget>
Questo metodo ha la variabile dataRole, ovvero il nome del ruolo dati da cui recuperare i campi dati.
Per esempio:
let dataField = await visual.getDataFields('Category');
Rimuovere i campi dati
Per rimuovere un campo dati applicato a un ruolo dati, chiamare il metodo removeDataField dell'oggetto visivo.
removeDataField(dataRole: string, index: number): Promise<models.IError>
Questo metodo ha i parametri seguenti:
-
dataRole: nome del ruolo dati di destinazione a cui è associato il campo dati. -
index: indice del campo dati da eliminare.
Per esempio:
await visual.removeDataField('Category', 2);
Per ottenere l'indice del campo dati, è possibile usare l'indice della destinazione nella matrice di risultati getDataFields.
Impostare la visibilità di un campo dati
Per controllare la visibilità dei campi dati, utilizzare il setFieldHidden metodo nell'oggetto visivo. Solo i campi aggregati, le misure e i calcoli visivi possono essere nascosti o visualizzati. Questa azione equivale a attivare o disattivare la visibilità dei campi in modalità di modifica del calcolo visivo.
setFieldHidden(dataRole: string, index: number, isHidden: boolean): Promise<models.IError>
Questo metodo ha i parametri seguenti:
-
dataRole: nome del ruolo dati di destinazione a cui è associato il campo dati. -
index- Indice del campo dati da nascondere o scoprire. -
isHidden- Valore booleano per determinare dove deve essere nascosto o meno
Per esempio:
await visual.setFieldHidden('Values', 0, /*isHidden*/ true);
Impostare la stringa di formato di un campo dati
Per formattare i dati visualizzati da un determinato campo, chiamare il setFieldFormatString metodo dell'oggetto visivo.
setFieldFormatString(dataRole: string, index: number, formatString: string): Promise<models.IError>
Questo metodo ha i parametri seguenti:
-
dataRole: nome del ruolo dati di destinazione a cui è associato il campo dati. -
index- Indice del campo dati per impostare la stringa di formato -
formatString- Previsto stringa di formato .NET
Ad esempio: se si desidera che ogni valore nel campo abbia $ all'inizio, eseguire questa operazione:
await visual.setFieldFormatString('Values', 0, /*formatString*/ "$0.00");
Ottenere la stringa di formato di un campo dati
Per recuperare la stringa di formato di un campo, chiamare il getFieldFormatString metodo dell'oggetto visivo.
getFieldFormatString(dataRole: string, index: number): Promise<string>
Questo metodo ha i parametri seguenti:
-
dataRole: nome del ruolo dati di destinazione a cui è associato il campo dati. -
index- Indice del campo dati per ottenere la stringa di formato
let formatString = await visual.getFieldFormatString('Values', 0);
Ottenere il nome di un campo dati
Ogni campo in un oggetto visivo ha un nome univoco derivato dal nome visualizzato. Questo identificatore univoco viene usato per fare riferimento al campo all'interno di espressioni DAX durante la creazione di calcoli visivi. Per recuperare questo nome univoco, chiamare il getDataFieldName metodo dell'oggetto visivo.
getDataFieldName(dataRole: string, index: number): Promise<string>
Questo metodo ha i parametri seguenti:
-
dataRole: nome del ruolo dati di destinazione a cui è associato il campo dati. -
index- Indice del campo dati per ottenere il nome del campo
let dataFieldName = await visual.getDataFieldName('Values', 0);
let visualCalcDax = `RUNNINGSUM([${dataFieldName}])`;