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

Join us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

fetch Country dinámicamente en el cuadro de texto donde "Sc-measure" es el menor para selected(mon-year) en la segmentación de datos

Hola equipo,

requiremnet : En un cuadro de texto, necesito mostrar dinámicamente el nombre del país, donde el valor "SC" es mínimo para el período seleccionado [mes-año] en la segmentación.

Datos disponibles :
Tengo una tabla de país oscura con una columna de país.
"SC_measure" es una medida que se calcula solo en tiempo de ejecución. El cuadro de países y la medida "SC" no tienen ninguna relación directa o indirecta.
El período es una tabla calculada y [Mes-Año] es una columna calculada que obtiene datos como "Jan-FY24", "Feb-FY24" y así sucesivamente...

He escrito 2 fórmulas DAX.

1. Para obtener el valor mínimo de sc para el período seleccionado

Min_SC =
FUERON Período seleccionado = SELECTEDVALUE(período[Mes-año])
DEVOLUCIÓN
CALCULAR(
BRIBONA('Tabla de medidas',[SC_measure]), period[Month-year] = SelectedPeriod)
/*MINX('Medida',[SC_measure]) --tomando el valor mínimo de sc*/

===============

2. DAX para obtener el nombre del país donde SC es mínimo en función del período seleccionado [mes-año] en la segmentación, y el país no debe estar en blanco o NA

CountryNameWithMinSC =
FUERON Período seleccionado = SELECTEDVALUE(período[Mes-año])
/*VAR MinValue = [Min_SC]*/
FUERON Valor mínimo = CALCULAR([Min_SC], period[Month-year] = SelectedPeriod)
DEVOLUCIÓN
MAXX(
FILTRO(
DimCountry,
NO ISBLANK(DimCountry[país]) && -- Filtrar el país en blanco
CALCULAR(
[Min_SC],
TODOSEXCEPTO(DimCountry, DimCountry[país]),
period[Mes-año] = SelectedPeriod Aplicar filtro para el período seleccionado
) = Valor mínimo
),
DimCountry[país]
) /*Recupera el nombre del país donde el SC es menos*/

Pero mis medidas de DAX anteriores no funcionan cada vez que selecciono un mes y un año dinámicamente en la segmentación. Por favor, ayuda.

Gracias por su ayuda.
1 ACCEPTED SOLUTION

Hola @rajendraongole1

El siguiente DAX funcionó para obtener el país durante un mínimo de sc_measure.

MinimumSCMeasureAcrossCountries =
Países VAR =
RESUMIR(
DimCountry,
DimCountry[país]
)
VAR MinSCMeasure =
MINX(
Países
[SC_Measure]
)
VAR MinSCMeasureUnit =
SELECTCOLUMNS(
FILTRO(
Países
[SC_Measure] = MinSCMeasure
),
"country", DimCountry[país]
)
DEVOLUCIÓN
MinSCMeasureUnit

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hola @Sania-F -Pruebe la siguiente medida de creación para calcular el valor mínimo de SC

Min_SC =
VAR SelectedPeriod = SELECTEDVALUE(period[Mes-año])
DEVOLUCIÓN
CALCULAR(
MINX('Tabla de medidas', [SC_measure]),
period[Mes-año] = SelectedPeriod
)

Cree otra medida para calcular los países correctamente con un mínimo de un valor SC.

CountryNameWithMinSC =
VAR SelectedPeriod = SELECTEDVALUE(period[Mes-año])
VAR MinValue = [Min_SC]
DEVOLUCIÓN
MAXX(
FILTRO(
ADDCOLUMNS(
DimCountry,
"SCValue", CALCULAR(
[SC_measure],
period[Mes-año] = SelectedPeriod
)
),
NOT ISBLANK([SCValue]) &&
[SCValue] = Valor mínimo
),
DimCountry[país]
)

Espero que el enfoque anterior funcione.

¿He respondido a tu pregunta? ¡Marca mi publicación como una solución! ¡Esto ayudará a otros en el foro!
¡Agradezco sus felicitaciones!

Hola @rajendraongole1

Probé el DAX anterior, pero no funciona.

Creo firmemente que hay que arreglar algo con la medida DAX 1, porque el 1er dax no devuelve ningún valor, cuando trato de ver en una tarjeta/tabla qué valor devuelve

Min_SC =
VAR SelectedPeriod = SELECTEDVALUE(period[Mes-año])
DEVOLUCIÓN
CALCULAR(
MINX('Tabla de medidas', [SC_measure]),
period[Mes-año] = SelectedPeriod
)

También traté de eliminar/ignorar si hay valores en blanco mientras se obtiene el valor mínimo de sc, pero aún no funciona. simplemente se devuelve en blanco. cualquier idea de lo que puede estar fallando.

Hola @Sania-F - ¿Puedes probar la siguiente medida para DAX1 Y DAX2?

Lógica modificada mediante treatas Si las tablas no tienen una relación directa, utilice la función para aplicar el contexto de filtro

Min_SC =
VAR SelectedPeriod = SELECTEDVALUE(period[Month-Year])
DEVOLUCIÓN
CALCULAR(
MINX('Tabla de medidas', [SC_measure]),
TREATAS( { SelectedPeriod }, 'Tabla de medidas'[Mes-Año] )
)

Dax2: modificado.

CountryNameWithMinSC =
VAR SelectedPeriod = SELECTEDVALUE(period[Month-Year])
VAR MinValue = [Min_SC]
DEVOLUCIÓN
MAXX(
FILTRO(
CROSSJOIN(DimCountry, 'Tabla de medidas'),
NOT ISBLANK(DimCountry[país]) &&
DimCountry[país] <> "NA" &&
'Tabla de medidas' [Mes-Año] = SelectedPeriod &&
[SC_measure] = Valor mínimo
),
DimCountry[país]
)

Pruébalo arriba y háznoslo saber.

¿He respondido a tu pregunta? ¡Marca mi publicación como una solución! ¡Esto ayudará a otros en el foro!
¡Agradezco sus felicitaciones!

Hola @rajendraongole1

El siguiente DAX funcionó para obtener el país durante un mínimo de sc_measure.

MinimumSCMeasureAcrossCountries =
Países VAR =
RESUMIR(
DimCountry,
DimCountry[país]
)
VAR MinSCMeasure =
MINX(
Países
[SC_Measure]
)
VAR MinSCMeasureUnit =
SELECTCOLUMNS(
FILTRO(
Países
[SC_Measure] = MinSCMeasure
),
"country", DimCountry[país]
)
DEVOLUCIÓN
MinSCMeasureUnit

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

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

June 2025 community update carousel

Fabric Community Update - June 2025

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