Konfigurowanie pól danych
Podczas tworzenia wizualizacji wizualizacja jest renderowana zgodnie z przypisanymi polami danych. W tym artykule pokazano, jak używać interfejsów API tworzenia raportów usługi Power BI do interakcji z polami danych i przypisywania ich do ról danych. Aby określić, jakie role danych ma wizualizacja, użyj metody getCapabilities
.
Dodawanie pola danych
Aby dodać pole danych do roli danych wizualnych, wywołaj metodę addDataField
wizualizacji.
addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>
Ta metoda ma następujące zmienne:
-
dataRole
— nazwa roli danych, do której ma zostać przypisane pole danych. ParametrdataRole
jest odpowiednikiem właściwościname
roli danych. Aby pobrać dostępne role danych i nazwy, użyj metodygetCapabilities
. -
dataField
— pole danych, które ma zostać dodane do roli danych. Pole danych jest obiektem docelowym, który może być kolumną, kolumną z agregacją, miarą, hierarchią lub hierarchią z agregacją. Aby uzyskać więcej informacji na temat obiektów docelowych, zobacz Use targets to select which data field to act on. -
index
(opcjonalnie) — indeks, w którym należy dodać pole danych. Domyślne zachowanie dotyczy pola, które ma zostać dodane ostatnio.
Na przykład:
const dataField = {
$schema: "http://powerbi.com/product/schema#column",
table: "Store",
column: "Name"
};
await visual.addDataField('Category', dataField);
Pobieranie pól danych
Aby uzyskać listę pól danych zdefiniowanych w roli danych, wywołaj metodę getDataFields
wizualizacji.
getDataFields(dataRole: string): Promise<models.IBaseTarget>
Ta metoda ma zmienną dataRole
, która jest nazwą roli danych, z której mają być pobierane pola danych.
Na przykład:
let dataField = await visual.getDataFields('Category');
Usuwanie pól danych
Aby usunąć pole danych zastosowane do roli danych, wywołaj metodę removeDataField
wizualizacji.
removeDataField(dataRole: string, index: number): Promise<models.IError>
Ta metoda ma następujące parametry:
-
dataRole
— nazwa roli danych docelowych, z którą jest skojarzone pole danych. -
index
— indeks pola danych do usunięcia.
Na przykład:
await visual.removeDataField('Category', 2);
Aby uzyskać indeks pola danych, możesz użyć indeksu obiektu docelowego w tablicy wyników getDataFields
.