設定資料欄位
當您建立視覺效果時,視覺效果會根據指派的資料欄位呈現。 本文說明如何使用 Power BI 報表撰寫 API 來與資料欄位互動,並將其指派給資料角色。 若要判斷視覺效果擁有哪些資料角色,請使用 getCapabilities
方法。
新增資料欄位
若要將資料欄位新增至視覺資料角色,請呼叫 addDataField
視覺效果的 方法。
addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>
這個方法具有下列變數:
dataRole
- 應該指派資料欄位的資料角色名稱。 參數dataRole
相當於資料角色name
屬性。 若要擷取可用的資料角色和名稱,請使用getCapabilities
方法。dataField
- 要加入至資料角色的資料欄位。 資料欄位是目標物件,可以是具有匯總、量值、階層或階層的資料行。 如需目標的詳細資訊,請參閱 使用目標來選取要採取動作的資料欄位。index
(選擇性) - 應該加入資料欄位的索引。 預設行為是最後要加入的欄位。
例如:
const dataField = {
$schema: "http://powerbi.com/product/schema#column",
table: "Store",
column: "Name"
};
await visual.addDataField('Category', dataField);
取得資料欄位
若要取得資料角色中定義的資料欄位清單,請呼叫 getDataFields
視覺效果的 方法。
getDataFields(dataRole: string): Promise<models.IBaseTarget>
這個方法具有 dataRole
變數,這是要從中擷取資料欄位的資料角色名稱。
例如:
let dataField = await visual.getDataFields('Category');
移除資料欄位
若要移除套用至資料角色的資料欄位,請呼叫 removeDataField
視覺效果的 方法。
removeDataField(dataRole: string, index: number): Promise<models.IError>
這個方法具有下列參數:
dataRole
- 與資料欄位相關聯的目標資料角色名稱。index
- 要刪除的資料欄位索引。
例如:
await visual.removeDataField('Category', 2);
若要取得資料欄位的索引,您可以在結果陣列中使用 getDataFields
目標的索引。