2015-10-25 24 views
0

我期待創建一個YTD總數,但是,年終日期需要根據另一列中的值進行更改。換句話說,第1組的會計年度將從11月1日(11月1日)至10月31日(10月31日),而第2組會計年度將從7月1日(7月1日)至6月30日(7月30日)。我需要做的是在計算會計年度時,我需要根據訂單項所屬的組來計算當年的計算結果。因此,2015年的第1組會在2014-11-01至2015-10-31之間而2015年的第二組將是2014-07-01至2014-06-30。請在這裏看到一個示例表(請注意,我有,以創建日期函數與此相關的一個日期表):DAX TOTALYTD在兩個不同的cadandars

  **Table 1** 
------------------------- 
Group | Date | Qty 
    1 | 2014-10-01 | 1 
    1 | 2014-11-01 | 1 
    1 | 2015-01-01 | 2 
    1 | 2015-05-01 | 1 
    1 | 2015-10-31 | 2 
    1 | 2015-11-01 | 1 
    2 | 2014-06-01 | 1 
    2 | 2014-07-01 | 1 
    2 | 2014-12-25 | 2 
    2 | 2015-01-01 | 1 
    2 | 2015-06-30 | 2 
    2 | 2015-07-01 | 1 

有了這一信息,我需要創建一個YTDTOTAL功能,將根據訂單項所屬的組動態更改參數。我想過使用if語句,但意識到它不適用於度量。事情是這樣的:

Total $ Sold YTD = TOTALYTD([TOTAL $ Sold],directSQLDateTable[date],ALL(directSQLDateTable[date]), IIF([GROUP = "A","10/31","6/30")) 

最後,我想創建一個類似於此的輸出(「A組YTD」和「B組YTD」欄目確實是不需要的,只是想補充證明我的例子):

Year-Month | Total_Qty | Group A YTD | Group B YTD 
-------------------------------------------------- 
    2014-07 | 1  |  0  |  1 
    2014-08 | 1  |  0  |  1 
    2014-09 | 1  |  0  |  1 
    2014-10 | 2  |  1  |  1 
    2014-11 | 2  |  1  |  1 
    2014-12 | 4  |  1  |  3 
    2015-01 | 7  |  3  |  4 
    2015-02 | 7  |  3  |  4 
    2015-03 | 7  |  3  |  4 
    2015-04 | 7  |  3  |  4 
    2015-05 | 8  |  4  |  4 
    2015-06 | 10  |  4  |  6 
    2015-07 | 5  |  4  |  1 
    2015-08 | 5  |  4  |  1 
    2015-09 | 5  |  4  |  1 
    2015-10 | 7  |  6  |  1 
    2015-11 | 2  |  1  |  1 
    2015-12 | 2  |  1  |  1 

如果您有任何問題,請讓我知道。我提前道歉,如果我沒有做這麼好的工作來解釋這一點,或者我已經遺漏了一些信息。

感謝您提前給予任何建議/幫助!你們在這裏是最棒的!

回答

1

TOTALYTD() includes everything you need for this.

TotalQty:= SUM(Table1[Qty]) 

QtyYTDGroup1:= 
TOTALYTD(
    [TotalQty] 
    ,DimDate[Date] 
    ,Table1[Group] = 1 
    ,"10/31" 
) 

QtyYTDGroup2:= 
TOTALYTD(
    [TotalQty] 
    ,DimDate[Date] 
    ,Table1[Group] = 2 
    ,"6/30" 
) 

TotalQtyYTD:= [QtyYTDGroup1] + [QtyYTDGroup2] 

我可以提供一個詳細的解釋,如果你想要的,但我覺得函數的定義幾乎涵蓋它。