標籤:
本人認為本文涉及的知識並不常用,可以作為瞭解參考即可。
一、賬戶智能
前面幾個文章有提到過,設定自訂的維度,其中就是一個類似於帳號的維度,SSAS維度CustomRollupColumn用法-自訂彙總方式,這種方式可以實現收入=總收入-總投入的自訂彙總方式,出來這個方法,MSBI還提供一種專門針對賬戶類型的維度商業智慧,我們只需要將這種賬戶類型的表設定好,首先構建一個普通的帳號維度,然後再此基礎上添加商業智慧:右鍵一個普通的賬戶維度(類型為Regular),選擇添加商業智慧,選擇‘定義賬戶智能’。
下一步,之後將你的維度資料表中的欄位對應到內建的賬戶類型,然後,下一步完成,此時就可以構建一個完整的賬戶類型維度,最後在瀏覽資料的時候,就會實作類別似於SSAS維度CustomRollupColumn用法-自訂彙總方式這樣智能維度。
二、時間智慧
首先,你的要準備一個時間類型的維度(類型為Time),然後右鍵Cube添加商業智慧:
然後,下一步:選擇你要在哪個層級上添加什麼樣的時間計算,點擊下一步,SSAS會讓你選擇,與時間計算相關聯的度量值,這裡就不給出了,我選擇的是年度同比在增長率和增長量;
最後,完成添加之後,出現的變化是:在維度中多出一個層級結構的計算:
除此之外,在cube的計算標籤頁中你也可以看到,多了一個導出成員,其實就是與時間計算相關聯的度量值的MDX指令碼計算:
下面為此導出成員的MDX指令碼語句:
/*CALCULATE 命令控制Cube中葉單元的彙總。如果將其刪除或修改,會影響Cube內的資料。只應在希望手動指定如何彙總Cube時編輯此命令。*/CALCULATE;/* 開始 [Dim Date].[階層] 階層的時間智慧指令碼。*/Create Member CurrentCube.[Dim Date].[階層 Dim Date 計算].[年度同比增長率] As "NA" ; Create Member CurrentCube.[Dim Date].[階層 Dim Date 計算].[年度同比增長量] As "NA" ; Scope( { [Measures].[Total Amount - Fact IP Medicine] }) ;/*2011年度同比增長率*/ ( [Dim Date].[階層 Dim Date 計算].[年度同比增長率], [Dim Date].[年-層級].[年-層級].Members ( 1 ), [Dim Date].[Date Key].Members ) = null; /*2011年度同比增長量*/ ( [Dim Date].[階層 Dim Date 計算].[年度同比增長量], [Dim Date].[年-層級].[年-層級].Members ( 1 ) , [Dim Date].[Date Key].Members ) = null; /*年度同比增長率*/ ( [Dim Date].[階層 Dim Date 計算].[年度同比增長率], [Dim Date].[年-層級].[年-層級].Members ( 1 ) : Null, [Dim Date].[Date Key].Members ) = ( ( [Dim Date].[階層 Dim Date 計算].[當前 Dim Date], [Dim Date].[階層].CurrentMember ) - ( [Dim Date].[階層 Dim Date 計算].[當前 Dim Date], ParallelPeriod( [Dim Date].[階層].[年-層級], 1, [Dim Date].[階層].CurrentMember ) ) ) / ( [Dim Date].[階層 Dim Date 計算].[當前 Dim Date], ParallelPeriod( [Dim Date].[階層].[年-層級], 1, [Dim Date].[階層].CurrentMember ) ) ; ( [Dim Date].[階層 Dim Date 計算].[年度同比增長率], [Dim Date].[年-層級].[年-層級].Members ( 0 ), [Dim Date].[Date Key].Members ) = Null ; Format_String( ( [Dim Date].[階層 Dim Date 計算].[年度同比增長率], [Dim Date].[Date Key].Members ) ) = "Percent" ; /*年度同比增長量*/ ( [Dim Date].[階層 Dim Date 計算].[年度同比增長量], [Dim Date].[年-層級].[年-層級].Members ( 1 ) : Null, [Dim Date].[Date Key].Members ) = ( [Dim Date].[階層 Dim Date 計算].[當前 Dim Date], [Dim Date].[階層].CurrentMember ) - ( [Dim Date].[階層 Dim Date 計算].[當前 Dim Date], ParallelPeriod( [Dim Date].[階層].[年-層級], 1, [Dim Date].[階層].CurrentMember ) ) ; ( [Dim Date].[階層 Dim Date 計算].[年度同比增長量], [Dim Date].[年-層級].[年-層級].Members ( 0 ), [Dim Date].[Date Key].Members ) = Null ; End Scope ;/* 結束 [Dim Date].[階層] 階層的時間智慧指令碼。*/
然後,部署項目,瀏覽資料:可以簡單的看到年度的增長率和增長量已經自動的計算出來了。
三、伺服器時間維度和維度智能
伺服器時間維度,一般來說就是,建立維度時候,你的DW中並沒有對應的時間維度表,就可以採取這種做法來替代時間維度,步驟很簡單:建立維度,選擇伺服器時間維度即可,簡單的設定選擇,然後一路下一步,最終完成是這樣子的:
下面我們可以部署處理項目,然後瀏覽基於伺服器時間的時間維度中的資料:這種方法有時候是可取的,這個用法具體使用方法,在使用時候具體討論。這裡不多說。
維度智能,其實說的是添加商業智慧的時候,選擇維度智能,也就自訂要添加的維度如何按照自己的需求實現智能,畢竟內建的商業智慧使用範圍有限。我們在添加商業智慧的時候,除了上面說的幾種智能維度,還有其他的智能維度,大致的思路都是一樣,知識具體實現的過程不一;終究目的都是將維度根據自己的意願實現所謂的智能化。
商業智慧添加維度智能簡介