相关文章推荐
豪气的冰淇淋  ·  ruby - 解决 Mac OS ...·  1 年前    · 
乖乖的鸵鸟  ·  javascript - ...·  1 年前    · 
帅气的火柴  ·  android material ...·  1 年前    · 

本文的目標是在 Power BI Desktop 中開發匯入或複合模型的資料模型工具。 它會介紹並描述 [ 自動日期/時間] 選項。

自動日期/時間是 Power BI Desktop 中的資料載入選項。 此選項的目的是要根據載入模型之日期資料行來支援方便的時間智慧報告。 具體而言,它允許報表作者使用您的資料模型,使用行事歷時間週期(年、季、月和日)來篩選、分組和向下切入。 重要的是,您不需要明確開發這些時間智慧功能。

啟用此選項時,Power BI Desktop 會為每個日期資料行建立隱藏的自動日期/時間資料表,前提是下列所有條件都成立:

  • 資料表儲存模式為匯入
  • 資料行資料類型為日期或日期/時間
  • 資料行不是模型關聯性的「多」端
  • 每個自動日期/時間資料表實際上是一個 計算資料表 ,可使用 DAX CALENDAR 函式來產生資料列。 每個資料表也包含六個計算結果欄:Day、MonthNo Month QuarterNo Quarter Year

    Power BI 會根據 模型語言 翻譯和格式化資料行名稱和值。 例如,如果模型是使用英文建立的,它仍會以英文顯示月份名稱等等,即使使用韓文用戶端檢視也一樣。

    Power BI Desktop 也會建立自動日期/時間資料表的 Date 資料行與模型日期資料行之間的關聯性。

    自動日期/時間資料表包含包含模型日期資料行中所儲存之所有日期值的完整行事歷年份。 例如,如果日期資料行中的最早值為 2016 年 3 月 20 日,而最新的值為 2019 年 10 月 23 日,則資料表將包含 1,461 個數據列。 它代表 2016 至 2019 年四個日曆年度中每個日期的一個資料列。 當 Power BI 重新整理模型時,也會重新整理每個自動日期/時間資料表。 如此一來,模型一律會包含包含日期資料行值的日期。

    如果可以看到自動日期/時間資料表的資料列,其看起來會類似下列範例。 此範例顯示從 2019 年 1 月 1 日到 2019 年 1 月 10 日,有 10 個數據列的七個數據行。

    顯示七個數據行:Date、Day、MonthNo、Month、QuarterNo、Quarter 和 Year。 顯示 10 個數據列,描述從 2019 年 1 月 1 日到 2019 年 1 月 10 日為止的日期。

    自動日期/時間資料表會永久隱藏,即使是來自模型工具也一樣。 它們不會出現在 [ 欄位 ] 窗格或 [模型] 檢視圖中,而且其資料列不會出現在 [資料] 檢視中。 此外,DAX 運算式無法直接參考資料表及其資料行。

    此外,在使用 [在 Excel 中進行分析] 或使用非 Power BI 報表設計工具連線到模型時,就無法使用它們。

    資料表也會定義階層,提供視覺效果到年份、季、月和日層級的向下切入路徑。

    如果可以在 [模型] 檢視圖中看到自動日期/時間資料表,則看起來如下表,其中已醒目提示相關資料行:

    資料表會根據 Sales 資料表 OrderDate 資料行和 LocalDateTime 資料表 Date 資料行來關聯。 LocalDateTime 定義七個數據行:Date、Day、Month、MonthNo、Quarter、QuarterNo、Year 和單一階層。 此階層名為日期階層,由四個層級組成:Year、Quarter、Month 和 Day。

    使用自動日期/時間

    當日期資料行的自動日期/時間資料表存在時,報表作者將不會在 [欄位 ] 窗格中找到該資料行做為欄位 。 相反地,他們會尋找具有日期資料行名稱的可展開物件。 您可以輕鬆地識別它,因為它裝飾著行事曆圖示。 當報表作者展開行事曆物件時,他們會找到名為 Date Hierarchy 的 階層 。 展開階層之後,他們會找到四個層級: Year Quarter Month Day

    它包含 OrderDate 欄位,裝飾有行事曆圖示。 隨即展開,並包含名為 Date Hierarchy 的階層。 它也會展開,並包含四個層級:Year、Quarter、Month 和 Day。

    自動產生的日期/時間階層可用來以與一般階層完全相同的方式來設定視覺效果。 您可以使用整個 日期階層 階層或階層的特定層級來設定視覺效果。

    不過,一般階層不支援一個新增的功能。 當自動日期/時間階層或階層中的層級新增至視覺效果時,報表作者可以使用階層或日期資料行來切換。 對於某些視覺效果而言,此方法對某些視覺效果而言是合理的,因為它們只需要日期資料行,而不是階層及其層級。 其一開始是設定視覺效果欄位(以滑鼠右鍵按一下視覺效果欄位,或選取向下箭號),然後使用操作功能表在日期資料行或日期階層之間切換。

    開啟的操作功能表會顯示兩個選項,允許切換使用 OrderDate 資料行或日期階層。

    最後,以 DAX 撰寫的模型計算可以直接參考日期資料行 ,或間接 參考隱藏的自動日期/時間資料表資料行

    以 Power BI Desktop 撰寫的公式可以以一般方式參考日期資料行。 不過,必須使用特殊的擴充語法來參考自動日期/時間資料表資料行。 首先參考日期資料行,然後依句號 (..) 追蹤它。 然後,公式列自動完成可讓您從自動日期/時間資料表中選取資料行。

    到目前為止,公式會讀取 Date Count = COUNT(Sales[OrderDate]。 和自動完成清單會顯示隱藏的自動日期/時間資料表中的所有七個數據行。 這些資料行包括:Date、Day、Month、MonthNo、Quarter、QuarterNo 和 Year。

    在 Power BI Desktop 中,有效的量值運算式可以讀取:

    Date Count = COUNT(Sales[OrderDate].[Date])
    

    雖然此量值運算式在 Power BI Desktop 中有效,但不是正確的 DAX 語法。 在內部,Power BI Desktop 會轉置運算式,以參考 true (隱藏) 自動日期/時間資料表資料行。

    設定自動日期/時間選項

    自動日期/時間可以 全域 設定或目前檔案 全域選項適用于新的 Power BI Desktop 檔案,而且可以隨時開啟或關閉。 針對新的 Power BI Desktop 安裝,這兩個選項預設為開啟。

    目前檔案選項也可以隨時開啟或關閉。 開啟時,會建立自動日期/時間資料表。 關閉時,會從模型中移除任何自動日期/時間資料表。

    當您關閉目前的檔案選項時,請小心,因為這將會移除自動日期/時間資料表。 請務必修正任何已設定為使用這些篩選準則的中斷報表篩選或視覺效果。

    在 Power BI Desktop 中,您可以選取 [ 檔案 > 選項和設定 > 選項 ],然後選取 [全域 ] 或 [ 目前檔案] 頁面。 在任一頁面上,選項存在於 [時間智慧 ] 區段中。

    已選取全域群組的 [資料載入] 頁面。 在 [時間智慧] 區段中,會核取 [新檔案的自動日期/時間] 選項。

    如需本文的詳細資訊,請參閱下列資源:

  • Power BI Desktop 中的自動日期/時間指引
  • 在 Power BI Desktop 中建立日期資料表
  • 在 Power BI Desktop 中設定及使用日期資料表
  • 有任何問題嗎? 詢問Power BI 社群
  • 有任何建議嗎? 參與改善 Power BI 的想法
  •