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 getCapabilities
método.
Adicionar um campo de dados
Para adicionar um campo de dados a uma função de dados visuais, chame o addDataField
método 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. OdataRole
parâmetro é equivalente à propriedade de funçãoname
de dados. Para recuperar as funções e nomes de dados disponíveis, use ogetCapabilities
método.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, uma coluna com agregação, medida, hierarquia ou hierarquia com agregação. Para obter mais informações sobre destinos, consulte Usar destinos para selecionar em qual campo de dados agir.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 getDataFields
método do visual.
getDataFields(dataRole: string): Promise<models.IBaseTarget>
Esse método tem a dataRole
variável, 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 removeDataField
método 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 getDataFields
matriz de resultados.