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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Filtrar una medida por un problema de medida

Hola

Estoy tratando de filtrar una medida con otra medida, no estoy seguro de por qué estoy obteniendo un resultado en blanco

Esta es la medida objetivo, es calcular una medida ya establecida y filtrar mi mes calendario para ser igual a una medida que actualmente es igual a "12".

DemandPrPrMth = CALCULATE([Demand Sls $],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= 'Fiscal Calendar'[PriorPriorMthNumber]))

La salida es En blanco, sin resultado.

Aquí está el resultado del "PriorPriorMthNumber", que es una medida que trae de vuelta hace 2 meses en nuestro Calendario Fiscal:

PriorPriorMthNumber = if([PriorMthNumber]-1=0, CALCULATE(MAX('Fiscal Calendar'[FiscalPeriodMonth]),FILTER('TY/LY Map','TY/LY Map'[Year Type]="LY")),[PriorMthNumber]-1)

Esto está diciendo si el mes pasado - 1 = 0 (no válido), a continuación, traer de vuelta el mes máximo del año pasado (que es 12 en este momento).

cassidy_0-1617144300492.png

Si adapto la medida para simplemente filtrar a "12", obtendo el resultado previsto.

DemandPrPrMth = CALCULATE([Demand Sls $],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= 12))

Si adapto la medida al filtro a una medida de prueba que es " = 12 ", que también obtiene el resultado previsto.

12 = 12

Así que "12" es un valor válido al que filtrar, y mi medida original de PriorPriorMthNumber genera "12", pero estoy obteniendo un resultado en blanco cuando lo uso como filtro.

¿Alguna idea? Gracias

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Pude hacer que esto funcionara definiendo mi medida PriorPriorMthNumber como variable.

Así que en lugar de

DemandPrPrMth = CALCULATE([Demand Sls $],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= 'Fiscal Calendar'[PriorPriorMthNumber]))

Lo estoy haciendo

Demand Sls $ PrPr Mth = VAR PrPrMth = [PriorPriorMthNumber]
RETURN
CALCULATE([Demand Sls $ TY],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= PrPrMth)))

Métricas ligeramente diferentes entre los dos, pero el punto es que definí la medida que quería filtrar primero como variable y luego se filtró en la variable. No tengo idea de por qué, supongo que la variable tiene el formato de una manera que la consulta entiende.

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Pude hacer que esto funcionara definiendo mi medida PriorPriorMthNumber como variable.

Así que en lugar de

DemandPrPrMth = CALCULATE([Demand Sls $],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= 'Fiscal Calendar'[PriorPriorMthNumber]))

Lo estoy haciendo

Demand Sls $ PrPr Mth = VAR PrPrMth = [PriorPriorMthNumber]
RETURN
CALCULATE([Demand Sls $ TY],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= PrPrMth)))

Métricas ligeramente diferentes entre los dos, pero el punto es que definí la medida que quería filtrar primero como variable y luego se filtró en la variable. No tengo idea de por qué, supongo que la variable tiene el formato de una manera que la consulta entiende.

Syndicate_Admin
Administrator
Administrator

He llegado a una solución alternativa lanzando una instrucción If donde comprueba si PriorPriorMthNumber es "12", y si es así filtrar el calendario a "12". Todavía no entiendo por qué no puedo simplemente filtrar con PriorPriorMthNumber directamente viendo como obviamente es igual a "12".

DemandPrPrMth = if([PriorPriorMthNumber]=12,CALCULATE([Demand Sls $ LY],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= 12)),CALCULATE([Demand Sls $ TY],FILTER('Fiscal Calendar','Fiscal Calendar'[FiscalPeriodMonth]= [PriorPriorMthNumber])))

No @cassidy

¿En qué visual coloca la medida [DemandPrPrMth]? Tal vez hay algún campo en el visual que proporciona un contexto para influir en la medida. Puede agregar [PriorPriorMthNumber] Medida en el mismo objeto visual para probar si su resultado sigue siendo 12 o en blanco cuando está en el mismo contexto. No elimine otros campos si los hay.

saludos
Equipo de Apoyo a la Comunidad _ Jing
Si esta publicación ayuda, por favor acéptela como solución para ayudar a otros miembros a encontrarlo.

Helpful resources

Announcements
PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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