時間序列

這項資訊適用於工作簿和傳統儀表板。

時間序列函數或篩選函數?

時間序列函數 AgoTodate 提供了一種建立度量以計算 year-ago、year-to-date 等的簡易方式,而且此方法適用於業務使用者報表。只不過,這些函數會產生複雜的查詢,對效能會有很大的負擔。此外,每次在報表中使用這些中的其中一個函數時,會耗用更多資料庫資源產生額外的子查詢。

在傳統儀表板中,您通常可使用基礎度量搭配 Filter 函數來篩選適當的期間,這與使用時間序列函數產生的結果相同。此方法對業務使用者報表可能太過複雜,但非常適合 IT 團隊預先定義的儀表板。使用此方法所產生的實體 SQL 更加簡單且更有效率,而且不需要額外的子查詢。這代表 SQL 查詢的速度更快且使用的資料庫資源更少,可降低整體資料庫 CPU 使用率和 IO 數。

以下是在相同報表中使用基礎度量和月份 Ago 度量產生的實體查詢範例。產生以下兩個查詢:

以下為 GUID-37245A7E-00E9-4071-9627-1A5BAED91311-default.jpg 的說明
.jpg

以下是使用 Filter 函數產生的 SQL。產生更為簡單的單一查詢:

以下為 GUID-F1D33998-F8D4-40BF-B630-6EDCEF1DCEFC-default.jpg 的說明
.jpg

如何在包含提示的儀表板實行此方法

在大多數的實行中,儀表板已經包含提示,所以使用者可選取他們所需的月份。第一個步驟是根據使用者的選擇,找出需要篩選的期間。

在這個簡單的範例中,我們假設行事曆維度包含 Julian Period Number 資料欄,因為這樣讓計算更加簡單。雖然沒有 Julian Period Number 也一樣可行,但會需要使用更為複雜的公式來計算選取的期間。

首先,必須在 Month 提示填入展示變數 (在下方範例中為 MonthSelected)。接著,建立獨立的儀表板提示以擷取相應的 Julian Period Number,然後將其置入另一個變數 (PeriodNumberSelected)。第二個提示不會對一般使用者顯示,在儀表板中會為隱藏狀態,且會根據 MonthSelected 變數自動計算其值。請參閱下方範例。

  1. 修改 Month 提示以新增展示變數。

    以下為 GUID-DEEBC7D1-806C-48E9-965C-6131745A65CE-default.jpg 的說明
    .jpg

  2. Julian Period Number 建立獨立的儀表板提示。

    以下為 GUID-D41AE43F-CD62-498D-B041-9700D586BF77-default.jpg 的說明
    .jpg

  3. 編輯您的儀表板特性,然後按一下篩選和變數

    以下為 GUID-39A7720B-5345-418B-BDEE-33BC7426FAF0-default.jpg 的說明
    .jpg

  4. 新增 Julian Period 提示。

    以下為 GUID-E46E926E-F0A3-4934-9D10-F0119B9109DF-default.jpg 的說明
    .jpg

  5. 接著在分析中,刪除 Month 資料欄的全域篩選,然後視需要根據 Julian Period Number 使用資料欄公式篩選函數。以下是一些範例:

    Current Month: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"=@{PeriodNumberSelected}{80800})

    Month Ago: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"=@{PeriodNumberSelected}{80800}-1)

    Year Ago: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"=@{PeriodNumberSelected}{80800}-12)

    Year to date: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"<=@{PeriodNumberSelected}{80800} and “Time”.”Year”=@{YearSelected}{2019})

如何在工作簿使用參數實行此方法

相同的原則也適用於工作簿。只是,提示和展示變數由儀表板篩選和參數取代。

建立以下三個參數:MonthSelected、PeriodNumberSelected 以及 YearSelected。儀表板篩選的工作區中只會顯示 MonthSelected 參數。

可能的 MonthSelected 參數值會根據邏輯 SQL 定義,選取所有月份。

至於 PeriodNumberSelected 和 YearSelected 參數,則不會填入任何可能的值。只會填入起始值,與一個根據 MonthSelected 值篩選的邏輯查詢。請參閱下方範例。

以下為 GUID-C21AC2BA-E3B8-43BC-A812-517A074DBFA2-default.jpg 的說明
.jpg

以下為 GUID-B0D153C1-7DDF-445F-BF09-7E21EBECB88B-default.jpg 的說明
.jpg