如何展示主資料的歷史變化(一)

fog911811發表於2011-12-27
       資料倉儲是面向主題的、整合的、相對穩定的、反映歷史變化的資料集合,用於支援管理決策。反映歷史變化、滿足對歷史資料分析的不同需求是資料倉儲建模需要認真考慮的一個問題。SAP BI 把資料分為主資料和交易資料,交易資料反映的是業務交易發生時的真實情景,較少涉及企業架構、產品分類等變動帶來的影響。企業架構、產品分類等資料的變動產生的影響通常是通過主資料的變化來體現的。

(1) 示例業務場景介紹

以下面的一個業務場景為例,具體認識SAP BI 是如何以不同的建模方法來滿足不同的分析需求的。這是一個組織結構變動的例子,如表1 和表2 所示。

子公司

母公司

AAA

X

BBB

X

CCC

Y

 從2008 年8 月1 日起,集團的組織結構作了變動,新增了DDD 子公司,並把原來從屬於X 母公司的BBB 子公司劃到Y 母公司旗下。

子公司

母公司

AAA

X

BBB

Y

CCC

Y

DDD

Y

由於組織架構的變動,集團的管理層對業務資料的分析可能存在不同的需求。不同的使用者出於不同的業務需求也往往對如何分析歷史資料存在不同的想法,在這一部分我們將深入探究4 種不同的業務需求場景。得益於SAP BI 主資料和資訊立方體相分離的建模方法,這些不同的業務需求可以通過同一個資訊立方體同時予以滿足,所不同的只是主資料的設定方式而已。

2008 年7-8 月某集團的業務收入

子公司

時間

收入

AAA

200807

100

BBB

200807

100

CCC

200807

100

AAA

200808

100

BBB

200808

100

CCC

200808

100

DDD

200808

100

 

業務場景一、“老架構、老資料”。

業務需求。使用者希望以實際業務發生時的組織架構為依據,統計母公司的業務收入。也就是說,將7 月份AAA 和BBB 子公司的收入記到X 母公司賬上, ccc 子公司的收入記到時Y 母公司賬上。在8 月份AAA 子公司的收入記到X 母公司賬上, BBB 、ccc 、DDD子公司的收入記到時Y 母公司賬上。

業務需求場景一2008 年7-8 月某集團的業務收入 

母公司

時間

收入

X

200807

200

X

200808

100

Y

200807

100

Y

200808

300

這種需求注重的是歷史的真實性,彙總後的資料真實反映了集團在組織架構變動前後母公司的收入總數的變化。但是這一方式忽略了各個母公司所包含的子公司組成的變化,不同歷史時期的資料統計口徑不統一,不同時期資料的可比性差。 

建模方法:針對這一需求,一種可行的建模方法是將母公司作為組織架構維度當中的一個特性直接儲存在資訊立方體中的維度中。如果資料在從源系統上傳到BI 系統時,業務資料只包含子公司,而沒有包含母公司的資訊,就需要在資訊立方體的轉換中定義母公司資訊的更新方式。具體實現步驟如下。

第一步:定義主資料(資訊物件)

一個行之有效的方式就是將母公司定義成子公司這個資訊物件的一個屬性。在資訊物件的編輯視窗中定義,

啟用資訊物件後,就可以往資訊物件中載入子公司的主資料。

第二步:維護或者載入主資料

在2008 年7 月之前,主資料的資訊如圖5-27 所示,通過資訊物件的右鍵選單中的"維護主資料"可以看到。

第三步、建立一個infoCube來測試。

我建立了一個infoCube:IC_RENO12, Time Dimension我加入了0CALMONTH, Unit Dimension是因為Key Figures加入IK_RREV自動加入的。子公司dimension加了SUB_COMP1,母公司Dimension加了PAR_COMP1. KEY Figure加了IK_RREV.這個infoCube 很簡單。

但這裡注意一點,有可能在加PAR_COMP1時有個錯誤提示,無法加入,那是因為你在建立PAR_COMP1時系統預設勾選Attribute Only,這時你要unCheck 這個選項,如下圖:

第四步:為IC_RENO12建立資料來源。此資料來源是用來讀取CSV檔案,檔案就是交易資料,主要是子公司,交易月份,交易金額,交易幣別(注意這裡沒有母公司資料)。

第五步:建立Transformation,其中PAR_COMP1的規則是Read Master Data.

第六步:啟用transformation,接著建立它的infoPackage和DTP。

第七步:載入交易資料。

第八步:建立一個Query,顯示交易資料。如下圖:

第九步:在2008 年8 月之後,隨著主資料的資訊的更新,及時維護BI系統中的資料。根據業務需要修改SUB_COMP1的主資料:把BBB的母公司改為Y,並增加DDD公司。

第十步:載入2008年8月之後的交易資料,如下圖:

第十一步:用第八步建立的Query,顯示交易資料。如下圖:

總結:這種方法是用業務發生時的標準來統計資料,實現的方法就是將母公司作為子公司的一個屬性,但母公司要被包括在infoCube的維中,而在載入交易資料是不需要包括母公司的資料,而是在轉換規則中用讀取子公司主資料的屬性來獲得。

   前提就是當公司組織架構或業務發生改變時,要及時修改子公司的主資料,同時當修改完後,要”Activate Master Data”(這一小細節當時沒做,可讓我折騰了好久呀)。

 

 

 

 

相關文章