【SAP操作笔记】创建一个InfoCube:一个简单的销售业务场景

原po:http://blog.vsharing.com/EAP/A822259.html

 

1.创造数据

创造了四个excel表格,分别是client、material、sales data和sales organization。为了保持表头一致(因为暂时不是很清楚BW关联的读取方式),所以表头都用了中文。四表表头如下:

客户标识/客户名称/客户地址

物料编号/物料名称/物料描述

客户标识/销售代表标识/物料编号/销售单位/单位/销量/交易日期

销售区域/销售办公室/销售代表/销售代表标识

2.数据建模(这里看的是原po,但没看到图所以只是自己按它的字面理解)

InfoCube是根据星型结构进行建模的。事实表位于中间,维度表位于事实表周围。“本例中涉及‘客户’,‘物料’和‘销售代表’三个维度(实际上这里还有两个共有的维度,‘时间’和‘单位’)”。

3.ETTL过程

“1、抽取数据时,即完成从源系统(例如R/3系统)移出数据。该步的关键是识别合适的数据,因此,对于源数据系统很好的理解是基础。

2、数据传输时,有规则的将不同源数据系统的大量数据移动到数据仓库中,这里的关键是规划出一个符合实际的数据传输计划,并且拥有可靠的快速网络。

3、数据转换时,对数据要进行格式化处理,从而保证数据在数据仓库中保持一致。这里要面对众多挑战,不同的名称,不同的数据类型,不同的文件系统,不同的文件格式等,都需要在数据转换中正确处理。

4、数据加载,就是将数据正确、快速的加载到事实表中。这一过程的关键在于开发一个稳定的、好的错误处理程序。

ETTL是一个复杂的,需要花费大量时间的任务。任何错误都有可能危害到数据的质量,而数据质量直接影响到企业决策的制定,因此,对于数据仓库项目来说,能在计划的时间和既定的预算内完成具有很大的挑战。”

4.创建InfoCube

在BW中,使客户标志、物料编号、销售代表标识、度量单位以及交易日期成为characteristic,客户姓名和客户地址都是客户标识的属性(虽然它们实际上也是characteristic)。销售单价,销售数量和销售收益被称为主特征(key figure),特征和主特征都称为InfoObject。

即共创建七个characteristics和三个key figure。

然后在InfoProvider中创建一个InfoCube,在设计中我把三个key figures放进了Key Figures文件夹,把客户、物料和销售代表三者的ID放入维度1中,并重命名维度1为ID or Number维度。

 

5.把数据加载到Cube

(1)在InfoSource中创建一个命名为Sales_Business的Application Component,把这个例子的相关内容都放到这个相当于文件夹的component里,方便管理。在这个component中,创建一个InfoSource,命名为Customer_ID。为什么是Customer_ID呢?因为这是我第一次用InfoSource,我以为会像DS那样,一个InfoSource在设计的时候就要从源extract数据,且只能对应一个表格。但不是的,InfoSource的设计并不涉及源数据的抽取,而只是需要你选择与这个InfoSource的相应的IO即可。这里我选择了客户/物料/销售代表三个ID和Number的特征对象。

(2)在DataSource中的相应目录下创建三个DS,分别抽取对应的三张表client/material/sales data,并创建相应的InfoPackage来加载数据。在设计DS的时候要load example data,因为我的几个表的表头都是中文,BW好像不能自动识别成为字段名称,所以如果不手动设置字段名称就会报错无法激活。如此想来,其实只要在这一步统一字段名称就可以了吧,完全不用在源表中就统一。

(3)回到InfoSource创建三个相应的Transformation,每个T的源都是前面的某个DS,目标则是InfoSource的三个IO中在该表中能找到的那个相应字段。

(4)好了,那为什么要这么复杂呢?因为我们回到InfoP中右键该Cube,发现它是没有create InfoPackage这个选项的,而且我的InfoCube的数据应该来自几个不同的表中的某些字段,所以首先用DS确保数据上传成功,再用InfoSource将这几个DS整合起来。现在回到InfoP中,右键该Cube选择Create Transformation,源就选刚刚完成的InfoSource,目标则是Cube。

(5)然后查看数据的时候,正常来说选完字段就会发现key figure还是空的。但是在选字段的时候我才发现我的sales data表格没有上数成功,原因是像“19980502”这样的数据proposal面板会建议用DATS的数据格式,但由于excel里源数据格式是文本,所以BW无法识别,就无法抽取数据了;所以要改成CHAR。

(6)为了后期方便起见,还是给customer_ID特征的两个属性建了InfoP来上数。

 

posted @ 2016-09-14 01:22  Haley_Cheung  阅读(847)  评论(0编辑  收藏  举报