Configurar campos de dados
Quando você cria uma visualização, o visual é renderizado de acordo com os campos de dados atribuídos. Este artigo mostra como usar APIs de criação de relatório do Power BI para interagir com campos de dados e atribuí-los a funções de dados. Para determinar quais funções de dados um visual tem, use o método getCapabilities
.
Adicionar um campo de dados
Para adicionar um campo de dados a uma função de dados visuais, chame o método addDataField
do visual.
addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>
Esse método tem as seguintes variáveis:
-
dataRole
- O nome da função de dados à qual o campo de dados deve ser atribuído. O parâmetrodataRole
é equivalente à propriedadename
de função de dados. Para recuperar as funções de dados e os nomes disponíveis, use o métodogetCapabilities
. -
dataField
- O campo de dados a ser adicionado à função de dados. O campo de dados é um objeto de destino, que pode ser uma coluna, coluna com agregação, medida, hierarquia ou hierarquia com agregação. Para obter mais informações sobre destinos, consulte Usar destinos para selecionar qual campo de dados agir em. -
index
(opcional) – o índice no qual o campo de dados deve ser adicionado. O comportamento padrão é que o campo seja adicionado por último.
Por exemplo:
const dataField = {
$schema: "http://powerbi.com/product/schema#column",
table: "Store",
column: "Name"
};
await visual.addDataField('Category', dataField);
Obter campos de dados
Para obter uma lista dos campos de dados definidos em uma função de dados, chame o método getDataFields
do visual.
getDataFields(dataRole: string): Promise<models.IBaseTarget>
Esse método tem a variável dataRole
, que é o nome da função de dados da qual recuperar os campos de dados.
Por exemplo:
let dataField = await visual.getDataFields('Category');
Remover campos de dados
Para remover um campo de dados aplicado em uma função de dados, chame o método removeDataField
do visual.
removeDataField(dataRole: string, index: number): Promise<models.IError>
Esse método tem os seguintes parâmetros:
-
dataRole
- O nome da função de dados de destino à qual o campo de dados está associado. -
index
- O índice do campo de dados a ser excluído.
Por exemplo:
await visual.removeDataField('Category', 2);
Para obter o índice do campo de dados, você pode usar o índice do destino na matriz de resultados getDataFields
.