在行为类似于 powerBI 中的列计算的度量中使用切片器值的解决方法
Workaround to use slicer values in measures that behave like column calculations in powerBI
我正在尝试使用切片器值作为计算列或类似的东西
我看过这个post
https://community.powerbi.com/t5/Desktop/Slicer-Value-in-Column-Formula/m-p/214892#M95071
但不确定如何处理以下案例
我有来自一种 SCD 的寄存器,其中包含 ValidStartDate 和 ValidEndDate
用户应该能够设置 2 个切片器:AnalysisStartDate 和 AnalysisEndDate
例如,我应该能够根据这两个日期对寄存器进行计数
有多少寄存器在AnalysisStartDate和AnalysisEndDate之间有ValidStartDate?
有多少个寄存器在 AnalysisStartDate 和 AnalysisEndDate 之间有 ValidEndDate?
感谢任何帮助
看来我已经达到了我想要的效果
首先,您需要一个要在计算中使用的列的 "measure" 版本,例如仅使用 FIRSTDATE()
-- 我认为在同一个 [=29] 中创建度量非常重要=]
使用类似的方法在度量中捕获切片器值:
如果它有一个值,则获取该值,否则使用第一个值(或任何你想要的)
x Analisis Inicio = IF(HASONEVALUE(TD_FECHAS_INICIO[DT_ANALISIS_INICIO]);VALUES(TD_FECHAS_INICIO[DT_ANALISIS_INICIO]);FIRSTDATE(TD_FECHAS_INICIO[DT_ANALISIS_INICIO].[Date]))
现在您可以开始创建比较两者的度量
x SW_ES_ALTA =
IF(
AND([x Inicio Measure] >= [x Analisis Inicio]
; [x Inicio Measure] <= [x Analisis Fin])
;"SI"
;"NO"
)
甚至是最后一次测量的计数
x HC_ES_ALTA = COUNTAX(FILTER(ZZ_FLAGS_INMUEBLE;[x SW_ES_ALTA]="SI");ZZ_FLAGS_INMUEBLE[ID_INMUEBLE])
这不是最简单的方法,您可能可以将这些措施中的几项放在一个单一的措施中,但如果有效,那就有效...
我正在尝试使用切片器值作为计算列或类似的东西
我看过这个post
https://community.powerbi.com/t5/Desktop/Slicer-Value-in-Column-Formula/m-p/214892#M95071
但不确定如何处理以下案例
我有来自一种 SCD 的寄存器,其中包含 ValidStartDate 和 ValidEndDate
用户应该能够设置 2 个切片器:AnalysisStartDate 和 AnalysisEndDate
例如,我应该能够根据这两个日期对寄存器进行计数
有多少寄存器在AnalysisStartDate和AnalysisEndDate之间有ValidStartDate?
有多少个寄存器在 AnalysisStartDate 和 AnalysisEndDate 之间有 ValidEndDate?
感谢任何帮助
看来我已经达到了我想要的效果
首先,您需要一个要在计算中使用的列的 "measure" 版本,例如仅使用 FIRSTDATE()
-- 我认为在同一个 [=29] 中创建度量非常重要=]
使用类似的方法在度量中捕获切片器值:
如果它有一个值,则获取该值,否则使用第一个值(或任何你想要的)
x Analisis Inicio = IF(HASONEVALUE(TD_FECHAS_INICIO[DT_ANALISIS_INICIO]);VALUES(TD_FECHAS_INICIO[DT_ANALISIS_INICIO]);FIRSTDATE(TD_FECHAS_INICIO[DT_ANALISIS_INICIO].[Date]))
现在您可以开始创建比较两者的度量
x SW_ES_ALTA =
IF(
AND([x Inicio Measure] >= [x Analisis Inicio]
; [x Inicio Measure] <= [x Analisis Fin])
;"SI"
;"NO"
)
甚至是最后一次测量的计数
x HC_ES_ALTA = COUNTAX(FILTER(ZZ_FLAGS_INMUEBLE;[x SW_ES_ALTA]="SI");ZZ_FLAGS_INMUEBLE[ID_INMUEBLE])
这不是最简单的方法,您可能可以将这些措施中的几项放在一个单一的措施中,但如果有效,那就有效...