無為

          無為則可為,無為則至深!

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks

          這是我翻譯Chris Webb的文章,原文請查看http://spaces.msn.com/cwebbbi/blog/cns!7B84B0F2C239489A!710.entry?txtName=anchky&blogcs=end。主要介紹如何處理同時聚合多個計算成員!翻譯的不一定正確,如有疑問的請查看原文!??? ?
          ??? 多時間維度(根據(jù)AS 2005,確切的說是關(guān)于時間的屬性層次)是非常有效的。我最初是從各種信息渠道介紹的
          George Spofford 的《mdx解決方案》知道多時間維度的。并且 George Spofford 和他的書提供的技術(shù)已經(jīng)成為普遍應(yīng)用于多維數(shù)據(jù)集分析服務(wù)的設(shè)計技巧之一。而且更進一步地,多時間維度技巧已經(jīng)成為《增加商業(yè)智能》向?qū)б粫?span lang="EN-GB">“設(shè)計時間智能平臺的組成部分。

          ???? 那么,這里頭又沒有什么新的東西值得介紹呢?很多時候,多時間維度就是比單時間維度高效。拿如下的mdx腳本舉例子,這個mdx是根據(jù)向?qū)?chuàng)建的,創(chuàng)建了單一時間維度 [Year-Month Period Calculations] 山的兩個計算成員 (Year-To-Date and Year-Over-Year Growth)

          /*

          ? Begin Time Intelligence script for the [Period].[Year-Month] hierarchy.

          */

          ? Create Member

          ? CurrentCube .[Period].[Year-Month Period Calculations].[Year to Date]

          ? As "NA" ;

          ? Create Member

          ? CurrentCube .[Period].[Year-Month Period Calculations].[Year Over Year Growth]

          ? As "NA" ;? ?

          Scope (

          ?????? {

          ???????? [Measures].[Sales]

          ?????? }

          ) ;

          ? // Year to Date

          ? (

          ??? [Period].[Year-Month Period Calculations].[Year to Date],

          ??? [Period].[Year].[Year]. Members ,

          ???? [Period].[Month]. Members

          ? ) =

          ? Aggregate (

          ???????????? { [Period].[Year-Month Period Calculations]. DefaultMember } *

          ???????????? PeriodsToDate (

          ??????????????????????????? [Period].[Year-Month].[Year],

          ??????????????????????????? [Period].[Year-Month]. CurrentMember

          ???????????? )

          ? ) ;

          // Year Over Year Growth?

          ? (

          ???? [Period].[Year-Month Period Calculations].[Year Over Year Growth],

          ??? [Period].[Year].[Year]. Members ( 1 ) : Null ,

          ???? [Period].[Month]. Members

          ? ) =?????

          ? ( [Period].[Year-Month Period Calculations]. DefaultMember ) -

          ? ( [Period].[Year-Month Period Calculations]. DefaultMember ,

          ??? ParallelPeriod (

          ??????????????????? [Period].[Year-Month].[Year],

          ??????????????????? 1,

          ??????????????????? [Period].[Year-Month]. CurrentMember

          ??? )

          ? ) ;

          ?? (

          ??? [Period].[Year-Month Period Calculations].[Year Over Year Growth],

          ??? [Period].[Year].[Year]. Members ( 0 ),

          ??? [Period].[Month]. Members

          ? ) = Null ;

          ? End Scope ;

          ?

          /*

          ? End Time Intelligence script for the [Period].[Year-Month] hierarchy.*/

          ??? 這樣做是高效的,但是當你的用戶要求能夠在 Year-To-Date 的數(shù)據(jù)上查看 Year-Over-Year 的增長趨勢的時候,我們該怎么辦?當然,你可以通過創(chuàng)建第三個計算成員來實現(xiàn)這個功能。然而我們很容易想到:當需求的計算聚合越多,我們創(chuàng)建一維持功能的計算成員數(shù)量就會越多。

          ??? 而這些剛好是多用途的時間屬性層次可以解決的,因為多時間維度可以幫助你控制計算成員的爆發(fā)式增長———你可以讓多個計算成員集合在一起。首先,必須像創(chuàng)建初始時間屬性層次一樣通過拖拽列在時間維度上創(chuàng)建一個新的屬性層次。需要注意的是,要確保把是否聚集( IsAggregatable )屬性設(shè)置為 false 以免聚合所有成員。接下來要確定的是,哪個計算對應(yīng)與哪個層次,當然該計算必須指向可用的計算聚合。如下的的mdx修改了上述的mdx,修改之后,兩個計算成員分別指向了兩個不同的屬性層次,這兩個層次分別是 [Period].[Year-Month Period Calculations] [Period].[Year-Month Period Calculations2]

          /*

          ? Begin Time Intelligence script for the [Period].[Year-Month] hierarchy.

          */

          ? Create Member

          ? CurrentCube .[Period].[Year-Month Period Calculations].[Year to Date]

          ? As "NA" ;

          ? Create Member

          ? CurrentCube .[Period].[Year-Month Period Calculations 2].[Year Over Year Growth]

          ? As "NA" ;

          ? Scope (

          ?????? {

          ???????? [Measures].[Sales]

          ?????? }

          ) ;

          // Year to Date

          ? (

          ??? [Period].[Year-Month Period Calculations].[Year to Date],

          ??? [Period].[Year].[Year]. Members ,

          ???? [Period].[Month]. Members

          ? ) =

          ? Aggregate (

          ???????????? { [Period].[Year-Month Period Calculations]. DefaultMember } *

          ???????????? PeriodsToDate (

          ??????????????????????????? [Period].[Year-Month].[Year],

          ?????? ?????????????????????[Period].[Year-Month]. CurrentMember

          ???????????? )

          ? ) ;

          // Year Over Year Growth?

          ? (

          ???? [Period].[Year-Month Period Calculations 2].[Year Over Year Growth],

          ??? [Period].[Year].[Year]. Members ( 1 ) : Null ,

          ???? [Period].[Month]. Members

          ? ) =?????

          ?

          ? ( [Period].[Year-Month Period Calculations 2]. DefaultMember ) -

          ? ( [Period].[Year-Month Period Calculations 2]. DefaultMember ,

          ??? ParallelPeriod (

          ??????????????????? [Period].[Year-Month].[Year],

          ??????????????????? 1,

          ???????????????? ???[Period].[Year-Month]. CurrentMember

          ??? )

          ? ) ;

          ?? (

          ??? [Period].[Year-Month Period Calculations 2].[Year Over Year Growth],

          ??? [Period].[Year].[Year]. Members ( 0 ),

          ??? [Period].[Month]. Members

          ? ) = Null ;

          ? End Scope ;

          /*

          ? End Time Intelligence script for the [Period].[Year-Month] hierarchy.

          */

          ???? 這下用戶就可以通過交叉他們要求的兩個計算成員來實現(xiàn)通過 Year-To-Date 數(shù)據(jù)查看 Year-Over-Year Growth ,就跟單獨使用單個計算成員一樣。



          凡是有該標志的文章,都是該blog博主Caoer(草兒)原創(chuàng),凡是索引、收藏
          、轉(zhuǎn)載請注明來處和原文作者。非常感謝。

          posted on 2006-06-10 13:16 草兒 閱讀(519) 評論(0)  編輯  收藏 所屬分類: BI and DM
          主站蜘蛛池模板: 咸阳市| 遂溪县| 婺源县| 卓资县| 海南省| 东明县| 沈丘县| 大埔县| 竹北市| 汉源县| 奇台县| 紫阳县| 清苑县| 平安县| 扎兰屯市| 莱西市| 泗洪县| 长兴县| 海盐县| 三河市| 和硕县| 松桃| 阳东县| 华容县| 浦城县| 西华县| 延川县| 洛扎县| 津市市| 喀喇| 邵东县| 辽宁省| 西充县| 商都县| 平原县| 剑川县| 武强县| 平定县| 临湘市| 合肥市| 泰顺县|