我有一个名为_CumulativeBudget的度量,它具有以下公式:
_CumulativeBudget = CALCULATE(SUM('Sheet1'[2017 Budget]), FILTER(ALLSELECTED('Sheet1'), 'Sheet1'[Imp Month]<=MAX('Sheet1'[Imp Month])))
您可以在下图中看到这一行:
问题是每个条形代表现金流的结束。例如,有一个项目在预算中分配了0.2百万美元,其中包括&#34; Imp Month&#34; (影响月)是三月。但实际上,该团队在今年年初获得了0.2百万美元,可能在1月份花费了大约1/3,在2月份花了1/3,在3月份花了1/3。
因此,如果一个项目有一个Imp月X,我希望累积的衡量标准是1月份1 / X预算的1 / X,2月1 / X等等。
这一点在某种程度上是否相当可行?如果没有,我可能只是用直线近似 - 例如。如果年终数为190万美元,那么预算大约是每个月的1/12。
提前感谢您的帮助,伙计们!
答案 0 :(得分:1)
我从一些看起来像这样的模拟数据开始。
1)我创建了一个月份表。
Months = SELECTCOLUMNS(
FILTER(
CALENDAR(DATE(2017, 1, 1), DATE(2017, 12, 31)),
DAY([Date]) = 1
),
"Month", [Date]
)
2)我创建了一个交叉连接两个表的计算表,并根据将月份与月份表中的月份进行比较将其过滤掉。与此同时,我限制了列,并为每月预算创建了一个新列。
BudgetExpanded = SELECTCOLUMNS(
FILTER(
CROSSJOIN(Sheet1, Months),
YEAR(Sheet1[Imp Month]) = Months[Month].[Year] &&
MONTH(Sheet1[Imp Month]) >= Months[Month].[MonthNo]
),
"Project", Sheet1[Project],
"Imp Month", Months[Month].[Date],
"Monthly Budget", CALCULATE(
MAX(Sheet1[2017 Budget]) / MONTH(MAX(Sheet1[Imp Month])),
FILTER(Sheet1,
Sheet1[Project] = EARLIER(Sheet1[Project])
)
)
)
3)我在表格之间建立了关系。
4)我已将累积度量添加到新表中,并将其更新为每月预算列。
CumulativeBudget = CALCULATE(
SUM(BudgetExpanded[Monthly Budget]),
FILTER(
ALLSELECTED(BudgetExpanded),
BudgetExpanded[Imp Month] <= MAX(BudgetExpanded[Imp Month])
)
)
5)我创建了一个类似于你的组合图表,其原始的2017年预算和新的CumulativeBudget(黑线是新的衡量标准;红线是您原来的衡量标准)。