擴充套件資料模型
本章將學習如何擴充套件在前面章節中建立的資料模型。擴充套件資料模型包括:
- 新增表
- 在現有表中新增計算列
- 在現有表中建立度量值
其中,建立度量值至關重要,因為它涉及在資料模型中提供新的資料洞察,這將使使用資料模型的人員避免返工,並節省分析資料和決策的時間。
由於損益分析涉及使用時間段,並且您將使用DAX時間智慧函式,因此您需要在資料模型中使用日期表。
如果您不熟悉日期表,請閱讀“理解日期表”一章。
您可以按如下方式擴充套件資料模型:
要建立資料表(即財務資料表)和日期表之間的關係,您需要在財務資料表中建立一個計算列“日期”。
要執行不同型別的計算,您需要在資料表 - 財務資料和查詢表 - 賬戶和地理位置之間建立關係。
您需要建立各種度量值,以幫助您執行多項計算並進行必要的分析。
這些步驟實質上構成了使用資料模型進行損益分析的資料建模步驟。但是,這是您想要使用Power Pivot資料模型執行任何型別的資料分析的步驟順序。
此外,您將在後續章節中學習如何建立度量值以及如何在Power Pivot表中使用它們。這將使您充分理解使用DAX進行資料建模以及使用Power Pivot表進行資料分析。
向資料模型新增日期表
為跨越財政年度的時間段建立一個日期表,方法如下:
在一個新的Excel工作表中建立一個只有一個列的表,標題為“日期”,包含從2011年7月1日至2018年6月30日的連續日期。
從Excel複製該表並將其貼上到Power Pivot視窗中。這將在Power Pivot資料模型中建立一個新表。
將表命名為“日期”。
確保日期表中的“日期”列的資料型別為日期(DateTime)。
接下來,您需要向日期表新增計算列 - 財政年度、財政季度、財政月份和月份,方法如下:
財政年度
假設財政年度結束日期為6月30日。那麼,一個財政年度從7月1日到6月30日。例如,2011年7月1日(7/1/2011)到2012年6月30日(6/30/2012)將是2012財政年度。
在日期表中,假設您想將其表示為FY2012。
您需要首先提取日期的財政年度部分,並附加FY。
對於2011年7月到2011年12月的日期,財政年度為1+2011。
對於2012年1月到2012年6月的日期,財政年度為0+2012。
為了概括,如果財務年度結束月份為FYE,請執行以下操作:
整數部分(((月份 – 1)/FYE) + 年份)
接下來,取最右邊的四個字元以獲得財政年度。
在DAX中,您可以將其表示為:
RIGHT(INT((MONTH('Date'[Date])-1)/'Date'[FYE])+YEAR('Date'[Date]),4)
使用DAX公式在日期表中新增計算列“財政年度”:
="FY"&RIGHT(INT((MONTH('Date'[Date])-1)/'Date'[FYE])+YEAR('Date'[Date]),4)
財政季度
如果FYE代表財務年度結束月份,則財務季度可獲得為
整數部分(((月份+FYE-1)/12的餘數) + 3)/3)
在DAX中,您可以將其表示為:
INT((MOD(MONTH('Date'[Date])+'Date'[FYE]-1,12)+3)/3)
使用DAX公式在日期表中新增計算列“財政季度”:
='Date'[FiscalYear]&"-Q"&FORMAT( INT((MOD(MONTH('Date'[Date]) + 'Date'[FYE]-1,12) + 3)/3), "0")
財政月份
如果FYE代表財務年度結束月份,則財務月份可獲得為
((月份+FYE-1)/12的餘數) + 1
在DAX中,您可以將其表示為:
MOD(MONTH('Date'[Date])+'Date'[FYE]-1,12)+1
使用DAX公式在日期表中新增計算列“財政月份”:
='Date'[Fiscal Year]&"-P" & FORMAT(MOD(MONTH([Date])+[FYE]-1,12)+1,"00")
月份
最後,新增表示財務年度中月份編號的計算列“月份”,方法如下:
=FORMAT(MOD(MONTH([Date])+[FYE]-1,12)+1,"00") & "-" & FORMAT([Date],"mmm")
生成的日期表如下面的螢幕截圖所示。
使用“日期”列作為具有唯一值的列,將“日期”表標記為日期表,如下面的螢幕截圖所示。
新增計算列
要建立財務資料表和日期表之間的關係,您需要在財務資料表中有一列日期值。
使用DAX公式在財務資料表中新增計算列“日期”:
= DATEVALUE ('Finance Data'[Fiscal Month])
定義資料模型中表之間的關係
資料模型中包含以下表:
- 資料表 - 財務資料
- 查詢表 - 賬戶和地理位置
- 日期表 - 日期
要定義資料模型中表之間的關係,步驟如下:
在Power Pivot的圖表檢視中檢視這些表。
建立表之間的以下關係:
財務資料表和賬戶表之間使用“賬戶”列的關係。
財務資料表和地理位置表之間使用“利潤中心”列的關係。
財務資料表和日期表之間使用“日期”列的關係。
隱藏客戶端工具中的列
如果資料表中存在任何您不會在任何透視表中用作欄位的列,則可以將它們隱藏在資料模型中。然後,它們將不會在透視表字段列表中可見。
在財務資料表中,您有4列 - 財政月份、日期、賬戶和利潤中心,您不會在任何透視表中將它們用作欄位。因此,您可以將它們隱藏,以便它們不會出現在透視表字段列表中。
在財務資料表中選擇列 - 財政月份、日期、賬戶和利潤中心。
右鍵單擊並選擇下拉列表中的“從客戶端工具中隱藏”。
在表中建立度量值
您已準備好使用資料模型和Power Pivot表使用DAX進行資料建模和分析。
在後續章節中,您將學習如何建立度量值以及如何在Power Pivot表中使用它們。您將在資料表(即財務資料表)中建立所有度量值。
您將在資料表 - 財務資料中使用DAX公式建立度量值,您可以在任意數量的透視表中使用這些度量值進行資料分析。度量值本質上是元資料。在資料表中建立度量值是資料建模的一部分,在Power Pivot表中對它們進行彙總是資料分析的一部分。