設計鑽研報表

資料庫管理者可以透過建立資料欄對應,然後定義一或多個可鑽研區域,來建立鑽研報表定義。

設計鑽研報表的一般考量

您建立的鑽研報表會與資料庫偵測器「命令檔」區段中的立方體相關聯。

每個鑽研報表定義都必須包含一個資料欄對應與一個可鑽研區域。如果為鑽研報表提供外部來源資料連線的資料來源中有參數化查詢,您可以選擇性定義程式實際執行參數的對應。

若要建立鑽研報表定義,您必須具備「資料庫管理者」或更高的權限。

您可以建立從外部來源系統 (RDBMS) 或檔案提取資料的鑽研報表。

註:

如果鑽研報表的資料來源是連線至 Oracle Database,您可以勾選使用暫時表格選項,改進在 SQL “IN” 子句中有大量值的查詢效能。

您也可以將鑽研報表設計為存取 Web URL。

定義鑽研報表的資料欄對應

資料欄對應會定義哪些外部來源資料欄應包含在報表中、這些資料欄應對應至哪些 Essbase 維度,以及 (選擇性) 指出所要提供之存取權深度的層代/層級篩選條件。

若要深入瞭解資料欄對應,請參閱鑽研報表定義

定義資料欄對應:

  1. 在「應用程式」頁面中,展開應用程式。

  2. 從立方體名稱右邊的動作功能表,按一下檢查

  3. 在應用程式偵測器中,選取命令檔頁籤。

  4. 選取鑽研報表

  5. 按一下建立,然後從下拉式功能表中選取資料來源

  6. 名稱欄位中,新增報表的名稱。

  7. 資料來源欄位中,選取您想要使用的資料來源

  8. 建立資料欄對應:

    1. 從外部來源選取要包含在報表中的資料欄。

    2. 選取您要讓每個資料欄對應的維度。

    3. 選取用於對應的篩選條件;例如「層級 0」、「層代」或「無」(用於維度對應)。


      「鑽研報表」精靈中的資料欄對應圖像,其中包含「層代」、「層級 0」及「無」的對應。

  9. 完成時,按一下可鑽研區域。如果未定義區域,即無法儲存鑽研報表定義,如定義鑽研報表的可鑽研區域所述。

定義鑽研報表的可鑽研區域

定義 Essbase 立方體中一或多個您可以從中存取 (鑽研至) 外部資料來源的可鑽研區域。

  1. 完成資料欄對應之後,按一下可鑽研區域

  2. 按一下並選擇下列其中一個方法:
    • 在空白資料列中按兩下並使用下列計算語法來定義區域:成員名稱與成員集函數
    • 按一下鉛筆圖示以開啟可鑽研區域選取器,選取要新增的成員,按一下滑鼠右鍵,然後從功能表選項中選擇以定義區域。
      Essbase Web 介面中的「可鑽研區域選取器」圖像。

  3. 按一下儲存。系統會顯示一則訊息,指出是否已順利更新鑽研報表。


    鑽研報表精靈中「可鑽研區域」頁籤的圖像,其中已為 Market、Year、Scenario、Sales 及 Product 中的層級 1 成員定義可鑽研區域。

可鑽研區域範例

下列範例顯示 Smart View 中的可鑽研區域,以藍色標示。

範例 1

若要在 Market、Year、Scenario 維度和成員 Sales 頂端及 Product 維度的所有層級 1 成員定義可鑽研區域,請使用:

Market,Year,Scenario,Sales,@LEVMBRS(Product,1)

當您鑽研至 Smart View 工作表時,產生的網格看起來會像這樣:


Smart View 網格的圖像,其中以藍色標示可鑽研成員。定義的區域為 Market,Year,Scenario,Sales,@LEVMBRS(Product,1)。

範例 2

若要為 Market 的子代定義可鑽研區域,請使用:

@DESCENDANTS(Market)

當您鑽研至 Smart View 工作表時,產生的網格看起來會像這樣:


Smart View 網格的圖像,其中以藍色標示可鑽研儲存格。定義的區域為 @DESCENDANTS(Market)

範例 3

若要為 Product 維度中層代 3 的成員及 Market、Year、Scenario 維度和成員 Sales 頂端定義可鑽研區域,請使用:

Market,Year,Scenario,Sales,@GENMBRS(Product,3)

當您鑽研至 Smart View 工作表時,產生的網格看起來會像這樣:


Smart View 網格的圖像,其中以藍色標示可鑽研儲存格。定義的區域為 Market,Year,Scenario,Sales,@GENMBRS(Product,3)

實作鑽研報表的參數

若要讓鑽研報表更有彈性,您可以在設計鑽研時實作參數。

如果您是資料庫管理者或更高權限的使用者,您可以在鑽研報表中實作參數化資料來源查詢。

先決條件:應用程式管理者或更高權限的使用者已為您提供使用固定 (預設) 值替代變數或外部使用者定義函數作為參數之資料來源的存取權。

Essbase 會在程式實際執行時識別參數的值,將其目前值插入至 Essbase 在執行鑽研時所產生的查詢中。

在鑽研報表定義中,您可以視需要為程式實際執行參數新增維度、層代及層級對應。這可讓您根據目前的變數相關資訊環境進一步自訂鑽研報表的結果。

如果您希望 Essbase 根據變數動態建置鑽研報表,請依照此工作流程進行:

  1. 在基礎資料來源查詢中,實作資料來源的參數。這必須由應用程式管理者或更高權限的使用者執行。

  2. 建立與資料來源關聯的鑽研報表定義

  3. 視需要在鑽研報表定義內為參數使用提供程式實際執行自訂值。以下提供一個範例。

  4. 執行鑽研報表來測試和驗證預期的行為,以及使用 Essbase 伺服器平台日誌進行鑽研除錯

程式實際執行參數與使用者定義函數

以下範例使用案例是基於下列先決條件假設:

  • 已在外部來源系統中定義 getMonths 使用者定義函數。此函數會傳回以逗號區隔的月份清單。

  • 已使用會呼叫 getMonths 函數的查詢來定義用於鑽研報表定義的資料來源,如下:

    select * from SampleBasic where month in (getMonths(?))

程式實際執行參數的層級 0 (遞迴) 對應

在鑽研報表定義中,當程式實際執行參數連結至 Year 的層級 0 時,


鑽研報表定義的「程式實際執行參數」頁籤。參數:Param1。變數:已勾選。值:Sample.mnth。維度:Year。層代連結:Level0 [層級]

如果 Smart View 使用者鑽研 Year 維度的 Qtr1,則鑽研報表將會包含 Jan、Feb、Mar。如果 Smart View 使用者鑽研 Year,則鑽研報表會包含 Jan、Feb、Mar、Apr、May、Jun、Jul、Aug、Sep、Oct、Nov、Dec。

程式實際執行參數的層代對應

在鑽研報表定義中,當程式實際執行參數連結至 Year 的 Quarter 層代時,


鑽研報表定義的「程式實際執行參數」頁籤。參數:Param1。變數:已勾選。值:Sample.mnth。維度:Year。層代連結:Quarter [層代]

如果 Smart View 使用者鑽研 Year 維度成員,則鑽研報表將會包含 Qtr1、Qtr2、Qtr3、Qtr4。

註:

設定與資料欄對應重疊之程式實際執行參數的維度/層代連結無效。在此情況下產生的查詢一律為空值集合。