SAP BW之建模之转换和DTP
SAP-BW问题一览

1.你工作过几年,你做过几个完整的项目?答“我做过2个完整项目现在在这个公司做外部顾问。
2.你主要负责哪一快?答:我主要负责BW上面的FI和HR模块,对其他模块有所了解。
3.什么是DELTA机制?答:答:delta机制分为两部分:数据源的delta机制、BW的delta机制:数据源的delta分后勤数据源的delta机制、其他数据源的delta机制,后勤数据源的delta是通过extraction Q和delta Q、V3JOB来实现,首先通过IP whit out data打标,然后setup,通过full抽取从setup抽取数据,对于以后的增量数据,是ECC把业务数据自动push到extraction Q,然后通过V3job的方式把数据抽取到delta Q中,通过增量的ip从delta Q抽取数据实现增量;其他数据源的delta机制,是通过时间戳打标,通过IP根据时间增量抽取数据;BW的delta机制,通过DSO的recordmodule实现前像冲销以前的数据,再产生一个后像,在往上上述的时候通过before inmage冲销,通过after inmage产生修改的后的数据;Dso 往上上述一个dso时如果写的是在DTP中写的是全量更新则从dso的有效表中抽取数据,如果写的delta更新,则是通过changelog 表抽取数据上述的上层的dso;4.不同模块事务数据DELTA加载的操作过程一样吗?答:不一样,MM有MM的DELTA機制,FI有FI的機制。
5.什么是数据源增强?答:DATASOURSE的增强其实就是在标准DATASOURSE上面,修改结构,然后在EXTRACT数据的时候通过写ABAP命令取到自己要的数据放到DATASOURSE中。
COMDE中有四个部分分别写代码:001业务数据002 主数据属性;003主数据文本;004层次结构;分两部分:数据源的增强;自定义需要提取的字段新建一个数据源,在BW侧再关联实现自己的需求;6.CUBE和ODS最大的区别是?答:最大的区别是CUBE的KEYFIGURE是累加的,但是ODS是可以OVERWRITE的,一般ODS用来放ITEM LEVEL的数据。
BW常见面试问题(含答案)

1.你过去几年做过什么项目?你做过哪些报表?这些报表的数据源是什么?对于这些数据源的delta机制熟悉吗?(考察对项目的大概了解)做过什么行业?电商、通信行业做过什么报表?财务报表、销售报表、仓储物流各种明细报表2.你项目中有几人?这个bw是怎么分配工作的?(考察项目的真实性)5个,3个建模,两个报表3.bw对一个模块抽取数据,那么这个模块有几个dso ?几个cube?为什么这么设计?(考察项目建模的熟练性)模型3-4个,dso7-8个,分层备份,数据。
一般企业的目标分类4.dso和cube加载数据的频率是怎么样?(考察对数据加载的熟练性)每天晚上加载加载量十几万条至几百万条数据不等5.如何把已开发好的模型和查询传到生产机?(考察如何把工作内容从开发机传到生产机)通过se10释放,然后通过stms传输。
6.协同开发一个模型的时候可以保存到2个请求号中吗?请说明原因?(考察对模型重复加载的程度)协同开发时,后开发的,会自动建立一个请求挂在前边那个请求的下边。
7.数据源如果没有在bw端复制数据源会出现怎么样的效果?(考察把r3的数据源结构复制到bw端)会报错,说需要复制数据源。
8.请说明你做的数据源在r3的表名(考察对r3底表的熟练性)查看表名。
9.如果是文件上载,如果是几百万条数据,你如何处理?(考察对数据仓库优化的能力)如果要抽取一个text文件,有百万条甚至千万条数据,应该怎么做。
如果上传的数据量过大,不可能一次上传,否则肯定会死掉。
方法是写程序分批上载。
一般每包的数据量1-2万条比较合适。
数据的流转路径:TXT ------- 内表------------- R3我们删除R3的数据的时候,也不可能一次情况完毕,也还是要分批清除。
可以在传输包上设置每包大小,不过几百万数据也叫大10.请告诉你在工作中遇到的困难,是如何解决的?(考察解决问题能力和沟通能力)11.建模的基本步骤12.什么是限定关键指标?怎么做?报表中建立(RKF)限定关键值,用特征来限制。
SAP BW培训PPT课件

转换
18
建模 1 信息对象
2 文本数据源和转换 3 信息包,DTP和数据上载 4 数据提供者
5 R3数据源
19
信息包
信息包设置数据如何从源系统上载到PSA。 PSA是绑定在数据源及信息包的一个表,存有原始未转换的数据。考虑到系统效
率,需要定期清理。
20
数据传输进程
数据传输进程设置数据如何从PSA根据转换上载到数据提供者。
BW培训之建模篇四
2008年11月12日
整体概述
概况一
点击此处输入相关文本内容 点击此处输入相关文本内容
概况二
点击此处输入相关文本内容 点击此处输入相关文本内容
概况三
点击此处输入相关文本内容 点击此处输入相关文本内容
SAP BW是端对端的商业智能解决方案,能够对 SAP R/3 以及其他非SAP系统中的数据抽取并分析。为 了实现此功能,SAP BW 拥有一组工具,包括:
21
数据流
数据从源系统可经PSA(也可 以跳过)至数据存储目标。
转换定义了数据的源和目标之 间的逻辑关系。
信息包和DTP是数据真正上载 的实际步骤。
22
问题与解答
问题与解答
23
创建信息对象ZEMPL,将ZUNIT,ZAGER设置为其属性。 创建ZEMPL的文本和属性文本数据源。
创建转换,信息包,数据传输进程其上载数据。
打开导航属性不需要重新上数 。
30
InfoCube中的数据流
5 R3数设置传输结构和数据
2 保存成.TXT文档并打开,选择‘替换’,将Tab空格替换成 ‘;
’
3 RSA1选择文件数据源,创建数据源,设置读取方式,接口字段等,预览,激活
SAP入门知识详细文档

SAP入门知识详细文档SAP BW入门知识SAP BW入门知识教程:一,sap NetWeaver 和bi 的概述sap NetWeaver 是sap 退出的soa 的一个平台,他可以集成企业需要的应用服务,提供一个开放的服务。
sap NetWeaver 是所有sap solutions 的基础。
sap bw 就是该平台提供的一个核心功能。
除此之外,他还提供了EP 、sap Application server 等,他可以提供java 引擎,从而可以在上面进行java 开发。
sap bw 介绍:sap bw 可以处理sap 系统的数据和外部系统的数据,他提供了OLAP 和bex 。
bex 提供了丰富的报表和分析工具,这些工具包括query 、报表和OLAP 功能。
sap bw 提取数据通过source system 。
ETL 是所有bi 系统的量比较大的工作,sap bw 也不例外。
外部数据(非sap 系统数据,包括平面文件等)可以方便的抽取到sap bw 中。
sap bw 也为抽取不同的数据,提供了几种接口,db connect ,bapi ,file ,soap 等。
二,sap bw 中的对象infoPriver: 信息提供者是一个在BEx 中可以为其创建或执行查询的对象。
infoProvider 是物理对象,有时是用于报表的逻辑“视图”。
DSO 和infocube 都可以作为infoProvider 。
infocube 包含数据表和维度表,数据表里面包含了关键值的值,最多包含233 个值。
infocube 里面最少包含4 个维度表,最多16 个。
其中三个是系统创建,包括:单位维度表、数据包维度表、时间维度表。
用户创建的维度表里面放的是sid ,这些sid 最多与248 个特性相连,这就构成了sap 的星形模式。
sap 的星形模式和传统的星形模式是不同的,传统的星形模式是一个事实表关联多高维表。
SAP BW配置及操作手册

分配
将iView分配到角色,这样这个角色就具有了这个iView的执行权限。
分配角色到用户
将角色分配到用户,这样对应的用户就可以执行每个角色下的iView了。
结束
2.创建一个Datasource,用于存放抽取过来的数据。此时的抽取式通过InfoPackage实现的。
3.创建一个DataStore Object对象,用于存放处理后的数据。Datasource和DataStore Object之间通过Transformation(转换规则)进行关联,同时需要创建一个Transfer Process用于数据的抽取处理。每个DataStore Object是属于一个InfoArea,也就是说一个Info Area下可以根据需要按照不同的规则更新出不同DataStore Object。
如果请求是黄灯,那么将不能直接删除,这时需要进入“监控器”,将状态改为“状态不正常”,然后再删除。
Query Designer
创建
通过菜单进入
预览
如果同EP关联,可以直接使用query上的“执行”功能预览,也可以在BW对应的系统中使用RSRT预览。
Web Application Designer
概述
ECC As Source
源系统中的配置
SAP BW处理链

SAP BW处理链简介V1.01目录SAP BW处理链简介 (1)1引言 (2)2SAP BW处理链介绍 (2)2.1处理链的设计原则与特点 (4)2.2进程与处理链 (4)3处理链的建立 (5)3.1主处理链和子处理链 (5)3.2建立一个处理链 (6)3.2.1业务介绍 (7)3.2.2登录处理链管理界面 (7)3.2.3建立开始处理进程 (10)3.2.4建立数据抽取进程 (13)3.2.5建立构建数据库统计进程 (14)3.2.6连接进程 (15)4参考文档 (18)5结束语 (18)1引言在一个BI系统中,有大量的日常的管理和维护工作是需要完成的。
比如,每天晚上进行的数据抽取、转换和加载,对加载完成的数据进行预计算,并把计算好的报表发送到需要的用户的电子邮箱中等。
这些工作往往具有固定的工作流程,而且不同的操作动作之间往往有固定的先后关系。
这些工作有可能是需要定期执行的,也有可能是由特定的系统事件触发的。
比如,当事务处理系统中出现新记录,或者文件接口服务器增加新的数据文件时,系统自动启动数据加载进程。
SAP BI为简化这些管理工作,提供了处理链这一工具。
本文主要结合陕西电网ERP项目开发实例,阐述了SAP BW处理链方面的内容。
从处理链的原理介绍,到通过建立一个完整处理链的例子,来向大家描述处理链在系统管理中的应用。
本文所有实例都在BI 7.0下完成,并测试通过。
2SAP BW处理链介绍处理链(Process Chain),又称进程链,是SAP BI提供的一个用于在后台完成批量工作的工具。
处理链使系统管理员可以容易的定义日常的管理工作,并对这些工作进行集中管理。
从图2-1可以看到,处理链在数据抽取过程中,所处的地位和起到的作用。
图2-1从图2-1中可以看出,数据从源系统(Source System)到数据源/持久数据加载区域(DataSource/PSA),是通过信息包(InfoPackage)进行传递的。
BW开发步骤

1、登录设置BW测试机BW正式机2、查看所需的数据系统中是否有标准的数据源(在sap中)rsa5 如果没有需要自定义一个数据源: rso2根据所需的数据源的类型选择是业务数据还是主数据属性注:在‘视图/表’这栏填写数据来源是哪个视图或表。
3、数据源建好之后进入BW系统运行rsa1,在DataSources里找到应用程序组件右键选择‘Replicate Metadata’刚在sap中新建的数据源就会显示出来4、选中所需的数据源点修改并激活,然后右键选择‘Create InfoPackage’InfoPackage 的命名规则:IF_数据源名_F(or D or I) (F表示全量,I表示初始化,D表示增量) 注:自定义的数据源都是全量,系统标准的用初始化和增量(需建两个InfoPackage)。
InfoPackage建好之后在Update下面选择是全量还是初始化加增量5、建DSO: 在左侧菜单栏选择‘InfoProvider’一般我们建的DSO都在ZKZBW这个目录下面,具体开所建的数据属于哪个模块就在ZKZBW下面的具体模块下面创建,如下图右键选择‘Create DataStore Object’.DSO命名规则:Z + 模块名+ _D +两位的流水号。
将新建的DSO激活(没激活的话呈灰色、激活的话呈蓝色)6、激活之后选中‘Key fields’右键选择‘InfoObject Direct Input’将相应的InfoObject 输入Data Fields的添加步骤和Key Fields一样待Data Fields 和Key Fields 添加完毕再将DSO激活7、创建转换关系:选中DSO右键选择‘Create Transformation’Source of the Transformation 下面的Obiect Type一般常用到的是IOBJ、ODSO、RSDS数据来源若是某个主数据就用IOBJ,若是某个数据源就用RSDS,若是某个DSO就用ODSO 下面的Name 就是相应数据源的name。
BW 处理链 及BW经验归纳

BW 处理链1目录SAP BW处理链简介................................................................................................ 错误!未定义书签。
1引言. (2)2SAP BW处理链介绍 (2)2.1处理链的设计原则与特点 (4)2.2进程与处理链 (4)3处理链的建立 (5)3.1主处理链和子处理链 (5)3.2建立一个处理链 (6)3.2.1业务介绍 (7)3.2.2登录处理链管理界面 (7)3.2.3建立开始处理进程 (10)3.2.4建立数据抽取进程 (13)3.2.5建立构建数据库统计进程 (14)3.2.6连接进程 (15)4参考文档.......................................................................................................... 错误!未定义书签。
5结束语.............................................................................................................. 错误!未定义书签。
1引言在一个BI系统中,有大量的日常的管理和维护工作是需要完成的。
比如,每天晚上进行的数据抽取、转换和加载,对加载完成的数据进行预计算,并把计算好的报表发送到需要的用户的电子邮箱中等。
这些工作往往具有固定的工作流程,而且不同的操作动作之间往往有固定的先后关系。
这些工作有可能是需要定期执行的,也有可能是由特定的系统事件触发的。
比如,当事务处理系统中出现新记录,或者文件接口服务器增加新的数据文件时,系统自动启动数据加载进程。
SAP BI为简化这些管理工作,提供了处理链这一工具。
本文主要结合陕西电网ERP项目开发实例,阐述了SAP BW处理链方面的内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果非要把BW的应用分为几部分的话,我觉得应该分为3部分,一部分:数据源的抽取,前面我们已经介绍了数据从数据源上载的PSA的技术细节;二部分:数据的模型创建,为了适应应用的需要,按照合理的方式创建数据模型;三部分:建立在模型及数据基础上的应用,如:报表、合并、预算等。
下面介绍BW中的数据模型。
BW真不愧是SAPR3的兄弟产品,它所提供的BI CONTENT 内容几乎覆盖了所有的SAP业务,我们都可以找到对应的模型,进行修改,来满足我们的需求,不像SAP收购的BPC那样不好用。
这样,就减少了我们建模的时间,同时也为不懂业务数据结构的BW人士,提供了捷径,这样,SAP领域就出了一个职位叫做BW顾问。
有一天,有个人跟你说,他是BW顾问,那就意味着他是做抽数和激活组件的。
顺便说一下,我不是BW顾问的,我只是个搞技术的。
BW中的模型简单来说,是通过DSO和CUBE来创建的。
下面从数据流向的角度介绍各个模型组件:
首先提供给大家一个SAP的图,表明数据的上载流程,仅供参考:
1.转换:
所谓ETL,即:Extraction/Transform/Load。
数据上载到PSA,就是抽取(E)的过程;转换(T)是对数据进行业务上的合并、计算等操作;装载(L)即为上载到数据提供者(存储应用层数据)中。
BW中提供了可视化的转换工具,并且可以在转换的过程中,对数据进行加工,相当于R3中的增强,在应用程序运行过程中,执行我们定义的逻辑。
再配合DTP(Data Transfer Process)将数据上载。
以自定义的数据源为例:
对SAP培训课程感兴趣,可以联系51SAP教育中心norman,QQ:
可以通过拖拽的方式将字段关联,系统会按照我们定义好的转换规则将数据传输到数据目标中,默认为“直接分配”,即:将数据直接传输到数据目标,不做任何修改。
BW提供给我们灵活的转换方式。
下面一一介绍:
在目标字段上双击,其中的“规则类型”表明,我们使用哪种转换:
直接分配:直接赋予源字段的值
常数:不管转换规则如何,总是赋予指定的常数
对SAP培训课程感兴趣,可以联系51SAP教育中心norman,QQ:
对SAP 培训课程感兴趣,可以联系51SAP 教育中心norman ,QQ :
公式:通过指定的源字段(需要将逻辑相关的源字段指向目标字段),通过运算,将结果赋予目标字段。
如果通过公式可以赋值的话,那么通过例程也可以实现,而且对于技术人员来说更容易控制。
(有人说公式可以让你不用写ABAP ,是个好处,那就仁者见仁了,不过,个人认为不动ABAP 的BW
顾问是个瘸子)
初始值:将初始值赋予目标字段。
即:如果无任何特殊处理的话,就将空赋予目标字段。
如0GL_ACCOUNT 默认是经过ALPHA 转换的,那么就将0000000000赋予目标字段。
读主数据:值是根据源字段的值,到信息对象的主数据中获取。
如:我们要为货币分配公司的本位币,那么设置如下:
首先通过拖拽,将源公司代码字段与货币字段关联,然后在信息对象参考字段填上0COMP_CODE 。
转换时,系统会到主数据中查询对应的值,与公式相似,我们也可以通过程序的方式来实现,我们后面会主要介绍例程的方式。
例程:通过程序来改变转换逻辑。
例程主要是根据源字段提供的数据,进行运算或者多其他数据源中将值赋予目标字段。
我们需要将相关联的源字段与目标字段关联。
在这里我们实现一个测试的逻辑:如果公司代码为1003,那么将会计年度作为值赋予0BALANCE ,当然,这只是简单的测试。
首先,将公司和会计年度与0BALANCE 关联。
对SAP 培训课程感兴趣,可以联系51SAP
教育中心norman ,QQ :
双击0BALANCE ,选择“例程”转换类型,BW 把我们导航到例程的界面:
例程中,系统将我们关联的字段集合到了source_fields 中,我们只需要直接调用source_fields-bukrs 和source_fields-gjahr 就可以了,然后将值赋值给RESULT 。
这样,我们就实现了数据转换的自定义。
同理,专家例程,也是通过这种方式来实现的,大家有兴趣可以看一看。
集合:对于key figure的转换,存在“集合”的选择,在转换到DSO时,可以选择“覆盖”和“合计”,对于转换到CUBE,只能选择“合计”,具体选择哪一项是与数据源的DELTA 属性有关的,具体请参考DELTA管理
/pages/chunguangz/blog/archive/2010/03/21/401977.aspx
时间处理:转换时,对于时间可以实现自动转换,如:20100101->2010001;20100101->2010;单位处理:
在我们创建DSO和CUBE的时候,当添加key figure,系统会自动为我们添加其对应的单位信息对象。
也就是说如果一个模型(DSO,CUBE)中的两个key figure拥有相同的单位信息对象,但却有不同的含义,那么在做报表的时候显示会有问题,因为报表中,BW是按照
对SAP培训课程感兴趣,可以联系51SAP教育中心norman,QQ:
对SAP 培训课程感兴趣,可以联系51SAP 教育中心
norman ,QQ :
信息对象的设置,到数据记录中对应的单位信息对象的值的。
当转换到DSO 时,单位信息对象是作为目标字段存在于转换中,我们需要将值与对象分别关联
当转换到CUBE 时,单位信息对象是做为单位维存在的,在转换中不能直接看到单位信息对象,但要将单位与keyfigure 关联,在目标字段中维护:
对SAP
培训课程感兴趣,可以联系51SAP 教育中心norman ,QQ :
开始例程:用于在转换之前,对数据做预处理,如:删除余额为0的项目等。
结束例程:
在转换后对数据进行整理,一般,转换过程中涉及到读取数据库等耗资源的操作时,我们会
将转换逻辑写到结束例程中。
规则组:规则组的作用有时候会很有用,其作用是,将数据源中的一条数据,转换为几条数据。
如:我们源数据中一条数据包含了1-12月的余额,可以通过规则组,分解非12条数据。
数据源结构如下:
公司年度科目1月2月
1003 2010 A10000 100.00 200.00
目标结构如下:
公司期间科目余额
1003 2010001 A10000 100.00
1003 2010002 A10000 200.00
因为比较简单,此处不再介绍操作步骤。
2.DTP
DTP即:Data Tranfer Process,DTP实际执行传输的动作,是上载的主要工具,我们在应用中并不需要对它研究太多。
我们创建了转换之后,当我们创建DTP,系统会为我们生成建议,一般我们使用默认设置即可,此处不做详细介绍。
对SAP培训课程感兴趣,可以联系51SAP教育中心norman,QQ:。