2017-03-13 170 views
0

我有一個叫做_CumulativeBudget措施,有以下公式:PowerBI調整累積合計措施

_CumulativeBudget = CALCULATE(SUM('Sheet1'[2017 Budget]), FILTER(ALLSELECTED('Sheet1'), 'Sheet1'[Imp Month]<=MAX('Sheet1'[Imp Month]))) 

,你可以看到,如下圖中的線:

_CumulativeBudget Example

問題在於每個條形圖代表現金流量的結束。例如,有一個項目被分配了0.2億美元的「Imp月」(影響月)爲3月份的預算。但實際上,在年初,球隊獲得了全部$ 0.2M的獎金,並且可能花費了1月份的1/3,2月份的1/3以及3月份的1/3。

因此,如果一個項目有一個月的X月,我想累積的措施,它的1/X的預算在1月,1/X在2月,等。

這是什麼東西,這是相當可行的措施?如果不是的話,我可以用一條直線近似 - 例如。如果年終數字是190萬美元,那麼預算大約是每個月的1/12。

在此先感謝您的幫助!

回答

1

我從一些看起來像這樣的模擬數據開始。

Mock data

1)我創造了月表。

Months = SELECTCOLUMNS(
    FILTER(
     CALENDAR(DATE(2017, 1, 1), DATE(2017, 12, 31)), 
     DAY([Date]) = 1 
    ), 
    "Month", [Date] 
) 

Month Table

2)我創建的crossjoined兩個表和過濾下來基於進出口月份當月起表進行比較,以每月計算表。同時,我限制了各個欄目,併爲每月預算創建了一個新欄目。

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]) 
     ) 
    ) 
) 

Calculated Table

3)我創建的表之間的關係。

Relationships

4)我加了你的累計量的新表和更新它的每月預算列。

CumulativeBudget = CALCULATE(
    SUM(BudgetExpanded[Monthly Budget]), 
    FILTER(
     ALLSELECTED(BudgetExpanded), 
     BudgetExpanded[Imp Month] <= MAX(BudgetExpanded[Imp Month]) 
    ) 
) 

New Measure

5)我創建與你相似與原來的2017財政預算案和新CumulativeBudget(黑線是新措施組合圖,紅線是你原來的措施)。

Visual