Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En el modo de edición de Power BI, el panel campos de muestra todas las tablas del modelo con todos sus campos de datos. Puede ordenar, filtrar o segmentar datos en los campos de datos para afectar a cómo se muestran los datos en informes, páginas o objetos visuales.
Un filtro de análisis incrustado de Power BI, segmentación o ordenación requiere un objeto de destino que especifique el campo de datos en el que actuar. Use ITarget para proporcionar el campo de datos de destino cuando:
- Construcción de un filtro con la interfaz de IFilter de
- Establecer una segmentación de datos en el de carga
- Ordenar un visual
- Agregar un campo de datos a un de visualización
Tipos de destino
Un campo de datos puede ser una columna, un nivel de jerarquía, una columna agregada o un nivel de jerarquía, una medida calculada o un cálculo visual. Los destinos siguientes implementan IBaseTarget la interfaz:
IColumnTargetIHierarchyLevelTargetIMeasureTargetIColumnAggrTargetIHierarchyLevelAggrTargetIVisualCalculationTarget
IVisualCalculationTarget solo se puede agregar a objetos visuales de destino.
IHierarchyLevelAggrTarget, IColumnAggrTarget, IMeasureTargety IVisualCalculationTarget se pueden agregar (mediante addDataField API) como campos ocultos.
Cálculo visual
Use IVisualCalculationTarget para agregar un cálculo visual a un objeto visual de destino con algún DAX. El nombre del cálculo visual siempre será único. Si intenta agregar un cálculo visual con un nombre existente, el sistema garantizará que el nombre sea único.
target: {
$schema: "http://powerbi.com/product/schema#visualCalculation",
name: "<visual calculation name>",
daxExpression: "<dax>",
hidden?: boolean
}
Columna
Use IColumnTarget para establecer como destino la columna especificada en una tabla:
target: {
$schema: "http://powerbi.com/product/schema#column",
table: "<table name>",
column: "<column name>"
}
Nivel de jerarquía
Use IHierarchyLevelTarget para establecer como destino el nivel de jerarquía especificado dentro de una jerarquía de una tabla:
target: {
$schema: "http://powerbi.com/product/schema#hierarchyLevel",
table: "<table name>",
hierarchy: "<hierarchy name>",
hierarchyLevel: "<hierarchy level name>"
}
Medir
Use IMeasureTarget para establecer como destino la medida especificada en una tabla. El valor de percentOfGrandTotal se establece en true si el destino está enlazado a un objeto visual y sus valores se muestran como un porcentaje del total general.
target: {
$schema: "http://powerbi.com/product/schema#measure",
table: "<table name>",
measure: "<measure name>",
percentOfGrandTotal?: boolean,
hidden?: boolean
}
Funciones de agregación
Puede especificar funciones de agregación para destinos de nivel de columna y jerarquía. La variable aggregationFunction es opcional y, si no la proporciona, los campos de datos usan la función de agregación de Sum predeterminada. Otros valores admitidos para aggregationFunction son:
AvgDoNotSummarizeCountCountNonNullMaxMedianMinStandardDeviationVariance
Columna agregada
Use IColumnAggrTarget para especificar una función de agregación en la columna especificada de una tabla. El valor de 'percentOfGrandTotal' se establece en true si el destino está enlazado a un objeto visual y sus valores se muestran como un porcentaje del total general.
target: {
$schema: "http://powerbi.com/product/schema#columnAggr",
table: "<table name>",
column: "<column name>",
aggregationFunction: "<aggregation function>", // Optional, default is Sum.
percentOfGrandTotal?: boolean,
hidden?: boolean
}
Nivel de jerarquía agregado
Use IHierarchyLevelAggrTarget para especificar una función de agregación en el nivel de jerarquía especificado dentro de una jerarquía de una tabla. El valor de 'percentOfGrandTotal' se establece en true si el destino está enlazado a un objeto visual y sus valores se muestran como un porcentaje del total general.
target: {
$schema: "http://powerbi.com/product/schema#hierarchyLevelAggr",
table: "<table name>",
hierarchy: "<hierarchy name>",
hierarchyLevel: "<hierarchy level name>",
aggregationFunction: "<aggregation function>", // Optional, default is Sum.
percentOfGrandTotal?: boolean,
hidden?: boolean
}
Ejemplos
En los ejemplos de código siguientes se usa el objeto target para especificar el campo de datos en el que debe actuar un filtro.
Ejemplo de destino de columna
En el ejemplo de código siguiente se aplica un filtro básico con un destino de columna a un informe. El código actúa en la columna región de
let filter = {
$schema: "http://powerbi.com/product/schema#basic",
target: {
$schema: "http://powerbi.com/product/schema#column",
table: "Geo",
column: "Region"
},
operator: "In",
values: ["West"]
};
Ejemplo de destino de nivel de jerarquía
En el ejemplo de código siguiente se aplica un filtro básico con un destino de nivel de jerarquía a un informe. El código actúa en el nivel mes de
let filter = {
$schema: "http://powerbi.com/product/schema#basic",
target: {
$schema: "http://powerbi.com/product/schema#hierarchyLevel",
table: "Sales",
hierarchy: "OrderDate",
hierarchyLevel: "Month"
},
operator: "In",
values: ["West"]
};
Ejemplo de destino de medida
En el ejemplo de código siguiente se aplica un filtro avanzado con un destino de medida a un objeto visual. El código actúa en la medida Volumen total de categorías en la tabla SalesFact, por lo que solo aparece cuando el valor no está en blanco.
let filter = {
$schema: "http://powerbi.com/product/schema#advanced",
target: {
$schema: "http://powerbi.com/product/schema#measure",
table: "SalesFact",
measure: "Total Category Volume"
},
filterType: models.FilterType.AdvancedFilter,
logicalOperator: "And",
conditions: [{
operator: "IsNotBlank"
}]
}
Ejemplo de destino de columna agregada
El código siguiente define un destino de agregación de columnas que es la suma de los valores de la columna Store de
let columnAggregation = {
$schema: "http://powerbi.com/product/schema#columnAggr",
table: "Store",
column: "Sales",
aggregationFunction: "Sum"
};