Sdílet prostřednictvím


Konfigurace datových polí

Při vytváření vizualizace se vizuál vykreslí podle přiřazených datových polí. Tento článek ukazuje, jak používat rozhraní API pro vytváření sestav Power BI k interakci s datovými poli a jejich přiřazení k datovým rolím. K určení rolí dat, které vizuál má, použijte metodu getCapabilities.

Přidání datového pole

Pokud chcete přidat datové pole do role dat vizuálu, zavolejte addDataField metodu vizuálu.

addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>

Tato metoda má následující proměnné:

  • dataRole – název role dat, ke které má být datové pole přiřazeno. Parametr dataRole odpovídá vlastnosti name role dat. K načtení dostupných datových rolí a názvů použijte metodu getCapabilities.
  • dataField – datové pole, které chcete přidat do role dat. Datové pole je cílový objekt, který může být sloupec, sloupec s agregací, mírou, hierarchií nebo hierarchií s agregací. Další informace ocílechch
  • index (volitelné) – index, do kterého se má přidat datové pole. Výchozí chování je pro pole, které se má přidat jako poslední.

Například:

const dataField = {
  $schema: "http://powerbi.com/product/schema#column",
  table: "Store",
  column: "Name"
};

await visual.addDataField('Category', dataField);

Získání datových polí

Pokud chcete získat seznam datových polí definovaných v roli dat, zavolejte getDataFields metodu vizuálu.

getDataFields(dataRole: string): Promise<models.IBaseTarget>

Tato metoda má dataRole proměnnou, což je název role dat, ze které se mají načíst datová pole.

Například:

let dataField = await visual.getDataFields('Category');

Odebrání datových polí

Pokud chcete odebrat datové pole použité u role dat, zavolejte metodu removeDataField vizuálu.

removeDataField(dataRole: string, index: number): Promise<models.IError>

Tato metoda má následující parametry:

  • dataRole – název cílové role dat, ke které je datové pole přidruženo.
  • index – index datového pole, které chcete odstranit.

Například:

await visual.removeDataField('Category', 2);

Pokud chcete získat index datového pole, můžete použít index cíle v poli výsledků getDataFields.