首页 > 代码库 > SAP BO 技术

SAP BO 技术

1、联接路径问题:

   – 环路

     在关系数据库模式中,返回太少行的一种常见联接路径称为环路,环路是一组联接,   它定义了经过模式中的一组表的闭合联接,如下图:

  

    

      解决办法:创建别名表(基表的副本)。


   – 断层陷阱(chasmtrap)

     断层陷阱是关系数据库模式中的一种常见问题,其中联接路径返回了比预计更多的数据,断层陷阱是当两个“多对一” 联接会聚在一个表上时三个表之间的一种联接路径,

     并且没有适当地分隔会聚联接路径中的上下文,如下图:

    

    

      解决办法:为每个事实表创建一个上下文,此方法适用于所有情况。

   – 扇形陷阱(fantrap)

     扇形陷阱是关系数据库模式中仅次于断层陷阱的常见问题,它的影响与返回比预计更多的数据相同,当“一对多”联接链接了依次由另一个“一对多”联接链接的表时,

     扇形陷阱是三个表之间的一种联接路径,如下图:


    解决方法:创建别名表(基表的副本),然后在别名表与基表之间创建一个新的联接,最后构建上下文。

 

2、派生表、别名表的概念、实现方式以及它们各自的优缺点?

   派生表类似数据库视图,别名表为数据库物理表在Universe中的重命名;

   派生表可以灵活地处理较为复杂的数据逻辑,但是效率低;

   别名表根据业务需要设置,一般用来解决Universe中的环路问题。

 

3、Universe设计的要点以及注意事项?

   设计要点:

   a、业务问题的分析和规划Universe解决方案

   b、设计模式

   c、构建Universe

   d、将Universe分发给用户

   e、维度对象按维度分开放置

   f、度量对象按主题放置

   g、提示与维度和主题对应

  

   注意事项:上下文、环路、断层陷阱、扇形陷阱、基数、BO开发规范等。

 

4、怎样快速分析、定位并解决BO报表问题(测试):

 

5、报表性能优化的策略:

   a、逻辑运算向后移,即:报表层向Universe移,Universe层的向后台移

   b、在报表上添加查询条件,减少返回分析的数据量

   c、建立物化视图

   d、避免建立复杂Universe,即一个Universe包含很多事实表,可根据情况适当拆分

   e、设置多个数据请求,做到数据并行查询

   f、数据库优化(表索引、关联条件等)

 

6、客户化开发:

   其目标是方便客户使用,尽量将度量、纬度、筛选条件等对象公开、合并,并命名为用户易于理解的名称,方便用户自行拖拽组合。

 

7、变量的创建:

   Universe和WEBI报表都可以创建变量,但Universe的变量可供用到该Universe的所有报表使用,而WEBI报表的变量只能供该报表自身使用。

 

8、WEBI报表的合并查询、警报器、合并维:

   合并查询即SQL中的Union操作,各个查询需要保持查询对象个数以及类型的一致性。警报器是做数据预警使用的,当数据符合某一条件时可以按照用户需求来展示特定内     容。 合并维即将多个Query里相同的纬度合并,展示成一个纬度,当报表中使用合并维时,报表会根据度量来查找相应Query的纬度查询数据,但是,如果报表比较复杂,使用合并维生成的数据可能就会乱套,此时应该禁用合并维功能。

 

9、什么情况下用多个Query查询?

   a、查询主题不同时

   b、查询效率低下时

 

10、报表自动生成的SQL语句拿到数据库查看数据没有问题,报表结果却是不对的,原因:

    Universe的数据库联接有问题。

 

11、对上下文的理解:

     上下文是一组联接的集合,即一组数据库表的关联关系,它为WEBI报表提供了有效的 查询路径,以使报表能够生成正确的SQL语句。

 

12、关于测试:首先,BO顾问要自行进行单元测试,BO顾问需要首先确保BO这边所做 的变量及逻辑正确,一般数据问题大多是BW端问题;其次,BO顾问与BW

         顾问一起进行集成测试;最后,两方面都没有问题以后,再让客户进行测试。

 

13、以BW为数据源的BO项目,顾问重点放在开发报表上,Universe是自动生成的,所以无需花费过多工作量;开发之前需与客户明确报表格式及使用哪种BO报表工具;以外

        围系统(非SAP系统)为数据源的BO项目,重点放在Universe的设计上,先设计出正确合理的Universe,再设计报表。


SAP BO 技术