Compartilhar via


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. O dataRole parâmetro é equivalente à propriedade de função name de dados. Para recuperar as funções e nomes de dados disponíveis, use o getCapabilities 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.

Próximas etapas