DAX 自定义财务周期

DAX Custom Financial Periods

我有一个 SSAS 表格模型,我正在尝试使用 DAX 表达式来计算同比指标。我有一个名为 fact_transaction 的 table 和一个名为 dimdate 的 table,它们与我正在尝试进行的计算相关。 dimdate table 有一个日期键、一个日期字段、一个年份字段、一个月份字段、一个期间字段和一个季度字段。由于需要使用财务期间而不是月份,因此 SAMEPERIODLASTYEAR 不适用于我的计算。

财务周期与一年中的月份不直接对应,长度最多可相差 2 天。有什么方法可以计算这个而不会太复杂吗?在 SQL 查询中,我将使用 [Year] = [YEAR] -1 和 Period = Period(以及关系中使用的各种帐户字段)将其加入自身。不太确定如何在 DAX 中执行此操作。

是的,您应该能够在 DAX 中使用筛选器执行非常相似的操作。如果没有更多细节,很难准确地写出您需要的内容,但也许可以尝试这样的事情:

YoY Metric =
VAR CurrentYear = SELECTEDVALUE(DimDate[Year])
VAR CurrentPeriod = SELECTEDVALUE(DimDate[Period])
RETURN CALCULATE([Expression],
           FILTER(ALL(DimDate),
               DimDate[Year] = CurrentYear - 1 &&
               DimDate[Period] = CurrentPeriod))

编辑

如果SELECTEDVALUE不可用,则定义变量如下:

VAR CurrentYear = IF(HASONEVALUE(DimDate[Year]), VALUES(DimDate[Year]))
VAR CurrentPeriod = IF(HASONEVALUE(DimDate[Period]), VALUES(DimDate[Period]))