Reply
Syndicate_Admin
Administrator
Administrator
Syndicated - Inbound

Pregunta sobre los parámetros de campo y la medida DAX

Source Community: Power BI | Source Author Name: ValeriaBreve

Hola
Estoy usando parámetros de campo en una tabla con columnas agregadas como esta:
Portfolio_Matrix_Field_Choice = {
("Definición 1", NAMEOF('ProjectID_Key'[Definición 1]), 0,"Definición A"),
("Definición 2", NAMEOF('ProjectID_Key'[Definición 2]), 2,"Definición B"),
("Definición 3", NAMEOF('ProjectID_Key'[Definición 3]), 3,"Definición C"),
("Definición 4", NAMEOF('ProjectID_Key'[Definición 4]),1,"Definición D"),
("Definición 5", NAMEOF('ProjectID_Key'[Definición 5]),4,"Definición E"),
("Definición 6", NAMEOF('ProjectID_Key'[Definición 6]), 5,"Definición F"),
("Definición 7", NAMEOF('ProjectID_Key'[Definición 7]),6,"Definición G")
}

Esto está funcionando bien.

La última columna de la tabla de parámetros de campo (denominada Portfolio_Matrix_Field_Choice[Columns]) tiene exactamente los mismos nombres que la tablecolumn que uso para explicar las columnas y medidas de mi informe (Measures_Columns_Definitions[DisplayName]). Por lo tanto, me gustaría recuperar la información sobre la descripción de los campos y mostrarla cuando los usuarios seleccionan un campo en la segmentación de parámetros de campo.

Ahora tengo esta medida:

# Definición de métrica =
CALCULAR(
Máximo(
Measures_Columns_Definitions[Definición]),
TREATAS(VALORES(Portfolio_Matrix_Field_Choice[Columnas]),Measures_Columns_Definitions[DisplayName]
)
)

No entiendo por qué funciona sin problemas solo cuando ambos campos de mi tabla de parámetros de campo se llaman igual que las entradas en Measures_Columns_Definitions[DisplayName], por ejemplo, así
("Definición A", NOMBREDE('ProjectID_Key'[Definición 1]), 0,"Definición A"),

Habría pensado que con TREATAS el sistema solo iba a mirar la correspondencia entre
Portfolio_Matrix_Field_Choice[Columnas]
y
Measures_Columns_Definitions[DisplayName],
¿Por qué las primeras columnas de la tabla P
ortfolio_Matrix_Field_Choice afectando a la medida?

Espero haber sido claro, ¡muchas gracias por su ayuda!
Atentamente
Valeria
2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Source Community: Power BI | Source Author Name: grazitti_sapna
Syndicated - Inbound

Hola @ValeriaBreve,

Tiene razón al pensar que TREATAS solo debe transferir el contexto de filtro de Portfolio_Matrix_Field_Choice[Columns] a Measures_Columns_Definitions[DisplayName]. Sin embargo, el problema surge debido a cómo funcionan los parámetros de campo en Power BI. Esto es lo que está pasando:

Los parámetros de campo de Power BI son tablas especiales que controlan dinámicamente qué columna o medida se muestra en un objeto visual. Al crear un parámetro de campo, Power BI crea una relación interna entre:

  1. La primera columna (nombre descriptivo que se muestra en la segmentación)
  2. La segunda columna (NAMEOF(...)) que representa la referencia de columna real en el conjunto de datos

Aunque la función TREATAS usa Portfolio_Matrix_Field_Choice[Columns], Power BI sigue heredando el filtrado implícito de la primera columna de la tabla de parámetros de campo. Esto significa que cuando los usuarios seleccionan un campo en la segmentación de datos, Power BI filtra automáticamente no solo Portfolio_Matrix_Field_Choice[Columns], sino también la primera columna de la tabla de parámetros.

Si los nombres no coinciden, el filtrado no funciona según lo esperado porque Portfolio_Matrix_Field_Choice[Columns] todavía está influenciado indirectamente por la selección de la primera columna.

Puede intentar a continuación DAX superar esto: -

# Definición de métrica =
CALCULAR(
MAX(Measures_Columns_Definitions[Definición]),
TREATAS(
VALUES(Portfolio_Matrix_Field_Choice[Columnas]),
Measures_Columns_Definitions[NombreVisual]
),
REMOVEFILTERS(Portfolio_Matrix_Field_Choice) -- Elimina los filtros no deseados
)

🌟 ¡Espero que esta solución te ayude a desbloquear tu potencial de Power BI! Si le resultó útil, haga clic en "Marcar como solución" para guiar a otros hacia las respuestas que necesitan.
💡 ¿Te gusta el esfuerzo? ¡Deja caer las felicitaciones! Su agradecimiento alimenta el espíritu comunitario y la innovación.
🎖 Como orgullosos superusuarios y socios de Microsoft, estamos aquí para potenciar su recorrido de datos y a la comunidad de Power BI en general.
🔗 ¿Tienes curiosidad por explorar más? [Descúbrelo aquí].
¡Sigamos construyendo juntos soluciones más inteligentes!


Source Community: Power BI | Source Author Name: ValeriaBreve
Syndicated - Inbound

¡Gracias @grazitti_sapna ! Muy claro y los filtros de eliminación funcionan muy bien. No había pensado en las relaciones internas creadas por los parámetros de campo. ¡Gracias de nuevo!

avatar user

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors (Last Month)
Top Kudoed Authors (Last Month)