BW知识问答锦集2

PM面试分为BW、BO两部分,根据顾问的简历和应聘的岗位所侧重的问题不同。

BW包括基础知识、增量、增强、LO抽取、数据源。

BO包括 CR、CR、WEBI、UNI。

一、 基础知识 技术面试

1、 BW中的数据对象有Info Object,Cube,DSO,Info set,Multi-provider,visual provider. 其中IO,Cube,DSO是实际的物理存储对象,Info set和 Multi-provider可以理解成为建立在其他物理存储对象上的视图,是不存储数据滴

2、 接上一点,那为什么要用到Info set和Multi-Provider呢?那要从BEx报表的展现机制来说了.在BEx报表设计中,你只能选取一个Info provider作为数据池来构建你的报表,如果你所需要的数据放在多个Cube或者DSO里面的话,那么你就需要一个工具把这些info provider集合在一起变成一个info provider,这个工具就是info set 或者是 Multi-provider

3、 还是接着上一点,说得这里别人面你的时候就肯定顺水推舟的问你Info set 和Multi-provider的区别是什么:info set 连接方式取的是数据的交集,而Multi-provider取的是数据的并集。

4、 Info Object是BW中最小的存储单位.

5、 DSO分为标准DSO,写优化DSO,直接更新的DSO.

6、 实际的项目大多数喜欢用3层的数据模型,底层是写优化的DSO,记录delta和保证数据与PSA的一致,第二层用标准DSO,第三层用Cube…用level 1的DSO更新level 2的DSO的时候,一般都用SUM的方式.2

7、 建立模型时的导航属性具体含义是什么? 是在做查询的时候用的,过程是这样的,首先在主数据的导航属性里面选择某一个字段,例如物料主数据的物料组设置成 了导航属性,然后在INFOCUBE里面还有一个设置导航属性的地方,这里就是该INFOCUBE里面全部特性的导航属性的和(如果在特性里面没有选择导航属性,在INFOCUBE里面也找不到),在 INFOCUBE也选中该属性为导航属性后,物料组就可以作为物料的一个导航属性存在了,在做查询 的时候,物料组(在特性里面物料的下拉菜单中就会出现)就可以成为一个查询条件了或者做其他限制了。

8、 导航属性如何操作?导航属性3步,1,首先不是仅属性,2,打开导航属性开关,并写描述,3,在cube中打钩。

9、 DSO中生成 sid选项有何作用?DSO用于BEx报表时速度更快。

10、 如果DSO的key不够用怎么办?dso的key最多是16个,如果一个表中的key超过16个了,可以把key合并,比如:key1(10)、 key2(6),可以建一个长度是16的key,把两个字段上述到一个字段里。一般dso中很少用到,在cube中最多有13个维度,在cube中可以把两个dimension id合并成一个dimension id;

11、 SET UP表放什么数据?信息包中什么用到SET UP表?SET UP表里放Init(初始化)之前的所有数据。因此FULL和Init(初始化)都要经过SET UP表。所以信息包里,的F和I用到SET UP表。

12、 两个数据源一个全量、一个增量,上层怎样架构?

13、 你是怎么理解性能调优的?CUBE优化包括压缩,分区,聚集和查询优化。

14、 INFOCUBE中的压缩原理及优缺点?优点:合并请求号,把数据合并在一起,这样,运行速度快,节省空间。缺点:无法按照请求号删除数据,因为合并后,请求号就没有了。

15、 CUBE压缩后有几张表。(cube有几张表)?两张表,一个是F表,一个是E表。压缩后的数据放在E表中。激活后CUBE就会有很多表了,维表啊,SID表啊等等。

16、 多立方体 虚拟立方体  信息集3者区别?

17、 RSA5, RSA 6, RSA 7各代表什么意思?RSA 5:显示Delivery版本的BI CONTENT,可以激活BI CONTENT。RSA 6:显示Active版本的BI CONTENT。后台处理数据源事务码。RSA 7:用来查看Delta Queque中的内容。

18、 请求号怎么收集?选择需要收集的对象,右键—-更改—-点小车—-打包,SE09检查是否收集全。请求号收集是实施顾问来做,打一个包释放出去;传是IT部门来传(BASIS)。

19、 你们项目上的开发环境是怎么样的?是否有测试机?我们项目上没有测试机,在开发机上开发完后直接在开发机上测试,测试后没问题后直接传到生产机。开发机—-生产机。或者我们项目上有测试机,开发机上开发完后传到测试机测试,没问题后再传到生产机。

20、 常用的T-CODE。。。

RSA1:建模    RSA3:数据抽取,数据源提取检验    RSDS:查看数据源

RSRV:数据库的统计,可以得到维度表和事实表的大小。Debug测试。

SM59:测试RFC连接      SM37:看后台数据      SM12:解锁(解开被锁定目标)

SE11,SE16,SE16N:数据库表查询和创建

SE09:看传输请求号,释放。

SBIW:数据源后处理      STMS:传输(basis做的)RZ11:设定gateway的连接数

SU01:创建用户(权限)    PFCG:把ROLE分配到用户名下(权限)

VF03:显示发票      VA03:看销售订单     XD03:销售主数据     VL03:交货单

MM03:物料

LBWE:定制事务码      KNA1:客户主数据

CMOD:数据源和BW增强      SMOD:查CMOD使用组件的名字

RSPC:处理链

SPRO:加载时无字符串时查看用的     RSRT:query 监控器事务码

。。。。。。

二、 增量

1、 什么是DELTA机制?所有的Delta数据,在传到BW之前,都会先到Delta Q里面,再从DeltaQ到BW.Delta Q可以用RSA7查看.

2、 Delta数据从原始表到Delta Q, 有两种方式:对于LO的数据源,是系统将Delta数据push到Delta Q的,然后在InfoPackage执行的时候,再把数据从Delta Q搬到BW.这就是PUSH的方式. 对于非LO的数据源,大部分采用time stamp的方式,在InfoPackage执行的时候,系统根据time stamp去源数据表获得delta数据,这些数据被送往Delta Q之后,紧接着就被搬到BW了.这就是所谓的PULL的方式.;

3、 总结一下:/ W1 N* [5 W3 K% y8 l0 L: {

PULL:当BW端请求数据时,R3端才做出回应,执行相关Function Module,把数据写入delta queue

PUSH:数据自动写入delta queue,当BW端请求数据时,直接去delta queue中抽取

4、 什么是增量队列?(delta queue)增量队列是新建或已更改数据记录的数据储存形式(上次数据请求以来出现的数据记录)。从系统收到数据请求时,会使用源系统中的更新流程或录入自动写入增量队列。

5、 增量机制:ODS增量机制最重要的信息对象ORECORDOMODE

   该信息对象实在ODS中会自动添加,手工无法添加,在转换中,需要通过点选技术组进行转换链接,也可以编写结束流程进行赋值

几个重要的值:余像:(在对原数据进行覆盖时,新的数据在更改日志中显示为空)

X 前像(在对源数据进行覆盖时,会有一条源数据反向数据产生在更改日志中,显示为X)

A 加(在对源数据进行累加时,会在更改日志中显示为A)

N 新图像(在第一次加载数据时,会在更改日志中显示N)

R反转像(在对源数据进行删除时,会在更改日志中显示为R)

6、 一般数据源的delta怎么实现的?一般数据源(自建数据源)的delta的类型默认都是aie,就是支持后像的,所以必须先到dso中然后再到cube。

7、 Delta Process增量方式?R3通过SE11查看表ROOSOURCE,BW通过SE11查看表RSOLTPSOURCE,可以查看数据源的抽取机制。

如ABR(after before reverve),是前,后,反转镜像更新模式,支持覆盖也支持累加,所以适用于所有的增量方式,可以更新到DSO或者CUBE。

如AIE(after image),是后镜像,只支持覆盖,不支持累加,所以不能直接加载到CUBE,只能加载到DSO。FI中此种增量处理方式应用较多。

如ADD,只支持累加,用附加镜像的更新方式,所以既可以更新到DSO,也可以更新到CUBE。

 

 

三、 增强

1、 什么是数据源增强?DATASOURSE的增强其实就是在标准DATASOURSE上面,修改结构,然后在EXTRACT数据的时候通过写ABAP命令取到自己要的数据放到DATASOURSE中

2、 项目上增强的步骤。

结构增强——增强字段(RSA6更改数据源)

功能增强——往字段中填数,CMOD选项目-选增强出口-写例程。

也可以简化说:分为两步:结构增强和功能增强

结构增强是给数据源增加字段,功能增强是利用abap代码给增加的字段填数。

3、 LO做增强以后和FI-CO做增强后的区别?FI-CO就是不用删除setup表,而LO做初始化后腰删除setup表

4、 数据源增强怎么做?bw这边增强做过哪些?cmod做增强,数据源增强的话,就是维护提取结构append structure(增强),标准数据源的话,增强可以用pull,把右边移到左边,增加字段。 bw这边做增强就是做些报表的用户出口变量。

5、 项目开始后,用户需要增加字段,该怎么办?

数据源做增强,增加字段

维护结构,删除SETUP表,重新复制数据源

删除CUBE里的数据,然后重新上数据

6、 增强项,增强出口?数据源增强:RSAP0001,报表变量增强:RSR00001.

 

四、 LO抽取

1、 R3目前有哪几种常见的数据提取方法? LO提取,通用提取,CO-PA提取。

2、 LO的增量更新有哪几种,大概描述一下?主要用的就是abr,它支持前像,后像,反像,新像,所以可以支持dso或者cube都可以,并且是用push的方式到delta queue中的。

3、 LO提取的UPDATE MODE有哪几种?Direct Delta:直接更新; Unserilized V3 update:无序的V3job, Queued Delta:队列增量, Serialized V3 Update。

4、 LO抽取的步骤

先进源系统 传数据源,维护提取结构,维护生成数据源

然后在BW系统 复制元数据,建模

最后上数,删除设置表,提取设置表,初始化数据,增量数据。

也可以说下图的13个步骤:

(1:传输datasource .2:维护提取结构。3:维护/生产datasource 。)4:复制和激活sap bi中的datasource 。5:维护数据目标(datastore对象,infocube).6:维护datasource和目标数据之间的转换。7:创建数据传输流程。8:激活提取机构。9删除设置表执行设置提取。10选择更新方法。11增量初始化的infopackege。(12:必要时计划v3集中运行)。13:增量上载的 infopackage。

五、 数据源

1、 一般数据源创建的步骤?找需要的原始表—SE11根据表建VIEW—RSO2根据VIEW建数据源—到BW端复制数据源。

2、 什么是标准数据源?标准数据源其实就是一个结构体+提取器,(提取器就是一段写好的ABAP代码)。

3、 Copa数据源与其他数据源区别?Copa的delta处理机制属于cube,就是说抽取数据后,生成的是汇总的数据,也就是cube。

4、 SD中用的哪些数据源 ?开票2lis_13_vditm,订单2lis_11_vaitm,出库单2lis_12_vcitm

5、 16个主要业务数据源

业务模块 数据源 说明

FI

财务

分析 FI-AA

资产会计 0FI_AA_11 FI-AA:交易

0FI_AA_12 FI-AA:已过账的折旧

FI-AP

供应商(应付) 0FI_AP_4 供应商:带有增量提取的行项目

FI-AR

客户(应收) 0FI_AR_4 客户:带有增量提取的行项目

FI-GL

总分类账 0FI_GL_1 总分类账:业务量

0FI_GL_4 总分类账:带有增量提取的行项目

0FI_GL_6 通过增量提取的销售分类账的总账成本

0FI_GL_10 总分类账:领先分类账余额

MM物料管理 2LIS_03_BF 库存管理的货物移动

2LIS_03_BX 库存管理的库存初始化

2LIS_03_UM 重新评估

SD销售分销 2_LIS_11_VAITM 销售凭证项目数据

2_LIS_13_VDITM 开票凭证项目数据

PA(HR)

人事管理 0HR_PA_0 员工

0HR_PA_1 人事事件

PY(工资核算) OHR_PY_1 工资发放数据

BO部分

 

1、 最近的项目是用什么做报表?

我们项目上用BO,主要是 水晶报表、webi。

2、 BW与BO的连接方式?

CR:QURREY—-CR

水晶报表不需要通过语义层连接BW QUERY,它可以直接连接BW QUERY.

WEBI:QURREY—-UNV—-WEBI

CX:QURREY—-UNV—-QAAWS—-CX

QURREY—-WEBI\UNV—-Liveoffice—-CX

水晶易表和WEBI都要通过语义层来连接BW QUERY.

 

3、 最近项目BO的版本?BO XI 3.1的版本

4、 WEBI\CR\CX三者的区别?

 WEBI注重多维分析及查询、钻取功能;格式不够灵活;

 CR格式灵活、适合制作各种格式的报表;

 CX注重动态分析和WHAT-IF分析,一般给中、高层领导,数据量不宜太大。

5、 WEBI中有哪几种报表格式?垂直表、水平表、交叉表。

6、 为什么 BW  –->  crystal report  - live office - Xcelius 优于 BW – Uni -  QAAWS - Xcelius ?crystal  report有缓存,数据显示快

7、 什么是环路?出现环路怎么解决?环路是一组连接,它定义了经过模式中的一组表的闭合连接。当连接形成查找表之间的多个路径时,将出现环路。

别名或上下文或2者结合一起用。

8、 检测和解决环路的一般过程?

1) 验证是否设置了所有基数

2) 如果模式需要别名来解决任何环路,请运行“检测别名”进行标示

3) 插入“检测别名”建议的候选别名

4) 如果模式需要上下文来解决仅使用别名无法解决的环路,请运行“检测上下文”进行标示

5) 实施“检测上下文”建议的候选上下文

6) 通过创建对象并运行查询来测试已解决的环路

9、 解决断层陷阱和扇形陷阱?断层陷阱是当两个多对一连接汇聚在一个表上时三个表之间的一种连接路径,采用别名和上下文。

10、 不同QURREY中的相同名称的维度在WEBI中怎么处理?合并维度。以达到同一维度对不同QURREY中度量的控制。

11、 query中如何设置可以提供报表的执行效率?提高报表速度:在query designer中尽量把明细的字段放在”自由行“里,提高报表的查询速度;尽量用多的表格,少用图片;

12、 做好的报表怎样从开发机传到生产机?用Publishing Wizard和Import Wizard,发布向导和导入向导。我们的项目都是客户IT部门来传,客户有规定不允许我们外部顾问来操作这个。不过这个也很简单,只要用1中的两个工具就行了。

HR面试:

1、 现在是否在项目上?刚出项目,目前在看机会;

2、 你最快可以什么时候到位?如果前面回答不在项目上,就可说拿到OFFER后随时都可以。

3、 你英语怎么样?文档没问题,沟通会差一点。

4、 你希望入职还是FREE?都可以。优先考虑入职吧。

5、 你目前RATE多少?期望是多少?10K,期望12K。其他待遇一般为:一天100补助,一月一到两次FLYBACK.

6、 你的BASE地在哪?XX地可不可以?北京,当然其它地方也无所谓,对BASE地无要求。

7、 你的简历上的项目都是外部的吗?(注意入行逻辑要符合)不是的,刚接触SAP时,是我的一个客户公司要上SAP项目,让我去IT部门协助工作,后来对 SAP产生浓厚兴趣,就转到客户公司做内部顾问,开始自学当然也和当时的外部实施顾问关系比较好,后来成为朋友一直保持联系。

第一个外部顾问是辅助一些做建模维护工作,最近一个项目是独立承担的。

8、 你过去几年做过什么项目?3个项目,主要是XX行业

9、 最后实施的项目做了多长时间,什么时候开始的?简单介绍下

4个月,2012年3月初。

最近的项目HR项目:与建立的项目内容相符,介绍内容包括(项目中的模块、出的报表,都用哪些工具等)

10、 你在项目上主要负责哪一块?

 BW建模、数据抽取、建一般数据源、建信息对象;

 BO报表、UNI创建;

 写些技术文档、业务蓝图、测试文档;

 参与业务需求调研、讨论业务方案、模型设计。

11、 你最近的一个项目上有几个人?5个人:3个BW,1个BO,1个PM;

12、 这个bw是怎么分配工作的?(你项目上人员是怎样分工的?)3个BW按FICO\MM\HR每人负责一个模块,1个BO展现报表,PM负责沟通、协调;总共80多张报表,我们三个BW顾问平均每人背20多张左右,有一些需要开发的ABAP做。

13、 你做过哪些报表?(列举一些你做过的报表?)人资:人员异动分析表、入职统计表、离职统计表、离职原因分析统计表。。。

14、 这些报表的数据源是什么?(最近项目用到了哪些数据源)

HR:0HR_PA_0   0HR_PA_1

15、 你最近的这个项目数据量有多大?百万级(注意HR项目按人来算数据不多,一般就几千条。)

16、 最大的一张报表多大?100–200页吧,HR则几十页

17、 bw对一个模块抽取数据,那么这个模块有几个dso ?几个cube?为什么这么设计?3-4个模型, 7-8个DSO  分层备份数据。

18、 dso和cube加载数据的频率是怎么样?数据加载频率:每天晚上加载;加载量:少则十几万条,多则几十万条数据

19、 如何把已开发好的模型和查询传到生产机?通过se10释放,然后通过stms传输。

20、 协同开发一个模型的时候可以保存到2个请求号中吗?请说明原因?协同开发时,后开发的,会自动建立一个请求挂在前边那个请求的下边。

21、 实际项目中涉及的文档:开发文档(更注重于每个点的细节每个dso等里字段、数据来源、data source的定义)、模型设计文档(更注重于模型架构图、流程图)、测试文档;项目中各个阶段有那些输出物:需求调研阶段:需求调研文档(大概报表的一些信息、报表数量,每个报表展示的大概数据)、设计阶段:设计文档(模型设计文档)、开发阶段(开发文档)、UT(测试文档)、uat(用户的测试文档)、上线;

22、 客户经常改需求怎么办?

严格按照需求变更流程走。

项目上的流程为:

1) 如果客户有需求变更,希望key user向部门领导进行审批了,批完后到内部顾问(IT部门)进行评估,评估后需要更改需求,OK,客户将需求转到外部实施顾问并进行讨论(有纸质的流程说明)

2) 实施顾问看到需求后,客户确实要求变更需求,发邮件到PM,PM收到后与实施顾问进行沟通,交涉需求变更流程细则(改动大不大,影响大不,风险大不,影响项目进度),PM了解清楚对工作量也预估出来后(小问题,几分钟搞定,PM发邮件我与客户,可以修改即可),如果变更大则PM会与客户、KYEUSER、内部顾问开一次会,当然实施顾问也要参加了,如果确定变更则形成文档,需要商务洽谈费用等等。

3) 都确定好了,PM会给实施顾问发邮件开始改动系统,否则之前不能对系统做改动。

23、 请告诉你在工作中遇到的困难,是如何解决的?

 

我经历的某次面试,供参考….

 

1.星形模型的结构讲一下
2.导航属性怎么操作的
3.平面文件怎么操作的?BI3.5怎么加载数据的
4.RSD1/RSA3/SE11/RSA1 事务代码都代表什么
5.具体做过什么报表?此报表是哪个数据源?报表的行项目,列项目列举一下
6.限制型key figure和计算型key figure如何操作
7.R/3如何创建数据源
8.做过哪些数据源的加载?是什么DELTA类型
9.在做DELTA之前要做什么
10.错误堆栈说一下
11.DSO和Infocube的区别
12.RSA5,RSA6两个事务代码有什么区别
13.ODS在7.0中叫什么?ODS里有几张表
14.LO提取的Queued Delta是怎么实现的
15.你做的是bi什么版本的
16.如果有个平面文件有单价,个数两列,Cube对应维度是总价,如何实现加载?
17.ABAP命令稍微说一下怎么实现增强数据加载的

 

 

 

一.Delta增量

1.什么是DELTA机制?

答:DELTA就是说在第一次load (加载)数据之后,允许下次在load数据的时候只load 还没有load过的数据。

2.不同模块事务数据DELTA加载的操作过程一样吗?

答:不一样,MM有MM的DELTA機制,FI有FI的機制。FI用的处理机制是时间戳,AIE,PULL。LO用的处理机制是DELTA queue,ABR,PUSH。

3.通用提取的数据来源有哪几种,是否可以DELTA加载?

答:TABLE/VIEW,INFOSET,FUNCTION MODULE,可以DELTA加载。

4.什么是增量队列?(delta queue)

答:增量队列是新建或已更改数据记录的数据储存形式(上次数据请求以来出现的数

据记录)。从系统收到数据请求时,会使用源系统中的更新流程或录入自动写入增量队列。

5.infopackage几种更新模式?

答:1完全更新2初始化增量流程3增量更新(F,I,D)

6.什么是增量更新?

答:增量更新仅为源系统中的请求上次加载以来已创建或已更改(或已删除)的数据记录。

7.各个增量流程都支持哪些记录类型?

答:后像 前像 倒象 新象。

8.平面文件的增量流程原理是怎么样的?

答:如果增量流程使用平面文件,数据不会通过增量队列传输到BI ,而是直

接从DATASOURSE 加载到PSA。

平面文件肯定不会用到DELTA queue,因为这是数据源的增量原理。

9.0RECORDMODE 是什么?

答:数据状态

RECORDMODE:有以下几个值

 

‘ ‘

在更改记录或添加数据后传输记录状态。只有在请求相应的前像时,才会将记录直接更新到 InfoCube(稍后解释)。

 

‘X’ 前像

在更改或删除记录前传输记录状态。所有可以汇总(关键值)的记录属性必须用加/减冲销符号进行传输。冲销加/减符号由提取器(缺省)或服务 Service API 负责。这些记录在 DataStore 对象的非附加(覆盖)更新中予以忽略。前像补充后像。

 

‘A’ 附加

如果属性可以集合,则仅传输更改。如果属性无法集合,则传输数据更改或创建后的状态。记录可以无限制地更新到 InfoCube,但需要对 DataStore 对象进行附加更新。

 

‘D’ 删除

仅传输代码。此记录只能更新到 DataSource 对象(因此 DataStore也只能更新到 DataSource 对象)。

 

‘R’ 反转

此记录的内容与前像相同。唯一的区别是更新 DSO时:删除代码相同的现有记录。

 

‘N’ 新像

此记录的内容与没有前像的后像相同。创建记录时,应传输新像而不是后像。新像补充倒像。

 

前像、后像 可用于CUBE的添加 和 DSO的添加、 添加、覆盖

 

附加图像 可用于CUBE添加 和DSO的添加

 

后像 不能用于CUBE,DSO的覆盖

 

倒像 能用于CUBE的添加 和 DSO添加和覆盖

 

删除图像 不能用于CUBE 可用于DSO的覆盖

 

 

 

创建一条记录为10,

然后将10变为8,

然后将记录删除。

具体记录。

 

创建的时候,

创建一条记录10,其 RECORDMODE 为 “ ”,代表新创建记录,

要将记录更新为8,有两种方式,

一种为:

增加一条前像,-10,其RECORDMODE为“X”

然后增加一条新记录8,其RECORDMODE为“ ”

另一种为:

附加项,增加一条记录-2,其RECORDMODE为“A”

前像和反像的区别?????

删除记录,

两种方式:

增加一条冲销记录-8,其RECORDMODE为“R”,

增加一条记录记录为空,其RECORDMODE为“D”。

 

 

增量流程:ABR,使用前像、后像、新像、倒像。

ADD,使用附加像。

AIE,仅使用后像。

 

10.什么是增量

答:增量就是业务数据在初始化后的变化和增加的量。(增加数据)

11.一般数据源的delta怎么实现的

答:一般数据源的delta的类型默认都是aie,就是支持后像的,所以必须先到dso中然后再到cube。

12.如果要load系统不支持字符,要执行哪个tcode?

答:SPRO

13.MM抽取和增量机制是什么?

答:MM抽取数据它属于后勤数据,也用到setup表,属于LO抽取,机制就是delta queue。

14. Delta Process增量方式

答:R3通过SE11查看表ROOSOURCE,BW通过SE11查看表RSOLTPSOURCE,可以查看数据源的抽取机制,即对应的增量方式:

如ABR(after before reverve),是前,后,反转镜像更新模式,支持覆盖也支持累加,所以适用于所有的增量方式,可以更新到DSO或者CUBE。

如AIE(after image),是后镜像,只支持覆盖,不支持累加,所以不能直接加载到CUBE,只能加载到DSO。FI中此种增量处理方式应用较多。

如ADD,只支持累加,用附加镜像的更新方式,所以既可以更新到DSO,也可以更新到CUBE。

 

二.LO抽取

1.R3目前有哪几种常见的数据提取方法?

答:LO提取,通用提取,CO-PA提取。

2.LO提取的UPDATE MODE(更新模式)有哪几种?

答:Direct Delta; Unserilized V3 update, Queued Delta。(v1,v2,v3)

Direct Delta、Queued Delta、Unserialized V3 Update 总结

一、Direct Delta:
a)业务数据更新应用程序表(application table);
b)与 a 同步(V1),数据更新到增量队列(Delta Queue);
二、Queued Delta
a)业务数据更新应用程序表(application table);
b)与 a 同步(V1),数据更新到抽取队列(Extraction Queue),此步骤与 a 是同步,所以可以记录业务发生顺序的先后;(数据先被收集到抽取列队然后被送到增量列队)
c)与 b 异步(V3),通过Collective Run(集体操作或集体运输)将数据从抽取队列(Extraction Queue)收集,更新到更新队列(Delta Queue);
三、Unserialized V3 Update
a)业务数据更新应用程序表(application table);
b)与 a 异步(V3),通过后台Collective Run(集体运转)将数据收集,更新到更新表(Update table),此步骤与 a 是异步,进行收集的时候,收集到的数据是多条,不记录业务发生的先后顺序;
c)与 b 异步(V3),通过后台Collective Run(集体运转)将数据从更新表(Update table)收集,更新到更新队列(Delta Queue);(就是增量列队中凭证是无序的,这对于用覆盖模式的模型来说是致命的,所以如果目标列队是DSO的话,不建议采用这种模式)

3.LO抽取的步骤?

 

4.v1,v2,v3都是什么

答:V1,v2是一个是同步传输,一个是异步传输数据,v3,是在lo中用于异步的无序的增量方式。

5.LO的增量更新有哪几种,大概描述一下

答:主要用的就是abr,它支持前像,后像,反像,新像,所以可以支持dso或者cube都可以,并且是用push的方式到delta queue中的。

6. R/3系统抽取数据到BW系统里,是否必须要在R/3建立logical system(逻辑关系),并指定?

答:从R/3系统抽取数据到BW系统里,必须要在R/3建立logical system,并指定。可以自己做一个DATASOURSE,也可以用RSA5 激活一个系统自带的\DATASOURSE(在R/3下)。步骤大概是R /3 创建logical system,BW 创建logical system,然后创建两个background

user,一个R/3的一个BW的,互相通信用。然后在BW创建个source system , transfer

R/3 global setting(change rate 也要传输),然后再复制data source。

7. 如果要抽一个表,但是数据源不能相同,在哪里设计?

答:在信息包里面设置。

8. COPA如何抽取数据?

一,根据科目

二,根据账号

具体根据每个公司的业务相关的

9. 一般MM的 抽取怎么进行的?

答:1.我们“初始化库存“2LIS_03_BX。

2.full load这个数据源的数据。

3.按照业务中的数据,增量加载这个数据源中的数据。

10. 如果要抽取一个text文件,有百万条甚至千万条数据, 应该怎么做?

答:如果上传的数据量过大,不可能一次上传,否则肯定会死掉。

方法是写程序分批上载。一般每包的数据量1-2万条比较合适。

数据的流转路径 :  TXT  ——-  内表  ————-  R3

我们删除R3的数据的时候,也不可能一次情况完毕,也还是要分批清除。

11.如果不从R3系统抽取数据,从其他系统抽取的话,提供不了增量,怎么上数据?

答:1,虚拟REMOTE CUBE(远程直连上数据,但是数据量太大就不行了)

2,可以自己设计一个增量,通过这个增量上数据

3,通过第三方工具,例如AC(埃森哲)的ETL工具,直接抽数。

 

三.数据源,表

1.Copa数据源与其他数据源区别?

答:Copa的delta处理机制属于cube,就是说抽取数据后,生成的是汇总的数据,也就是cube。

2.BI数据源系统激活时提示以下错误。no metadata upload since upgrade rsar 672怎么解决?

答:分步检查,缩小范围:

一.确认BW的源系统连接是有效的:BW系统的RSA1->源系统->选择你需要的源系统,用鼠标右键点击check。

二.如果源系统有问题,可以用sm59测试看看RFC连接是否正确。

三.如果源系统没问题,可以重新复制数据源。

四.正常此步骤后复制过来的数据源应该就是正确的。

3.如果修改了信息对象,信息包上载数据报错?一般怎么解决?

答:重新去复制一下数据源。

4.MM(物料)模块中很重要的一个关键值描述下,有关的三个数据源?

答:在库存的模型中,有3个主要字段

总库存发出数量(出库)      0ISSTOTSTCK

总库存接收数量(入库)      0RECTOTSTCK

数量总计库存(总计费累计值)0TOTALSTCK:由以上两个字段组成。

MM数据源:

2LIS_03_BX:初始化库存,反映了所有的入库的信息。

2LIS_03_BF:库存变动,反映了后续业务中的入库,出库的信息。

2LIS_03_UM:库存评估,和数量无关,改变库存产品的价格。

0cpquabu

数值接收到已评估库存

收货数量: 冻结库存

数量接收到寄存库存

收货数量: 质检中的库存

收货数量: 在途库存

数量接收到评估的库存

总库存接收数量

5.SD中用的哪些数据源 ?

答:开票2lis_13_vditm,订单2lis_11_vaitm,出库单2lis_12_vcitm

 

6.SD,FI,MM,3个数据源分别对应常用的哪些表?

答:

2LIS_03_BX:初始化库存,反映了所有的入库的信息。

2LIS_03_BF:库存变动,反映了后续业务中的入库,出库的信息。

2LIS_03_UM:库存评估,和数量无关,改变库存产品的价格。

 

 

 

 

 

 

 

 

 

 

四.增强

1.什么是数据源增强?

答:DATASOURSE的增强其实就是在标准DATASOURSE上面,修改结构,然后在EXTRACT(抽取)数据的时候通过写ABAP命令取到自己要的数据放到DATASOURSE中。

FI增强的字段:如清账日期。

2.数据源增强步骤?

答:

一.在附加到DATASOURSE提取结构的附加结构定义要求的字段

二.写入你的功能出口以调用DATASOURSE的相关数据源

三.在BI中复制此DATASOURSE

四.为增强的DATASOURSE提取数据

3.如何做增强?并举个例子。

答:Cmod做增强,BAPI(业务数据增强,业务部分用的)

例如,做销售开票时,需要订单日期。。。这个时候就需要做增强。

4.是否做过hierarchy(层次)增强?

答:层次增强,没做过,一般做的是数据源增强(维护数据结构,cmod增强),和BW增强(例程)

5.LO做增强以后和FI-CO做增强后的区别。

答:FI-CO就是不用删除setup表,而LO做初始化后腰删除setup表

6.数据源增强怎么做?bw这边增强做过哪些?

答:cmod做增强,数据源增强的话,就是维护提取结构append structure(增强),标准数据源的话,增强可以用pull,把右边移到左边,增加字段。 bw这边做增强就是做些报表的用户出口变量。

7.什么是增强

答:增强就是对现有datasource或者cube做功能的增加。

一,结构的增强

Append

二,功能的增强

通过t-code cmod增强文件“RSAP0001”,点击组件,出现4个文件,用来写代码。

EXIT_SAPLRSAP_001 业务数据源(业务数据增强出口)

EXIT_SAPLRSAP_002 属性和文本数据源(主数据增强出口)

EXIT_SAPLRSAP_003 老板本的文本数据源(文本增强出口,已经不用)

EXIT_SAPLRSAP_004 层级数据源(层次增强出口)

8.项目开始后,用户需要增加字段,该怎么办?

答:一,数据源做增强,增加字段

二,维护结构,删除SETUP表,重新复制数据源

三,删除CUBE里的数据,然后重新上数据

9.增强实例。

答:

数据源增强:

1,RSA5里/LBWE里,维护数据源提取结构,从字段栏目中,增加字段,右边拖拽到左边就OK了。

2,如果底表没有的话,就到RSA6里,维护数据源,增加APPEND STRUCTURE(增加结构),到CMOD中,选项目(project),增强文件“RSAP0001”,点击组件,出现4个文件,用来写代码。

EXIT_SAPLRSAP_001 业务数据源

EXIT_SAPLRSAP_002 属性和文本数据源

EXIT_SAPLRSAP_003 老板本的文本数据源(已经不用)

EXIT_SAPLRSAP_004 层级数据源

举例:

在销售开票数据里,需要增加销售订单日期,在业务数据源中(EXIT_SAPLRSAP_001)写代码。

如:

Case 数据源=“2LIS-13-VDITM”

定义指针和变量

工作区(内表里的一个操作单元)

Loop(对内表做读取循环,如果内表是哈希表的话,不能用LOOP,用KEY)

从 销售订单表(?)中读取销售订单日期并赋值到所增强的字段

EndLoop.

End Case。

 

最后要重新复制一下数据源。

 

变量增强:

Query中设置了用户出口的变量,然后去CMOD中,做变量增强。

示例代码场景 : ATEST_MON_CE为用户出口变量 其中存放月份年份(201011)ZCALDAY为用户输入的时间变量(20101101),将ZCALDAY 中的年月截取放入ATEST_MON_CE中,目的是为了统计某年某月份的key figure数据。(就是atest_mon_CE是用户自定义的用户出口变量,用户输入ZCALDAY(20101101),需要截取年月201011 到ATEST_MON)

(就是,具体看某日的数据,就需要些变量增强,因为系统是截取前6位的,只能看月份,并不能看具体日子)(还有就是同环比,和年累的增强,这个用的比较多。比如时间月份-1就是上个月的,也就是环比,时间-12就是去年同期的,就是同比,都要写变量增强)

 

field-symbols : <ls_var_range>  type PRO_S_VAR_RANGE.

Data ls_range  type  RRRANGESID.

 

Case  i_vnam.

When ‘ATEST_MON_CE’.

If  i_step = 2.           //因为i_step=1时不需要我们做任何处理所以直接在i_step=2时把

//i_step=1时,用户输入的变量从内表I_T_VAR_RANGE中进行读取

Read  table  I_T_VAR_RANGE  assigning  <ls_var_range>  //ls_var_range 为变量指针

With  key  VNAM = ‘ZCALDAY’.

If  sy_subrc  =  0.

Clear  ls_range.  //防止ls_range中已经有赋值,将其清空。

Ls_range-sign = ‘I’.   //include 与 exclude

Ls_range-sign =’EQ’.

Ls_range-low = <ls_var_range>-low(6).   //取20101101的低六位,即为年月

Append  ls_range  to  e_t_range.     //将处理好的变量值存于内表

Endif.

Endif.

Endcase.

10.增强项,增强出口。

答:数据源增强:RSAP0001

报表变量增强:RSR00001.

11. 在结构中进行增强时,字段命名限制是什么?

答:所有在附加结构中的新字段必须以ZZ开头。

 

五.Query报表

1.把BW报表发布到EXCEL上,有一个变量日历年月,每天打开窗口时选择变量值时都是按顺序排的,因为Cube里的数据多较多了,每次都要翻好几页,有什么办法让弹出窗口的信息是倒序排列的?

答:方法1.你可以于变量输入窗口,选择“单值”,点击“日历年/月”条目,可以切换

排序方式(升序或降序)。

方法2.可以用“日历年”加“日历月”变量替换“日历年/月”变量,同时设定查询默认值,这样可以减少条目数。

2.Query中的数据如何居中显示呢?

答:

一. 选择要修改的区域

二. 点击Bex 菜单中的Layout(布局), 选择alignment(排成直线)

三. 设置Horizontal(水平位置) 为center

四. 保存Workbook即可在 query designer 中的 query properties(道具), Display tab 可以选择 results position in number format, 可是只有 Bottom Left/Right, Top Left/Right. 没有居中。

3.在query designer内建立calculated key figure,因为我想要他的公式结构,未来可以自动化的将所有CKF的公式汇出。但在modeling里只有看到一般的key figure,没有CKF?

答:在Modeling Tree下面的BW移送->移送type->Query->Formula(公式,方程式),层次是这个关系,可以看到。

4.做过报表中的cell没有?

答:单元格。可以不走报表行列的汇总,独立进行本单元格公式计算。

5.报表开发中可共用的除变量外,还有什么?

答:结构

6.结构如果在一个报表中直接加入修改时如果不想影响其他使用这个结构的报表,如何操作?

答:右击,删除引用

 

7.解释一下RKF(限制性关键值),CKF(计算性关键值)?

答:RKF:限制性关键值,用一个或多个特征来限制关键值的显示内容。

例如:同一个产品,不同时期的销量,可以把销量作为限制。限制条件是时间。

CKF:计算性关键值,用一个或多个关键值计算而得到的内容。

例如:销售金额,就是单价*数量。

8.报表中的自由特性?

答:在报表默认的情况下是不显示的,但用户可以自由拖拽自由特性在portal上分析显示。

9.简单介绍一下报表中的条件,例外,结构?

答:条件是用来做限制的,这样能提升报表的查询速度。

例外是数据预警,就是比如库存数据有变动,就会变成红色预警。

结构是自己设置的,设置好一个结构并保存后,其他报表也可以对此结构应用。

10.是否做过同比,环比报表?

答:做过,同比就是与去年同期相比,环比就是与上个月,上个季度相比较。DSO,CUBE,都是相同的,但是数据是不同的,有些公式需要重新计算一下。

 

六.处理链

1.什么是流程链?

答:流程链是一系列计划要在事件的后台等待的流程。这些流程中有些触发了单独的事件,该事件可以依次启动其他流程。流程链的每个流程等于计划与事件相关的基础系统中已批准的作业。

先到PSA,再到输出层,再远程调用。BY主题上传。BY企业,企业下有许多主题。

 

2.流程链–维护?

答:

* 通过事务代码调用流程链维护(rspc)

* 在管理功能区域,选择导航窗格中的流程链,以调用流程链维护

* 在建模功能区域,通过选择工具栏上的流程链图标(或者从菜单选择编辑 → 流程链),您可以调用流程链维护。

* 选择工具栏中的流程链维护按钮,以便从所支持流程的维护对话访问流程链维护

3.处理链T-CODE?

答:RSPC

4.项目中怎么建处理链?

答:首先,主数据建主数据的链,业务数据建业务数据的链。

其次,数据源到PSA是一条链,PSA到DSO是一条链。

这些链都分开做,然后挂在一条大处理链上。

 

 

七.权限

1.如何做报表权限?

答:

一, 分析权限,

二, 报表权限,根据特性,在infoobject里,设置成与权限相关,输入事务码pfcg配置报表权限,

 

2.分析权限事务码是?并描述一下。

答:RSECADMIN,建立权限对象,加入做权限的Infoobject,再加入SAP建议的三个做权限的对象(0TCAACTVT做操作的限制,针对信息对象,如删除,只显示。。。,0TCAIPROV,对范围做限制,0TCAVALID对时间做限制),设置要做权限的信息对象的值,然后保存。PFCG,进入角色维护界面,把刚才所作的权限对象,分配到角色上,再把角色分配到用户。

 

 

八.基础知识

1.CUBE和ODS最大的区别是?

答:最大的区别是CUBE的KEYFIGURE是累加的,但是ODS是可以OVERWRITE的,一般ODS用来放ITEM LEVEL的数据。

 

2.DSO分类有那几种?

答:标准DSO ,优化DSO,直接写入DSO。

 

3.DSO对象的不同类型?

答:

一.标准DSO对象,具有已知的表活动数据、更改日志和激活队列。

二.优化的对象,针对大量数据仅具有一个活动数据表。

三.直接写入的对象,仅具有一个可用于分析程序(分析程序设计器)的活动数据表。此DSO对象替换早期版本中的事务性对象。

 

4.什么是多重提供器?

答:是一种,它综合了多个的数据以用于报告。供者本身不包含任何数据。数据由所基于的这些合在一起进行合并操作。

 

5.什么是信息集?

答:信息集通常定义为数据,标准信息块;信息对象是时间相关特性,则交集是时间相关或临时交集,是数据源上的语法层。与典型集是特定的数据视图。

 

6.属性有哪些类型?

导航属性,显示属性

 

7.建立模型时的导航属性具体含义是什么?

答:是在做查询的时候用的,过程是这样的,首先在主数据的导航属性里面选择某一个字段,例如物料主数据的物料组设置成 了导航属性,然后在INFOCUBE里面还有一个设置导航属性的地方,这里就是该INFOCUBE里面全部特性的导航属性的和(如果在特性里面没有选择导航属性,在INFOCUBE里面也找不到),在 INFOCUBE也选中该属性为导航属性后,物料组就可以作为物料的一个导航属性存在了,在做查询 的时候,物料组(在特性里面物料的下拉菜单中就会出现)就可以成为一个查询条件了或者做其他限制了。

 

8.对INFOCUBE进行数据显示时,发现某一条记录里有一关键值A,其值为23.3同时对应的MultiProvider进行数据显示时发现该记录的关键值A的值为0.能过Query进行报表显示时,该记录的关键值同样显示为0?

答:MultiProvider中添加了INFOCUBE中的KF,但是没有指定从哪个INFOCUBE中获取;

在 MultiProvider编辑界面左上角有按钮select key figures,点进去,在你需要的INFOCUBE的KF前打勾。如果没有打钩的话,multi中只有某一个CUBE拥有的这个数据,就无法关联,因此显示不出该数据,所以就是0,打上勾就OK了。

 

9.什么是INFOCUBE?

答:INFOCUBE就是信息立方体,使用星型结构存储并分析数据的载体。意义在于进行多维数据分析和统计。

 

10.非聚集Key Figure、原理?

答:非聚集Key Figure有点类似计算字段,是从另外字段计算出来的。

 

 

 

11.写优化的和标准的DSO区别是什么?写优化的为什么访问速度快?

答:写优化的DSO只有一张表,没有new data表。访问速度快,是因为没有生成SID表

 

12.cube里有多少个维度?

答:可以建立16个维度,其中3个是系统自带的,时间,单位,数据包。

 

13.DSO,cube,query这些模型简单描述下特点和结构?

答:dso分普通和写优化的,一个有三张表,一个只有一张表。cube的话就是维表和事实表,扩展的星型模型。query是建立在cube或者dso上的查询,可以建立变量,有行列设置,可以做filter(过滤)和条件,例外。

 

14.DSO的全称是什么

答:数据存储对象。

 

15.DSO有几张表

答:3张(新数据,有效数据,更改日志)

 

16.为什么要用DSO

答:因为dso可以覆盖,所以可以用来存储明细数据。

 

17.信息集和multiprovider的区别?

答:信息集是包含dso,cube,object,可以左连接,右连接,而多立方体可以包含信息集和所有对象。

 

18.导航属性如何操作

答:导航属性3步,1,首先不是仅属性,2,打开导航属性开关,并写描述,3,在cube中打钩。

19.DSO中生成 sid选项有何作用?

答:DSO用于BEx报表时速度更快。

20.CUBE分区,DSO分区?

答:DSO不做分区,只在CUBE上做分区,这属于性能优化。例如销售有3个部门,他们的数据很大,用在一个CUBE里也可以,但是这样做query的时候,展示很慢,系统也很慢。如果在CUBE分区,分成3个小CUBE,每个cube代表一个部门,这样性能就会好很多。

21.SET UP表放什么数据?信息包中什么用到SET UP表。

答:SET UP表里放Init(初始化)之前的所有数据。因此FULL和Init(初始化)都要经过SET UP表。所以信息包里,的F和I用到SET UP表。

22.CUBE上载的步骤。

答:创建转换(如果是infoprovider,如果不是还有infopackage等,),再DTP就行了吧,如果没有自动aggre 再手动aggre一下?

删除索引

构建数据库统计

积累已填充的集成/BIA 索引

信息块的压缩

 

 

九.ABAP相关

1.是否了解ABAP指针?

答:Field symbols,是字段符号,有点像括号似的,把一个结构,定义配给字段符号,通过字段符号来引用结构中的成员。

 

2.内表有哪些种类?(ABAP)

答:标准,排序,哈希(一一对应)

 

3.上传下载数据,使用EXCEL做过没有?(ABAP)

答:做过,有两种方式一种是通过模板的方式,一种是通过xml的方式。

 

 

十.性能优化

1.你是怎么理解性能调优的?

答:CUBE优化包括压缩,分区,聚集和查询优化。

 

2.INFOCUBE中的压缩原理及优缺点。

答:合并请求号,把数据合并在一起,这样,运行速度快,节省空间。

缺点是:无法按照请求号删除数据,因为合并后,请求号就没有了。

请求号,是指每次上载数据后,系统都会自动生成的请求号

 

3.CUBE压缩后有几张表。(cube有几张表)

两张表,一个是F表,一个是E表。压缩后的数据放在E表中。激活后CUBE就会有很多表了,围表啊,SID表啊等等。

 

4.如何优化query?

答:用filter(筛选器,过滤器),做限制。

用cache(缓存)

 

5.COPA如何优化?

答:

 

6.Bo开发中如何做(Universe)优化

答:

 

 

十一.例程

1.什么是清洗表?在哪里用?

答:就是自建一张表,里面有关键字段和数据字段,然后例程中会利用这张表来清洗数据

,在转换的例程中用的比较多,用这个表的好处就是表里的内容可以随着业务变化随时

变,不用总是改程序。

清洗表:源就是R3中已经存在的字段,目标就是R3中没有的字段。SE11建立一个表,所有的数据都是自己输入的。就是通过清洗表来得到一个对应的关系,通过一些数据来清洗出想要得到的字段,然后再DSO中读取使用。

 

2.Start routine(开始例程) 和end routine(结束例程) 代码中结构是否相同?

答:Start routine传入的变量是一个data的内表。而end routine是一个引用。

 

 

 

十二.事务码T-CODE

1. RSA5, RSA 6, RSA 7各代表什么意思?

答:RSA 5:显示Delivery版本的BI CONTENT,可以激活BI CONTENT。

RSA 6:显示Active版本的BI CONTENT。后台处理数据源事务码。

RSA 7:用来查看Delta Queque中的内容。

 

2,获利分析的T-CODE?

答:KEPM

 

RSA1建模    RSA3数据抽取,数据源提取检验    RSDS查看数据源

RSRV数据库的统计,可以得到维度表和事实表的大小。Debug测试。

SM59测试RFC连接      SM37看后台数据      SM12解锁(解开被锁定目标)

SE11,SE16,SE16N数据库表查询和创建

SE09看传输请求号,释放。

SBIW数据源后处理      STMS传输(basis做的)RZ11:设定gateway的连接数

SU01创建用户(权限)    PFCG把ROLE分配到用户名下(权限)

VF03显示发票      VA03看销售订单     XD03销售主数据     VL03交货单

MM03物料

LBWE定制事务码      KNA1客户主数据

CMOD数据源和BW增强      SMOD查CMOD使用组件的名字

RSPC处理链

SPRO加载时无字符串时查看用的     RSRTquery 监控器事务码

 

十三.变量

1.权限变量

答:权限变量就是动态的控制权限。

例如:公司代码是3000,则只能看到公司代码3000的数据,公司代码是动态的,权限根据公司代码来判断。

2.是否用过常量型变量。

答:常量变量就是比如产品维度中,产品中的产品组不变,但产品是可变的,产品组就是常量变量。

3.什么是变量?

答:变量是对于常量来说,变化的量。

4.变量种类?

答:一,特征性变量,在一个特性上建立变量,设置成用户手工输入,在POP UP上就会显示出来变量值。

二,层次节点,

三,文本和层次变量,

四,公式变量。

五,权限变量。

 

层次结构的权限类型

在多种方法中,可以定义源于层次结构节点的权限。

 

1. 类型0: 用户只是自己节点的权限。

2. 类型1: 另一个选项是给出节点和层次结构中它以下的所有节点和叶权限。如果在查询中显示一个层次结构,那么此选项是可利用的,并且用户在节点以下会自由导航。

3. 类型2:用户只是对于一个既定的等级,被允许看在一个节点和滚动格下面的所有节点和叶。(包括 看层次结构等级输入字段帮助)。等级必须指定在有关层次结构的绝对术语中。hierarchy.

4. 类型3:完成层次结构。这不只是包括最高的可视等级,也包括未分配叶的节点。

5. 类型 4: 特定等级节点的所有节点和叶。与类型2比较,等级指定在节点的相关条款中。

 

 

 

 

 

 

 

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的数据。

Cube可以对数据做压缩、聚集

Cube 是多维的星型模型,提高数据处理速度,减少冗余;dso :二维的存明细数据;dso上述需要激活、cube上述不需要激活;

7.你是怎么理解性能调优的?

答:CUBE优化包括压缩,分区,聚集和查询优化。

性能调优分两部分:query层面(数据提取出来后在query中整理展示)、DB层面(从的DB把数据提取处理啊)

DB层面:cube 的压缩使DB层面的数据尽量减少,压缩requst;压缩存在问题:压缩后不能根据request区分和删除数据;如果选择了with zero  ,把数据里真的是0的数据压缩没了;

压缩可以设置到处理链中(compression of the cube)

创建压缩(rollup)时可以系统推荐创建运行时间大于某个值的查询,可以自己创建;(能在数据链中要增加roll up这个环节;在cube中执行 roll up)

聚集:设置聚集,按照用户的使用习惯把用户的查询维度设置成一个个的小的cube,这是在提取数据的时候直接从小的cube中提取数据;

Query层面的优化:想一些公式、选择、条件等放在query里处理的数据的会影响到query的速度;

分区:可以安装逻辑分区,把数据按照一定的条件分开,放在不同的cube中;创建分区步骤:选择cube(修改)–附加-数据库性能—分区:cube的数据中有日期字段,可以按照日期进行分区;

 

手工创建两个cube比如:3个月内的cube、3个月之前的cube,在上述是在transformation中写把当前数据放入3个月内的cube,把3个月之前的数据移入到3个月之前的cube里;

广播的方式也可提供查询速度,每天需要把用户执行的查询条件提前执行,并放到内存中,在白天用户使用报表时直接从内存中读取数据;

分区:

8.什么是清洗表?在哪里用?

答:就是自建一张表,里面有关键字段和数据字段,然后例程中会利用这张表来清洗数据

,在转换的例程中用的比较多,用这个表的好处就是表里的内容可以随着业务变化随时

变,不用总是改程序。

 

9.BI CONTENTS激活后有没有自动加上INFOPACKAGE?

答:在DATASOURCE下面,先INSTALL好所有的東西之後,再手工去創建INFOPACKAGE,

INFOPACKAGE都是要自己手工去創建的。

 

10.你知道REAL-TIME有什么作用?

答:BW一般都是对历史数据分析用的,如果模型中需要实时的数据就要用到这种技术,但是这样系统效率很低,一般很少用到。

RDA(实时数据抽取)创建一个实时的cube,并加快delta抽取的时间,但是对于logistic数据源,V3job的抽取时间一定要和实时数据抽取一致或者短,要不实现不了实时;创建cube时选择实时:

 

基于功能模块就是通过写代码的方式,实时数据抽取;

11.R3目前有哪几种常见的数据提取方法?

答:LO提取:后勤数据提取,通用提取,CO-PA提取:财务里CO-PA,提取需要的字段和数据提取。

 

12.通用提取的数据来源有哪几种,是否可以DELTA加载?

答:TABLE/VIEW,INFOSET,FUNCTION MODULE,可以DELTA加载:。

 

13.LO提取的UPDATE MODE有哪几种?

答:Direct Delta:直接更新; Unserilized V3 update:无序的V3job, Queued Delta:队列增量, Serialized V3 Update。

 

14. RSA5, RSA 6, RSA 7各代表什么意思?

答:RSA 5:显示Delivery版本的BI CONTENT,可以激活BI CONTENT。

RSA 6:显示Active版本的BI CONTENT。

RSA 7:用来查看Delta Queque中的内容。

 

15. BI3.5和BI7.0加载数据步骤的区别?

答:BI3.5. 复制DATASOURSE3.x,创建Infosource, 建立DATASOURSE3.x和Infosource之间的Transfer rule,建立INFOCUBE/ods,建立Infosource和INFOCUBE/ods之间的update rule,创建Inpackage加载数据。

BI7.0. 复制DATASOURSE,建立INFOCUBE/DSO,建立DATASOURSE和INFOCUBE/DSO之间的Transformation,针对 DATASOURSE创建Infopackage,将数据加载到PSA,创建DTP,将数据从PSA加载到INFOCUBE/DSO.

 

16.LO抽取的步骤?

答:

一.传输DATASOURSE

二.维护提取结构

三.维护生成DATASOURSE

四.复制和激活SAP BI中的DATASOURSE

五.维护数据目标(DATASOURSE对象,INFOCUBE)

六.维护DATASOURSE和数据目标之间的转换

七.创建数据传输流程

八.激活提取结构

九.删除设置表/执行设置提取

十.选择更新方法

十一.增量初始化的infopackage

十二.必要时,计划V3集中运行

十三.增量上载的infopackage

 

17.数据源增强步骤?

答:一.在附加到DATASOURSE提取结构的附加结构定义要求的字段

二.写入你的功能出口以调用DATASOURSE的相关数据源

三.在BI中复制此DATASOURSE, 激活对应的DATASOURCE

四.为增强的DATASOURSE提取数据

 

18.什么是增量队列?(delta queue)

答:增量队列是新建或已更改数据记录的数据储存形式(上次数据请求以来出现的数据记录)。从系统收到数据请求时,会使用源系统中的更新流程或录入自动写入增量队列。

 

19.infopackage几种更新模式?

答:1完全更新2初始化增量流程(initial whit data,initial whitout data )3增量更新

20.什么是增量更新?

答:增量更新仅为源系统中的请求上次加载以来已创建或已更改(或已删除)的数据记录。

 

21.各个增量流程都支持哪些记录类型?

答:后像 空格;前像 X;反转象 R; 新象N;删除 D; ADD A。

 

22.平面文件的增量流程原理是怎么样的?

答:如果增量流程使用平面文件,数据不会通过增量队列传输到BI ,而是直接从DATASOURSE 加载到PSA。

 

23.DSO分类有那几种?

答:标准DSO:3个表:有效表、NEW表,changelog表;优化DSO:有效表,直接写入DSO:有效表(通过程序直接写入)。

 

24.DSO对象的不同类型?

答:

1.标准DSO对象,具有已知的表活动数据、更改日志和激活队列。

2.优化的对象,针对大量数据仅具有一个活动数据表。

3.直接写入的对象,仅具有一个可用于分析程序(分析程序设计器)的活动数据表。此DSO对象替换早期版本中的事务性对象。

 

25.什么是多重提供器(mutli provider)?

答:是一种,它综合了多个的数据以用于报告。供者本身不包含任何数据。数据由所基于的这些合在一起进行合并操作。

 

26.什么是信息集(info set)?连接方式:left out join,join

答:信息集通常定义为数据,标准信息块;信息对象是时间相关特性,则交集是时间相关或临时交集,是数据源上的语法层。与典型集是特定的数据视图。

 

27.非聚集Key Figure、原理?

答:非聚集Key Figure有点类似计算字段,是从另外字段计算出来的。

 

28.什么是流程链?

答:流程链是一系列计划要在事件的后台等待的流程。这些流程中有些触发了单独的事件,该事件可以依次启动其他流程。流程链的每个流程等于计划与事件相关的基础系统中已批准的作业。

 

29.流程链–维护?

答:

* 通过事务代码调用流程链维护Tcode :rspc

* 在管理功能区域,选择导航窗格中的流程链,以调用流程链维护

* 在建模功能区域,通过选择工具栏上的流程链图标(或者从菜单选择编辑 → 流程链),您可以调用流程链维护。

* 选择工具栏中的流程链维护按钮,以便从所支持流程的维护对话访问流程链维护

在监控处理链经常出的问题:在处理链中由于ECC字符和BW定义的字符格式不一致,在上述时激活造成报错;

30.R/3系统抽取数据到BW系统里,是否必须要在R/3建立logical system,并指定?

答:从R/3系统抽取数据到BW系统里,必须要在R/3建立logical system,并指定。可以自己做一个DATASOURSE,也可以用RSA5 激活一个系统自带的\DATASOURSE(在R/3下)。步骤大概是R /3 创建logical system,BW 创建logical system,然后创建两个background

user,一个R/3的一个BW的,互相通信用。然后在BW创建个source system , transfer

R/3 global setting(change rate 也要传输),然后再复制data source。

 

31.建立模型时的导航属性具体含义是什么?

答:是在做查询的时候用的,过程是这样的,首先在主数据的导航属性里面选择某一个字段,例如物料主数据的物料组设置成 了导航属性,然后在INFOCUBE里面还有一个设置导航属性的地方,这里就是该INFOCUBE里面全部特性的导航属性的和(如果在特性里面没有选择导航属性,在INFOCUBE里面也找不到),在 INFOCUBE也选中该属性为导航属性后,物料组就可以作为物料的一个导航属性存在了,在做查询 的时候,物料组(在特性里面物料的下拉菜单中就会出现)就可以成为一个查询条件了或者做其他限制了。

 

32.把BW报表发布到EXCEL上,有一个变量日历年月,每天打开窗口时选择变量值时都是按顺序排的,因为Cube里的数据多较多了,每次都要翻好几页,有什么办法让弹出窗口

的信息是倒序排列的?

答:方法1.你可以于变量输入窗口,选择“单值”,点击“日历年/月”条目,可以切换

排序方式(升序或降序)。

方法2.可以用“日历年”加“日历月”变量替换“日历年/月”变量,同时设定查询默认值,这样可以减少条目数。

 

33.Query中的数据如何居中显示呢?

答:

1. 选择要修改的区域

2. 点击Bex 菜单中的Layout, 选择alignment

3. 设置Horizontal 为center

4. 保存Workbook即可在 query designer 中的 query properties, Display tab 可以选择 results position in number format, 可是只有 Bottom Left/Right, Top Left/Right. 没有居中。

 

34.对INFOCUBE进行数据显示时,发现某一条记录里有一关键值A,其值为23.3

同时对应的MulitProvider进行数据显示时发现该记录的关键值A的值为0.能过Query进行报表显示时,该记录的关键值同样显示为0?

答:MulitProvider中添加了INFOCUBE中的KF,但是没有指定从哪个INFOCUBE中获取;

在MulitProvider编辑界面左上角有按钮select key figures,点进去,在你需要的INFOCUBE的KF前打勾。

 

 

35.BI数据源系统激活时提示以下错误。no metadata upload since upgrade rsar 672怎么解决?

答:分步检查,缩小范围:

1.确认BW的源系统连接是有效的:BW系统的RSA1->源系统->选择你需要的源系统,用鼠标右键点击check。

2.如果源系统有问题,可以用sm59测试看看RFC连接是否正确。

3.如果源系统没问题,可以重新复制数据源。

4.正常此步骤后复制过来的数据源应该就是正确的。

 

36. BW采购标准CUBE问题,现在报表显示的字段为:

“物料,供應商,采购单号,物料文件号,交貨单号,工廠,交货库存地点,过賬文件(Reference),數量,单位,PO交貨日期,建立日期”,这几个字段的数据。但 Reference, Delivery 二个字段在采购的数据源中:

2LIS_02_CGR

2LIS_02_HDR

2LIS_02_ITM

2LIS_02_S011

2LIS_02_S012

2LIS_02_SCL

2LIS_02_SCN

2LIS_02_SGR

2LIS_03_BF

2LIS_03_BX

中都找不到,在提取结构中也没有发现。

在2LIS_02_ACC 中找到了交货单,没有记录,所以认为不是在这个数据源。

2LIS_06_INV 有Reference 这个字段,但内容值对不上。

现在采用标准的数据源,CUBE来做,暂不想做增强。

MKPF 表存在物料文件号与交货单号,RSA3/LBWE中的采购部分的结构没有看到交货单字

段。

答:需要做增强或者自定义数据源抽取。

 

37.如果要抽一个表,但是数据源不能相同,在哪里设计?

答:在信息包里面设置。

 

38.什么是INFOCUBE?

答:INFOCUBE就是信息立方体,使用星型结构存储并分析数据的载体。意义在于进行多维数据分析和统计。

 

39.在query designer内建立calculated key figure,因为我想要他的公式结构,未来可以自动化的将所有CKF的公式汇出。但在modeling里只有看到一般的key figure,没有CKF?

答:在Modeling Tree下面的BW移送->移送type->Query->Formula,层次是这个关系,可以看到。

 

40.如果修改了信息对象,信息包上载数据报错?一般怎么解决?

答:重新去复制一下数据源。

 

41、写优化的DSO适用场景:

答:一般是用在比较少变动的,因为没有new表  没有日志表,写优化一般在实际项目中底层的dso用写优化的比较多,底层dso只是为了保存数据,不经常变动。不用激活就可以直接上述。以下场景中经常用到:

A、构建EDW的原始数据层,无报表需求,不需要激活,ETL过程更快

B、存储大量document level的明细数据

C、每次加载的都是新数据,数据不发生变化

D、临时存储数据

E、实际项目中,写优化DSO通常用于存储财务凭证和物料凭证,这些凭证一旦发生就不会修改

 

42、直接更新的DSO适应场景:

答:在创建完之后,发现右键菜单下,没有了dtp,infopackage等功能。用写程序直接更新,一般用来做一定的应用,如APD。是通过BW中的业务平台,将数据通过API的方式,直接写入的,比如监控某几张报表的使用频率,直接写程序把访问数据写入表中。在CMOD中写代码;

 

43、BW的一些参数设置,比如:ECC和BW连接的参数设置:

答复:rsa1 –源系统-ids集团800 - 右键 定制提取器–输入用户名 密码 –一般设置 业务内容数据源 可以设置ECC和bw连接的一些参数;

44、BW中传播的功能和设置?

答复:报表传播功能:把报表执行的数据执行存在缓存中。一般都在bo port里对每张报表设置(设置的条件等与用户查询的条件完全一致)

rsa1 - 传播–设置(前提在port中建传播),日志可以查看传播;

rsrt–高速缓存监控-查看缓存

 

45、query中如何设置可以提供报表的执行效率?

答:提高报表速度:在query designer中尽量把明细的字段放在”自由行“里,提高报表的查询速度;尽量用多的表格,少用图片;

46、实际项目中涉及到文档:开发文档(更注重于每个点的细节每个dso等里字段、数据来源、data source的定义)、模型设计文档(更注重于模型架构图、流程图)、测试文档;项目中各个阶段有那些输出物:需求调研阶段:需求调研文档(大概报表的一些信息、报表数量,每个报表展示的大概数据)、设计阶段:设计文档(模型设计文档)、开发阶段(开发文档)、UT(测试文档)、uat(用户的测试文档)、上线;

 

47、如果DSO的key不够用怎么办?

答复:dso的key最多是16个,如果一个表中的key超过16个了,可以把key合并,比如:key1(10)、key2(6),可以建一个长度是16的key,把两个字段上述到一个字段里。

一般dso中很少用到,在cube中最多有13个维度,在cube中可以把两个dimension id合并成一个dimension id;

 

48、TCODE:RSA9: 传输应用层次结构(先传输层次结构:MM、sd、pp等)

 

49、BW中权限的控制:

答复:报表权限:报表的权限在bo、port中控制;

数据权限:(1)定位对那个字段做权限控制、(2)特性-业务浏览(相关的权限勾选上)、(3)query desinger变量的出理由选择权限,(4)rsa1-管理-分析权限-在分析权限中进行管理;

 

50、CUBE中创建维表时的行项目维、高基数维的应用和优势:

答复:当维表中的特性超过了cube所有特性的20%以上时,需要把维设置成高基数维;可以调整物理表结构,提高性能;

行项目维:f表直接连到sid表,中间的dimension表就不用了,提高查询速度;

 

51、psa和dso new表key是完全一样,他们的数据是完全一样的,dso中new 表和有效数据表是根据dso中的增量机制管理、上述;

 

52、ABAP在BW中哪些功能模块会用到:

答复:(1)rultin:start 、end 、连线rultine; (2)CMOD:ECC侧数据数据增强提取数据、(3) CMOD:bw侧的变量增强;

 

posted @ 2015-03-09 14:23  江正军  阅读(8943)  评论(2编辑  收藏  举报