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
Syndicate_Admin
Administrator
Administrator

Segmentación personalizada para períodos de tiempo futuros

Hola a todos

Nuevo en Power BI y con dificultades para crear segmentación de datos para filtrar los períodos de tiempo personalizados en el futuro. A continuación se muestran datos de ejemplo.

proyectofuncióncódigomesHoras al mesMeses Diff
A1ApKKAP6/1/2021151
A1ApKKAP7/1/2021152
A1ApKKAP8/1/2021153
A1ApKKAP9/1/2021154
A1Apsoplar6/1/2021101
A1Apsoplar7/1/2021102
A1Apsoplar8/1/2021103
A1Apsoplar9/1/2021104
A1AqKMAQ6/1/202111
A1AqKMAQ7/1/202112
A1AqKMAQ8/1/202113
A1AqKMAQ9/1/202114
A2ApKKAP6/1/2021401
A2ApKKAP7/1/2021402
A2Apsoplar6/1/2021101
A2Apsoplar7/1/2021102
A2AqKMAQ6/1/202111
A2AqKMAQ7/1/202112

Creé tabla de período de tiempo con opciones de segmentación de datos:

Segmentación del período de tiempo
Próximos 2 meses
Todos los meses

A continuación, creó filtro de período de tiempo y se aplicó a mi objeto visual, estableciendo igual a "Y":

Filtro de período de tiempo = IF(
AND(SELECTEDVALUE('Período de tiempo'[Segmentador del período de tiempo])="Próximos 2 meses", SELECTEDVALUE(Data[Months Diff])<=2),"Y",
IF(SELECTEDVALUE('Período de tiempo'[Segmentación del período de tiempo])="Todos los meses","Y","N"))
Al filtrar en "Próximos 2 meses", las horas totales no se filtran correctamente a menos que tenga Mes o Meses Diff en la vista. Necesito poder mostrar totales en un nivel más alto sin incluir Mes y/o Meses Diff. Creo que SELECTEDVALUE es el problema porque no puede determinar un valor a lo largo de varios meses, sin embargo no puedo averiguar lo que debe ser... Creo que necesito usar CALCULATE pero no puedo averiguar la agregación para que funcione para mostrar por proyecto o función o código solamente, a lo largo del período de tiempo seleccionado, ¿puede alguien ayudar por favor?
¡Muchas gracias!
Kelly
1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@kmcferren, creo que deberías intentar medir como este ejemplo

tabla de fechas usada

Medida =
var _max = maxx(allselected('Date'), Fecha[Fecha])
var _min = eomonth(_max,-3)+1
var _sel = 'Período de tiempo'[Segmentación del período de tiempo])
devolución
Switch(True() ,
_sel = ="Próximos 2 meses", calculate(Sum(Table[total hours]), filter('Date', 'Date'[Date] >= Min && 'Date'[Date] <= _max)),
_sel = ="Todos los meses", calcular(Sum(Tabla[horas totales]))
)

o

Medida =
var _max = maxx(allselected('Date'), Fecha[Fecha])
var _min = eomonth(_max,-3)+1
var _sel = 'Período de tiempo'[Segmentación del período de tiempo])
devolución
Switch(True() ,
_sel = ="Próximos 2 meses", calculate(Sum(Table[total hours]), filter(all('Date'), 'Date'[Date] >= Min && ' Date'[Date] <= _max)),
_sel = ="Todos los meses", calcular(Sum(Tabla[horas totales]),all('Date'))
)

si es necesario referir

Necesidad de una tabla de fechas independiente:https://www.youtube.com/watch?v=44fGGmg9fHI

View solution in original post

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

@kmcferren, creo que deberías intentar medir como este ejemplo

tabla de fechas usada

Medida =
var _max = maxx(allselected('Date'), Fecha[Fecha])
var _min = eomonth(_max,-3)+1
var _sel = 'Período de tiempo'[Segmentación del período de tiempo])
devolución
Switch(True() ,
_sel = ="Próximos 2 meses", calculate(Sum(Table[total hours]), filter('Date', 'Date'[Date] >= Min && 'Date'[Date] <= _max)),
_sel = ="Todos los meses", calcular(Sum(Tabla[horas totales]))
)

o

Medida =
var _max = maxx(allselected('Date'), Fecha[Fecha])
var _min = eomonth(_max,-3)+1
var _sel = 'Período de tiempo'[Segmentación del período de tiempo])
devolución
Switch(True() ,
_sel = ="Próximos 2 meses", calculate(Sum(Table[total hours]), filter(all('Date'), 'Date'[Date] >= Min && ' Date'[Date] <= _max)),
_sel = ="Todos los meses", calcular(Sum(Tabla[horas totales]),all('Date'))
)

si es necesario referir

Necesidad de una tabla de fechas independiente:https://www.youtube.com/watch?v=44fGGmg9fHI

@amitchandak

¡Muchas gracias! Pude utilizar la sintaxis de FILTER dentro de CALCULATE que usted sugirió para que esto funcionara:

Horas =

IF('Período de tiempo'[Período de tiempo]="Próximos 2 meses",

calculate(Sum('Data'[Horas]), filter('Data', 'Data'[Months Diff] >= 1 && 'Data'[Months Diff] <= 2)),

(Sum('Data'[Horas])))

¡Gracias de nuevo!

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.