Compartir a través de


Configurar campos de datos

Al crear una visualización, el objeto visual se representa según los campos de datos asignados. En este artículo se muestra cómo usar las API de creación de informes de Power BI para interactuar con campos de datos y asignarlas a roles de datos. Para determinar qué roles de datos tiene un objeto visual, use el método getCapabilities.

Agregar un campo de datos

Para agregar un campo de datos a un rol de datos visual, llame al método addDataField del objeto visual.

addDataField(dataRole: string, dataField: models.IBaseTarget, index?: number): Promise<models.IError>

Este método tiene las siguientes variables:

  • dataRole: el nombre del rol de datos al que se debe asignar el campo de datos. El parámetro dataRole es equivalente al rol de datos name propiedad. Para recuperar los nombres y roles de datos disponibles, use el método getCapabilities.
  • dataField: campo de datos que se va a agregar al rol de datos. El campo de datos es un objeto de destino, que puede ser una columna, columna con agregación, medida, jerarquía o jerarquía con agregación. Para obtener más información sobre los destinos, consulte Uso de destinos para seleccionar qué campo de datos actuar en.
  • index (opcional): índice en el que se debe agregar el campo de datos. El comportamiento predeterminado es para que el campo se agregue en último lugar.

Por ejemplo:

const dataField = {
  $schema: "http://powerbi.com/product/schema#column",
  table: "Store",
  column: "Name"
};

await visual.addDataField('Category', dataField);

Obtención de campos de datos

Para obtener una lista de los campos de datos definidos en un rol de datos, llame al método getDataFields del objeto visual.

getDataFields(dataRole: string): Promise<models.IBaseTarget>

Este método tiene la variable dataRole, que es el nombre del rol de datos del que se van a recuperar los campos de datos.

Por ejemplo:

let dataField = await visual.getDataFields('Category');

Eliminación de campos de datos

Para quitar un campo de datos que se aplica en un rol de datos, llame al método removeDataField del objeto visual.

removeDataField(dataRole: string, index: number): Promise<models.IError>

Este método tiene los parámetros siguientes:

  • dataRole: el nombre del rol de datos de destino al que está asociado el campo de datos.
  • index: índice del campo de datos que se va a eliminar.

Por ejemplo:

await visual.removeDataField('Category', 2);

Para obtener el índice del campo de datos, puede usar el índice del destino en la matriz de resultados de getDataFields.