Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
BalaKrish
Helper I
Helper I

La medida calculada en la columna calculada no funciona

Queridos todos,

Estoy usando la consulta directa en Power BI.

Quería crear una segmentación de datos con valores personalizados y cambiar los valores de columna en la tabla en función de la selección.

He creado tablas con los siguientes valores,

Tengo tabla db que tiene puntuaciones para cada asignatura:

Nombre de la tabla : Puntuación

Columna : Mayor 1 Mayor 2 Principales 3 Puntuaciones

Matemáticas Matemáticas -Estadísticas Matemáticas - Estadísticas - Probabilidad 100

Matemáticas Matemáticas -Estadísticas Matemáticas - Estadísticas - Regresión 500

Biología - Biología de la Anatomía - Anatamy- Neurología 200

Biología - Biología de la Anatomía - Anatamy - DigestiveSystem 800

Ciencia de la Ciencia - Ciencias de la Física - Física - AtomicStudy 300

Ciencia de la Ciencia - Ciencias de la Física - Física - Gravedad 1000

Necesito mostrar en una tabla visual : Puntuación mayor

Ciencia 1300

Al tener un filtro en Mayor:

Nombre de la tabla : Asuntos

Nombre de columna : Mayor

Valores : Mayor 1 , Mayor 2 , Mayor 3

Creé una medida calculada ("SelectedMajor") : SelectedValue[Major]

Entonces utilicé la medida para crear una columna calculada:

IF(Score[SelectedMajor]-"Major 1" , Score[Major1] , if(Score[SelectedMajor]"Major 2" , Score[Major2] , Score[Major3]))

No está funcionando. Se muestra sólo el Mayor 3...

¿Qué puede estar mal en mi enfoque? alguna sugerencia?

Gracias de antemano

6 REPLIES 6
v-juanli-msft
Community Support
Community Support

Hola @BalaKrish

Cree tres consultas en la consulta de potencia y, a continuación, anexelas en una consulta, cierre &&aplicar,

agregar columnas de la consulta de anexar en dos segmentaciones de datos

crear una medida con DAX, a continuación, agregue "Major" y [Measure] inyto a una tabla.

Capture8.JPGCapture9.JPGCapture10.JPG

query1

let
    Source = Table.SelectColumns(#"Sheet1$",{"Major1"}),
    #"Removed Duplicates" = Table.Distinct(Source),
    #"Added Custom" = Table.AddColumn(#"Removed Duplicates", "Cate", each "Major1"),
    #"Renamed Columns" = Table.RenameColumns(#"Added Custom",{{"Major1", "Major"}})
in
    #"Renamed Columns"

query2

let
    Source = Table.SelectColumns(#"Sheet1$",{"Major2"}),
    #"Removed Duplicates" = Table.Distinct(Source),
    #"Added Custom" = Table.AddColumn(#"Removed Duplicates", "Cate", each "Major2"),
    #"Renamed Columns" = Table.RenameColumns(#"Added Custom",{{"Major2", "Major"}})
in
    #"Renamed Columns"

query3

let
    Source = Table.SelectColumns(#"Sheet1$",{"Major3"}),
    #"Removed Duplicates" = Table.Distinct(Source),
    #"Added Custom" = Table.AddColumn(#"Removed Duplicates", "Cate", each "Major3"),
    #"Renamed Columns" = Table.RenameColumns(#"Added Custom",{{"Major3", "Major"}})
in
    #"Renamed Columns"
Measure =
VAR s1 =
    SELECTEDVALUE ( Append1[Cate] )
VAR s2 =
    SELECTEDVALUE ( Append1[Major] )
RETURN
    SWITCH (
        s1,
        "Major1", CALCULATE (
            SUM ( 'Sheet1$'[Scores] ),
            FILTER ( 'Sheet1$', 'Sheet1$'[Major1] = s2 )
        ),
        "Major2", CALCULATE (
            SUM ( 'Sheet1$'[Scores] ),
            FILTER ( 'Sheet1$', 'Sheet1$'[Major2] = s2 )
        ),
        "Major3", CALCULATE (
            SUM ( 'Sheet1$'[Scores] ),
            FILTER ( 'Sheet1$', 'Sheet1$'[Major3] = s2 )
        )
    )

descargar mi archivo a continuación:

https://qiuyunus-my.sharepoint.com/:u:/g/personal/admin_qiuyunus_onmicrosoft_com/ETYbmXDBab1Lh6SnL9j...

Saludos
Maggie
Equipo de apoyo a la comunidad _ Maggie Li
Si este post ayuda, entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

v-juanli-msft
Community Support
Community Support

Hola @BalaKrish

Para mostrar columnas dinámicas con DAX, puede crear medidas como las siguientes:

https://dax.tips/2020/01/28/dynamic-columns-based-on-values/

Saludos

Maggie

AntrikshSharma
Community Champion
Community Champion

Parece que está sucediendo debido a la transición de contexto, si ha creado una medida de esa tabla y, a continuación, está utilizando la misma medida para crear una columna calculada, en lugar de que podría crear directamente una columna calculada sin una medida porque una medida ha ocultado CALCULATE alrededor de ella y debido a eso la fila iterada actualmente se utiliza para filtrar la medida.

Gracias por la respuesta Antriksh Sharma !!

Pero SELECTEDVALUE no se acepta en columna calculada.. Necesito obtener el valor del filtro y es posible sólo en medida hasta ahora lo sé. ¿Hay otra forma de hacerlo?

Gracias de antemano!!

De acuerdo, por lo que no puede tomar el filtro de los informes/visuales y insertarlo en las tablas del modelo de datos, una medida se filtra por contexto de filtro, pero en el caso de una tabla el contexto de filtro está vacío, a menos que CALCULATE haga la transición de contexto, en esta etapa probablemente sea bueno ver el modelo de datos una vez para llegar al nervio del problema, puede adjuntar el archivo pbix, si los datos son confidenciales, entonces puede crear una muestra de 10-100.

Querido Antriksh,

Es difícil mostrar el modelo de datos como se supone que no debo hacerlo. ¿Alguna sugerencia para solucionarme? Si puede mencionar algunos punteros para comprobar,voy a comprobar e investigar ..

Gracias de antemano !!

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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