Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
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. ParametrdataRoleodpovídá vlastnostinamerole dat. K načtení dostupných datových rolí a názvů použijte metodugetCapabilities. -
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. Seznam bude obsahovat skrytá i viditelná pole.
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.
Nastavení viditelnosti datového pole
K řízení viditelnosti datových polí použijte setFieldHidden metodu ve vizuálu. Skrytá nebo zobrazená mohou být pouze agregovaná pole, míry a vizuální výpočty. Tato akce odpovídá přepnutí viditelnosti polí v režimu úprav výpočtu vizuálu.
setFieldHidden(dataRole: string, index: number, isHidden: boolean): 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 pro skrytí nebo zobrazení. -
isHidden- Logická hodnota k určení, kde by měla být skrytá nebo ne
Například:
await visual.setFieldHidden('Values', 0, /*isHidden*/ true);
Nastavení řetězce formátu datového pole
Chcete-li formátovat zobrazená data z konkrétního pole, zavolejte setFieldFormatString metodu vizuálu.
setFieldFormatString(dataRole: string, index: number, formatString: string): 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 pro nastavení řetězce formátu -
formatString– Byl očekáván řetězec formátu .NET.
Například: Pokud chcete, aby každá hodnota v poli měla na začátku $, udělejte toto:
await visual.setFieldFormatString('Values', 0, /*formatString*/ "$0.00");
Získání řetězce formátu datového pole
Chcete-li načíst formátovací řetězec pole, zavolejte getFieldFormatString metodu vizuálu.
getFieldFormatString(dataRole: string, index: number): Promise<string>
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 pro získání řetězce formátu
let formatString = await visual.getFieldFormatString('Values', 0);
Získání názvu datového pole
Každé pole ve vizuálu má jedinečný název odvozený od jejího zobrazovaného názvu. Tento jedinečný identifikátor slouží k odkazování na pole v rámci výrazů DAX při vytváření vizuálních výpočtů. Chcete-li načíst tento jedinečný název, zavolejte getDataFieldName metodu vizuálu.
getDataFieldName(dataRole: string, index: number): Promise<string>
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 pro získání názvu pole
let dataFieldName = await visual.getDataFieldName('Values', 0);
let visualCalcDax = `RUNNINGSUM([${dataFieldName}])`;