Additional Blogs by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 
former_member211324
Discoverer
0 Kudos

原文地址(英文):

http://wiki.scn.sap.com/wiki/display/BOBJ/Conversion+from+Desktop+Intelligence+to+Web+Intelligence#C...

作者:Hansen Chen 现就职于SAP


在这篇文章中,我们将会比较Web IntelligenceWebi)和Desktop Intelligence在各个功能实现方面的不同点,

从而让您更好的完成报表从DeskIWebi的转换。一般来说,BI4.0Webi继承了来自DeskI大部分的功能。

尽管可能一些功能的实现要依赖于替代方案(workaround)来实现。

第一部分提供了一个DeskIWebi在功能方面的基本概况,第二部分详细的描述了功能的变更。


关于Desktop Intelligence和Web Intelligence功能方面的比较(概述)

(tick) 这个功能被完整的保存,或者可能需要更换操作流程来实现它

(warning) 这个功能部分保存,有一个不同的操作流程或者依赖于替代方案来实现

(error) 这个功能被移除

不可以被转换的功能DeskIWebi3.1Webi 4.0
#OLAP 数据提供者(warning)(tick)(tick)
#XML 数据提供者(tick)(warning)(warning)
#Visual Basic 数据提供者(tick)(warning)(warning)
#Freehand-SQL(tick)(warning)(warning)
#使用运算符进行过滤(tick)(warning)(warning)
#用户自定义对象(tick)(error)(error)
用防护密码保存文件(tick)(error)(error)
可以部分被转换的功能
#设置自动刷新(tick)(error)(error)
#在measure中使用分析范围过滤器(tick)(tick)(tick)
#内容运算符(tick)(tick)(tick)
#方差和方差的百分比计算(tick)(error)(error)
#通过公式设置复杂的过滤器格式(tick)(error) (warning)(error) (warning)
#块(block)和全局过滤器(tick)(warning)(warning)
#在块中设置一个measure作为过滤器(tick)(tick)(tick)
#在多个dimension中插入同等级的拆分(break)(tick)(warning)(warning)
#为一个不在块中的对象设置拆分(tick)(warning)(warning)
基于值(value)的拆分(tick)(warning)(warning)
#DeskI功能(tick)(tick)(tick)
#为一个不在块中的对象排序(tick)(warning)(warning)
#双轴列型图(tick)(warning)(tick)
#不同的组(group)构成的统计图(tick)(error)(error)
#通过VBA宏来自定义和拓展功能(tick)(warning)(warning)
#在交叉表中设置越界(Across Edge)(tick)(error)(error)
#在页眉页脚中设置拆分(tick)(error)(error)
可以被完全转换的功能,但是包含一些变更
折叠/展开(tick)(warning)(tick)
对query排序(tick)(error)(error)
获取(Retrieve)上数N行的数据(tick)(warning)(warning)
“删除结尾空白”的功能(tick)(warning)(warning)
“不要获取数据”的功能(tick)(tick)(tick)
“不要在执行报表前生成SQL语句”的功能(tick)(warning)(warning)
在公式中排序(tick)(error) (warning)(error) (warning)
Windows OLE对象(tick)(error)(error)
图片格式(tick)(tick)(tick)
动态图片或OLE对象(tick)(error)(error)
页面设置功能(tick)(tick)(tick)
数据格式(tick)(tick)(tick)
单元格阴影(tick)(warning)(warning)
变量描述(tick)(warning)(warning)
用组中的多个值来定义变量(tick)(warning)(warning)
在统计图中的序列(Series)的颜色(tick)(error)(error)
存储过程作为数据提供者(tick)(tick)(tick)
多个列的表(table)(tick)(error)(error)
设置负数来实现模块的关联(tick)(error)(error)
将模块集中在页面的某一位置(tick)(error)(error)
通过条件控制隐藏节(Section),表,统计图,dimension(tick)(warning)(tick)
常用功能的比较
数据管理(tick)(error)(tick)
选择Universe(tick)(tick)(tick)
公式编辑器的可用性(tick)(warning)(warning)
在公式编辑器中调用值的一览 List of Value(LOV)(tick)(error)(error)
个人的List of Value(tick)(error)(warning)
用户定义hierarchies(tick)(error)(error)
通过日,周或月来预定义一些排序(tick)(warning)(warning)
在排名定义面板中添加小计和百分比(tick)(warning)(warning)
打印到当前页面(tick)(error)(tick)
在文件中搜索(tick)(tick)(tick)
拆分窗格来固定表头(tick)(error)(error)
模板(tick)(error)(error)
查看结构(tick)(tick)(tick)
刷新Universe(tick)(error)(error)
缩放网络图像(tick)(warning)(warning)
重复的变量(error)(tick)(tick)
查看全部报表的结构(warning)(tick)(tick)
Prompt顺序(warning)(tick)(tick)
用户输入prompt(tick)(tick)(tick)
为个人数据更改对象类型(error)(tick)(tick)
同步的数据提供者(error)(tick)(tick)
在Office文件中复制/粘贴文本格式的表(error)(warning)(tick)
以HTML格式把报表保存到我的电脑(tick)(error)(error)
以CSV(数据)的格式把报表保存到我的电脑(tick)(tick)(tick)
以TXT格式把报表保存到我的电脑(tick)(warning)(warning)
以RTF格式把报表保存到我的电脑(tick)(error)(warning)
发布传送规则(tick)(error)(error)
发布方法(tick)(warning)(warning)
以Excel,PDF,CSV格式发送邮件(tick)(tick)(tick)
计划到打印机(tick)(error) (warning) (error) (warning)
输出到XML(tick)(error) (warning) (error) (warning)
Webi中的新功能
在DesI中没有相应的替代功能
创建客户定义的功能函数(error)(tick)(tick)
可选的prompt(error)(tick)(tick)
合并单元格(error)(tick)(tick)
queries的排列(又叫数据库排列)(error)(tick)(tick)
显示/隐藏空表(error)(warning)(tick)
支持数据库依存的measure集合(error)(tick)(tick)
对于一个单元格定义相对/绝对位置(error)(tick)(tick)
排名累计总和(error)(tick)(tick)
表中的交替行颜色设置(error)(tick)(tick)
报警器设置多个条件(error)(tick)(tick)
在DesI中没有替代策的功能
动态过滤器(输入控件)(error)(tick)(tick)
query剥离(error)(tick)(tick)
跟踪数据变化(error)(tick)(tick)
在Server端把排列作为Query过滤器(error)(tick)(tick)
改进prompting(error)(tick)(tick)
格式刷(error)(tick)(tick)
网页钻取(error)(tick)(tick)
改进图标功能(CVOM)(error)(error)(tick)
分层导航(Dimensional SL)(error)(error)(tick)
复制/粘贴增强(error)(error)(tick)
WebI新的数据源
支持SAP数据源(error)(tick)(tick)
支持Dimensional UNX(error)(error)(tick)
支持Muti-Source UNX(error)(error)(tick)
Bex query的BICS 连接(error)(error)(tick)
Analysis View(与SAP BusinessObjects Analysis的交互)(error)(error)(tick)

1. 不可以被转换的功能


不是所有的DeskI文件都可以通过Report Conversion Tool(RTC)进行转换。能转换到什么程度取决于原报表使用的功能。

Web Intelligence中不存在的功能无法完成转换。在这部分中,我们会列出DeskI中不能被转换的功能,并且提供WebI中实现此功能的替代方案。


OLAP 数据提供者
DeskIDesI支持很多类型的OLAP数据提供者。
WebI

在WebI中,user可以不通过OLAP数据提供者而通过OLAP universe来创建文件。特别是在BI4.0中,你可以在最高空间的语义层中创建报表。

而且这有助于更好地实现OLAP功能。由OLAP数据提供者创建的DeskI文件不能被成功转换,你需要创建一个UNX universe然后再基于这个

universe创建报表。

XML 数据提供者

DeskI在DeskI中,XML可以直接作为数据提供者。
WebI

由XML构成的DeskI文件,不可以用RCT转换。

在WebI中,你可以使用第三方的DB drivers连接到XML,然后基于Universe构成报表,请参考以下文章:

1.通过universe访问XML数据  https://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/11419

2.用Oracle通过语义层访问XML数据  https://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/11424

3.通过IBM DB2工具以及Web服务访问XML数据  https://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/11428

您也可以选择使用Custom Data Provider 插件来开发您自己的数据提供者,允许您在Web Intelligence中使用可能的任何数据提供者。

开发者文档如下:

http://help.sap.com/businessobject/product_guides/boexir31SP2/en/xi31_sp2_cdp_dev_en.pdf

Visual Basic 数据提供者

DeskI在DeskI中,Visual Basic可以直接作为数据提供者。
WebIVisual Basic做成的DeskI不能被转换。然而,

您也可以选择使用Custom Data Provider 插件来开发您自己的数据提供者,允许您在Web Intelligence中使用可能的任何数据提供者。

开发者文档如下:

http://help.sap.com/businessobject/product_guides/boexir31SP2/en/xi31_sp2_cdp_dev_en.pdf

基本上这个应该可以让Visual Basic数据提供者在WebI中重新使用。

Freehand-SQL

DeskI

在DeskI中,Freehand-SQL可以直接作为数据提供者。

WebI在RCT中,您可以勾选“Convert with freehand-SQL”完成转换
使用运算符进行过滤
DeskI

在DeskI中,您可以在query panel中定义运算符,例如,下面是由运算符生成的查询

Select col1,col2,col3

from table1

group by col1,col2

having ( sum(col3) > all

select sum(col3)

from table1

group by col4

)

WebI

这个类型的DeskI文件不能被转换,WebI没有这个快捷方式,但是可以各个query自行定义。

例如,要实现上述功能,你需要创建两个query。

query1

select col4,sum(col3)

from table1

group by col4;

query2

Select col1,col2,col3

from table1

group by col1,col2

having sum(col3) > @dapvalue('N', DP0.D093, MAX)

用户自定义对象
DeskI在DeskI中,权限足够的用户可以为Universe的对象赋予变量(变量可以重复使用在报表中)。通过这个功能,你可以定向改变从universe中得到的数据。例如:在从DB中得到的数据后面加上字符串,更改universe的定义(从Dimension改成Measure或Detail)
WebI

带有用户自定义对象的文件不能被转换。您可以在既存universe中创建同样对象,替代DeskI中的用户自定义对象,然后在进行zhuanhuan。

在Webi中实现类似功能:

1.创建一个变量,把一个既存的dimension改成detail或者measure

2.在数据源上创建过滤器

3.从一个文件中复制粘贴变量到另一个文件

用防护密码保存文件
DeskI在保存界面,你可以设置防护密码。
WebIWebi不支持此功能。CMS中的认证方式替代了这个功能,带有防护密码保护的DeskI文件将不能被成功转换。请您在转换之前手动删除密码保护。
此外,如果DeskI文件中包含的变量引用了另一个不可以被转换的变量,则文件不能被转换。您需要手动更改这些变量在进行转换。

2. 可以部分被转换的功能

相同的任务可以在DeskI和WebI中以不同的方式被实现。在这部分中,我们会列出这些功能并且讨论他们在DeskI和WebI中是如何工作的。

设置自动刷新
DeskI在文件层面,DeskI文件可以设置自动刷新。
WebIWebI需要依赖于BI Launch Pad(InfoView)去计划刷新,在转换的过程中,刷新的设置被删除掉了。在转换完成后,您可以计划此报表来完成刷新的操作。
measure中使用分析范围过滤器
DeskI

在DeskI中,如果一个query同时包含“分析范围过滤器”和“汇总过滤器”,分析范围过滤器会作为Having过滤器的一部分被表现出来,参考下面的例子:

SELECT

sum(TEST2.CODE),

TEST2.CODE,

TEST2.NUMBER,

TEST2.PRICE

FROM

TEST2

GROUP BY

TEST2.CODE,

TEST2.NUMBER,

TEST2.PRICE

HAVING

( sum(TEST2.CODE) > 0 )

WebI

WebI通过另一种方式生成query

SELECT

sum(TEST2.CODE),

TEST2.CODE,

TEST2.NUMBER,

TEST2.PRICE

FROM

TEST2

WHERE

CHAR(TEST2.CODE) ||' '|| CHAR(TEST2.NUMBER) In

(

SELECT

CHAR(TEST2.CODE) ||' '|| CHAR(TEST2.NUMBER)

FROM

TEST2

GROUP BY

CHAR(TEST2.CODE) ||' '|| CHAR(TEST2.NUMBER)

HAVING sum(TEST2.CODE) > 0

)

GROUP BY

TEST2.CODE,

TEST2.NUMBER,

TEST2.PRICE

当使用Report conversion tool进行转换的时候,query会被变成WebI展现的方式。WebI的表现方式更符合大多数使用情况,因为DeskI中的query有时根据user不能返回数据。

内容运算符
DeskI在DeskI中,您可以在一个函数中使用内容运算符,比如 Where
WebI文件将会被部分转换。包含内容运算符的变量将在转换的过程中被删除。虽然在WebI中,大多数的内容运算符都被保留下来。用户可以重新创建这些变量,除了“In Currentpage”这个运算符。除此之外,WebI中的“Where”可以支持更多的符号,例如Inlist,>,<等。
方差和方差的百分比计算
DeskI

在DeskI中,有用于计算两个选定值之差的快捷方式。

WebI包含这个功能的文件将会被部分的转换。在转换过程中,运算将会被移除。在Webi中,除了用交叉表,选择水平或垂直表,保持一个dimension原状,把另一个dimension变为变量,如:[Revenue] where ([City]="City1"), [Revenue] where ([City]="City2"),再建一个变量:[Revenue] where ([City]="City1") - [Revenue] where ([City]="City2")就可以完成这个计算。最终垂直或水平表将会展现出交叉表所展示的期待的差值运算。
通过公式设置复杂的过滤器格式
DeskI

在DeskI中,这个功能允许公式去定义一个过滤请求是否能被完成。操作流程是:右键点击表->设置过滤器格式->定义->添加一个变量->定义。

用户可以创建类似这样的公式:show me all data where varA < varB" with the feature.

WebI

可以被部分转换。在转换过程中过滤器被删除。在WebI中,可以通过变量完成此功能。操作流程是:直接创建一个类似变量:

varC = if (varA < varB) then 1 else 2", then add a filter like "varC = 1

(block)和全局过滤器
DeskI

在“过滤器格式”页面,你可以从多个块中拖拽过滤器,并且可以把它们做成全局过滤器。

WebI在转换过程中,一些情况下复杂的块和全局过滤器可能会被删除。在WebI中,不可以从多个块中拖拽过滤器,您需要手动的为每个块增设过滤器。您也可以选择使用输入控件(Input Control)来实现过滤功能。它提供了选择过滤器范围的功能。

在块中设置一个measure作为过滤器

DeskIDeskI可以实现这个功能。
WebI在转换过程中设定被移除。您可以在转换完成后添加过滤器,或者考虑使用输入控件。
在多个dimension中插入同等级的拆分(break)
DeskI当定义一个拆分的时候,您可以在同一个简单的level对不同列做拆分
WebI在转换过程中,设定被移除。Webi中,可以通过格式选项来完成这一功能。例如,您可以首先创建2个拆分,在“管理拆分”界面,把其中一个拆分设置显示页眉页脚,而另一个不显示。
为一个不在块中的对象设置拆分
DeskI在DeskI中可以实现这一功能。
WebI在转换过程中拆分被移除,在WebI中,您可以把一个不再块中的列上设置节来实现这一功能,然后移除节的标签
基于值(value)的拆分
DeskI当定义拆分的时候,你可以从要做拆分的dimension中选择拆分的值。例如:当dimension<City>包含这些值:DC, Boston和Seattle,您可以只在"DC"上做一个拆分,另外的值不会受到拆分的影响。
WebI

转换过程中拆分被移除,在WebI中,同样的功能(其实仅仅是看起来一样...)可以通过公式设置来完成。例如:创建一个变量如下:

=If ([City]="DC") Then "DC" Else "Other cities"

再在变量上设置节,最后移除掉节的标签。

DeskI功能
DeskIDeskI中有一些WebI没有的独特功能,例如:ApplicationValue, BlockNumber, CurrentPage, GetProfileNumber, GetProfileString, Hyperlink, OLAPQueryDescription, PageInSection.
WebI

在转换过程中,这些功能被RepFormula("original_syntax")所替代。此外,CountAll功能变更为Count([object_name]; IncludeEmpty; All)

MultiCube重命名为ForceMerge

为一个不在块中的对象排序
DeskI

在DeskI中为了实现这一功能,您需要添加一个不再块中的dimension作为拆分,在拆分的定义中,把拆分的页眉和页脚无效化,

然后这个看不见的拆分就会看起来像一个表中的排序了。

WebI转换过程中排序被移除。栽WebI4.0中,您可以在表中添加一个额外的列,进行排序,然后再把这个列移除掉。
双轴列型图
DeskI在DeskI中,您可以创建双Y轴折线图,可以用来展示不同的measure,通过在Axes and Gridlines界面有效化辅助Y轴来实现
WebI转换中只有第一个Y轴被保存。在3.1中,您可以创建分离统计图。4.0中,WebI保留了DeskI的一部分统计图功能,包含了双轴列型图,并且添加了许多DeskI中没有的统计图类型。
不同的组(group)构成的统计图
DeskIDeskI允许不同组的数据来构成一个统计图。在统计图格式界面,您可以添加额外的组。每一个组都可以有不同的统计图类型。
WebIWebI不支持这一功能,转换后只有第一个组会被保留。
通过VBA宏来自定义和拓展功能
DeskIDeskI中,VBA可以被windows应用程序所使用,而不是基于网页的应用程序
WebI

转换过程中VBA宏被删除。

VBA宏更经常被用于完成publishing的工作,现在由Platform来完成。

(http://help.sap.com/businessobject/product_guides/boexir31SP3/en/xi31_sp3_publisher_en.pdf)


此外,WebIntelligence中也有许多可用的用户自定义功能。您可以使用Calculation Extension Pointslai创建自己的功能函数。您可以通过 ReportEngine SDK来自定义WebI报表的表现形式。使用Extension Points来完成WebIntelligence Report viewer的自定义;使用Custom Data Source Framework来自定义您的数据提供者。请参考如下文档:

1.额外功能的创建(WebI的格式语言中可用的自定义功能)

http://help.sap.com/businessobject/product_guides/boexir31SP2/en/xi31_sp2_webi_calc_ext_en.pdf

2.报表执行时的自定义(文件的执行,prompts,钻取,报表元素,等等...),通过ReportEngine SDK (JAVA and .NET)来实现。

语言样板: http://www.sdn.sap.com/irj/boc/samples?rid=/webcontent/uuid/30e2b6d2-2784-2b10-59b6-95b2d8c50a02

重建对象模型: http://help.sap.com/javadocs/boe/xi/re/en/index.html

3.自定义WebI报表的接口,通过 Extension Points (DHTML, Java Report Panel, WRC)来实现。

http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/18429, http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/20858,

http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/17696 

4.数据提供者的创建 :WebIntelligence Custom Data Source (CDS) Framework是WebI胖客户端中提供的一个插件

http://help.sap.com/businessobject/product_guides/boexir31SP2/en/xi31_sp2_cdp_dev_en.pdf

在交叉表中设置越界(Across Edge)
DeskI在DeskI中,您可以设置交叉表中越界的显示和隐藏。
WebI在转换过程中,设定被移除
在页眉页脚中设置拆分
DeskIDeskI中有这个功能。
WebI在转换过程中设置被移除。
通过Report Conversion Tool,除了这些只能部分被转换的文件,您可能发现还有一些不能被发布(publish)的文件。这是因为RCT不能找到关联的universe,这些文件可以被正常的打开和浏览,但是不能刷新。

3.可以被完全转换的功能,但是包含一些变更

因为WebI通过一些不同的方式实现一个功能,所以当转换完成后文件可能有一些改变。在这部分中,我们会列出所有转换中可能存在的改变。

折叠/展开
DeskI在DeskI中,您可以折叠/展开表,节和拆分。
WebI

在WebI中,XI3.1 SP2以后开始支持这一功能。转换后,报表中的所有元素都是展开的。

在BI4.0中,该功能已经得到了加强,折叠垂直和水平方向上的节,表和拆分都成为了可能。而且,你可以在web上完成折叠/展开操作,而这一操作在DeskI中是无法完成的。

query排序
DeskI在DeskI中,您可以在query级别设置排序
WebIWebI不支持此功能,在转换过程中,此功能被移除。在WebI中支持报表级别的排序

获取(Retrieve)上数N行的数据

DeskIDeskI中,您可以在设计query的时候进行排序操作,并且在query选项面板,通过设置行数来获取一部分的数据。通过前面两个功能,可以实现获取上数N行的数据。
WebI在WebI中,您可以选择要获取的行数,但是您不可以在query level进行排序,所以您不可以直接实现这个功能。无论如何,您可以选择使用排名(Rank)这一功能。在转换过程中,排序被移除,您需要在报表级别重新定义排序。
“删除结尾空白”的功能
DeskIDeskI用户可以在query panel面板中同步实现此功能。
WebI

此功能在转换过程中被移除。在WebI中,此功能应在universe level实现。但是对于本地的资源来说,您必须编辑单元格来删除结尾的空白,

在4.0以后,您可以通过“合并变量”来实现删除前后的空白后合并这一功能。

“不要获取数据”的功能
DeskI不用获取数据就可以构建报表结构。
WebI在转换过程中功能被移除。在WebI中,您可以通过一个不同的方式实现这一功能。在编辑query panel界面,“关闭”按钮的旁边有一个箭头,点击这个箭头,您可以看见两个选项“应用更改并关闭”和“恢复更改并关闭”,如果您选择第一个选项,您会转到编辑报表模式,然后您就实现了不获取数据构建报表的架构的过程。在4.0以后,您可以首先创建报表,然后再从数据提供者中取得数据。
“不要在执行报表前生成SQL语句”的功能
DeskI在定义query的时候有这个设定。
WebI在转换过程中设定被移除。在WebI中,有个选项叫做“使用自定义SQL”,也可以防止编辑好的SQL被重写。
在公式中排序
DeskIDeskI可以实现此功能。
WebI在WebI中,您可以创建一个变量然后在变量上设置排序。在转换过程中,一个变量会被自动创建,然后排序会创建在变量上。
Windows OLE对象
DeskIDeskI可以包含Windows OLE对象。
WebIWebI不支持此功能。在转换过程中,OLE对象会变为GIF格式
图片格式
DeskIDeskI中,内嵌的图片保存在TIFF格式中。
WebI在转换过程中,会变为GIF格式
动态图片或OLE对象
DeskIDeskI支持动态图片和OLE对象,例如,在运行时计算路径或者使用“Read as pictures”功能。

WebI

在转换中,对象被移除。
页面设置功能
DeskI您可以为每一个文件设置页面选项
WebI在转换过程中,原有的设置被移除,Web Intelligence默认的设置会被执行。
数据格式
DeskIDeskI的数据格式和WebI有一点点区别。
WebI在转换过程中,会转为相应的WebI的数据格式
单元格阴影
DeskIDeskI中,您可以为单元格阴影设置灰色和图案
WebI在转换过程中,阴影被移除。在WebI中,作为一个类似的功能,您可以使用背景图案功能。所有背景图片都可以加到单元格上。
变量描述
DeskI您可以为每一个变量定义一个描述
WebI在转换过程中,描述被移除。您可以新建一个变量来储存描述。或者把描述加进一个独立的单元格。

用组中的多个值来定义变量

DeskI在DeskI中,通过方便的快捷图标来创建自定义视图,它通过创建一个包含values的变量来指向另一个dimension的值的子集。例如:当dimension"City"有如下的list of value:New York,DC,Los Angeles,Seattle,您可以创建一个包含2个值的变量:"East cities"(包含子集 New York 和 DC)以及 "West cities"(包含子集 Los Angeles 和 Seattle).
WebI在转换过程中,变量变成了if-then-else型公式,WebI没有这样的快捷方式,if-then-else公式有时候会很复杂,特别是当您需要手动定义它们的时候。用户可能需要在universe level或者数据库level就考虑给值分组的事儿

在统计图中的序列(Series)的颜色

DeskI你可以为数据序列定义颜色
WebI转换过程中,序列和它的颜色之间的关系被移除。
存储过程作为数据提供者
DeskI您可以直接把存储过程作为数据提供者使用。
WebI

WebI中,您需要为存储过程创建universe,再使用universe创建报表。事实上,通过存储过程创建universe应该是IT或者管理员该干的事儿。

在转换过程中,基于存储过程创建的DeskI报表会变成两部分,基于存储过程创建的universe和基于universe创建的报表。

多个列的表(table)
DeskI

在DeskI中,就像在Microsoft Word中的多列功能一样,您可以在一页中在一个简单的表上展示多个列。

操作流程:在一个表上右键,设置表格式,常规,列

WebI在WebI中,您无法直接实现此功能。一个可能的替代策是知道索引号和过滤器,只要数据量不会波动太大。例如:当在每页中创建两列时,首先,复制表,让第一个表显示奇数行的索引号,第二个表显示偶数行的索引号。
设置负数来实现模块的关联
DeskI在DeskI中,您可以通过负数设置把表/统计图的位置关联到其他表或统计图中。这可以使报表布局多出很多灵活性。
WebI在WebI中不支持此功能,但是您可以用其他的表/统计图作为参考,设置正数来关联它们的相对位置。
将模块集中在页面的某一位置
DeskI在DeskI中,您可以使单元格,表,统计图集中在页面的边缘
WebI您需要手动设置此功能
通过条件控制隐藏节(Section),表,统计图,dimension
DeskI通过阀值来设置隐藏内容
WebI3.1的WebI中可以通过设置报警器来实现此功能,当条件为真(设置总为真)设置公式来交换同一列中的对象。BI4.0以后支持此功能

4. 常用功能的比较



本部分将会比较DeskI和WebI的常用功能,这些常用功能影响报表的制作和展示,但不影响转换。


数据管理
DeskI

在DeskI中,数据管理提供了如下的功能:

1.展示所有的queries和数据提供者

2.展示每一个query的总览,包括最近的刷新时间(日期/时间),行数,存在时间

3.展示query结果

4.为query的自动刷新设置计划

5.把数据导出成CSV,XML文件

WebI在WebI中,4.0以后可以使用数据管理功能。而且query的总览可以在一个报表中展示和打印。对于计划刷新来说,WebI通过InfoView来实现它们。
选择Universe
DeskI当不同的数据提供者指向同一个universe的时候,在文件中只对universe进行一次分析和引用。因此把一个数据提供者的universe更改了的话会更改全部的数据提供者(被重新分析)
WebIWebI中,您需要一个一个的在数据提供者中选择universe
公式编辑器的可用性
DeskI在DeskI中,公式编辑器是上下文相关的,随着引用变量的变化,运算符也相应变化,这应该对创建公式是有指导作用的。
WebIWebI相对是静态的, 不论如何,WebI可以从很短的几个语句中自动生成接下来的对象/功能函数这有助于缩短公式的编辑时间,降低拼写错误的可能性。并且帮助框并不会为运算符提供解释(例如where语句),DeskI有这样的可用的边缘窗口,很难说那个更好一点,基于不同的操作流程各有利弊。
在公式编辑器中调用值的一览 List of Value(LOV)
DeskI将项目添加到“in list”是一个可用的功能。
WebI在WebI中,手动输入或者简单的通过复制粘贴取得LOV。
个人的List of Value
DeskI

个人的List of Value在universe中被创建,但是在DeskI报表中也可完成。

1.定义一个个人的List of Value的操作:工具 >universe>值列>选择一个对象>选择公司数据或者个人数据>编辑

2.在DeskI中您可以把多列的LOV当做hierarchy来浏览,操作流程:从universe或者工具编辑LOV>universes>在LOVquery中选择多个对象>

当您浏览LOV的时候,您可以看到最高level的文件夹,例如Year,然后您可以把它展开成Month,就像hierarchy一样。

3.对于一个给定的报表来说,您可以把个人数据提供者当做一个list of values

WebI

WebI中,您可以在universe level编辑LOV

4.0以后:

1.WebI可以使用OLAP数据源的hierarchy功能

2.在关系型数据源中也可以有多维度(multidimensionality)

3.个人数据提供者可以作为list of values

4.在Information Design Tool中,可以通过输入值的方式直接定义List of value

用户定义hierarchies
DeskI您可以通过创建用户自定义hierarchy的方式覆盖掉universe中预定义的对象
WebI在WebI中,hierarchies(亦称:4.0的导航路径)是在universe中被定义好的,所以对于使用universe的终端用户来说,不需要了解数据库阶层的数据架构。您可以简单的拖动这些对象,而不是像从前那样钻取,或者写一些公式来展示hierarchies。在4.0以后,WebI还支持OLAP数据源中定义hierarchies。
通过日,周或月来预定义一些排序
DeskIDeskI中,有为共通的时间维度排序的快捷键(日,月等)
WebIWebI可以手动的点击上/下箭头
在排名定义面板中添加小计和百分比
DeskI在排名(Rank)定义面板中,可以实现此功能
WebI定义公式来实现此功能
打印到当前页面
DeskI可以把所有内容打印到一页中
WebI3.1中没有此功能。4.0以后加入了此功能
在文件中搜索
DeskI在一个很大的文件中,可以搜索特定的值
WebI可以在当前页中进行搜索并展示所有结果。如果要在整个文件中搜索,在快速显示模式中,您可以为每一个虚拟页设定显示行数为1000,这样用户就可以用关键字进行搜索了。administrator可以为每一个虚拟页展示行数上限进行设定,这样有助于减少翻页的操作。
拆分窗格来固定表头
DeskI当操作大数据的表时,这个功能很有效
WebIWebI不支持此功能。在3.1 SP2以后,您有一个替代案来完成大表中表头的展示,通过输入控件来通过行的目录来展示。
模板
DeskI在格式化很高的报表中加入Query的结果
WebI

可以为公司的图形化标记设置默认款式。

更改config文件来定义报表的整体外观架构,编辑WebiDefaultStyleSheet.css 文件

-文件在服务器端,可以被更改

-格式是Cascading Style Sheet (CSS)

对于新的文件:

config文件会影响以下格式:

背景,字体颜色,大小,

间隔,颜色。

表头,表脚,单元格,单元格内容,

页眉,页脚,

节的title

对于已存的文件

用<清除格式>功能来展现预定义的格式

WebI还可以用格式刷来实现一个格式到另一个的复制

查看结构
DeskI查看>结构
WebI查看>结构模式

刷新Universe

DeskIDeskI中可以实现此功能,end user需要知道什么时候universe需要被刷新
WebIWebI不支持此功能,universe知道什么时候该刷新自己。
缩放网络图像
DeskI支持此功能
WebI胖客户端支持,但是web模式下的WebI不支持,只是由于HTML处理web图像制限的原因
重复的变量
DeskI需要从草稿中制作它们
WebIWebI中,如果您要重复使用复杂的变量而又需要做一些小的改动,有快捷键来完成此功能
查看全部报表的结构
DeskIDeskI中您必须挨个查看每一张报表的结构。
WebI只有在dHTML下可以实现此功能。
Prompt顺序
DeskI需要删除并重新创建来完成排序操作
WebI可以直接改变顺序
用户输入prompt
DeskIDeskI支持键盘输入,没有list of values的搜索, 必须从列表中选择
WebI简洁的展示prompt,在LOV中搜索(+相应的选项),输入独特的值来搜索(而不是搜索一长串)
为个人数据更改对象类型
DeskI如果想重新定义Excel中的数字类型,您必须改变输入到excel中的数据
WebIWebI中可以为个人数据更改对象类型,这有助于数据的同步展示。
同步的数据提供者
DeskI在DeskI中,您必须点击拖动每一个对象来确定是否有另一个跟它同步的对象。
WebIWebI中,定义同步的数据提供者时,您可以在一个窗口中浏览全部,包括同步的值,向列表中加入新的对象等等。这是一个管理复杂的同步文件的很好的用户体验。
Office文件中复制/粘贴文本格式的表
DeskIDeskI中,您必须吧整个报表导出成Excel来完成导出表的操作
WebI

WebI中,您可以Office文件中复制/粘贴文本格式的表,或者直接拖拽表或统计图到Office中。因为从报表的一部分导出到Office中是一个很常见的任务。


这一功能在4.0中得到了加强。

如果用户希望用现有的内容创建一个新的分析或者报表,使用对象共享,来完成1个表或统计图到另一个文件的复制粘贴。

对于想要从Webi报表中共享或评论内容的用户来说,复制粘贴这个表或统计图到Office文件,复制模块是HTML格式的功能,可以在布标程序中编辑(只有表可以,统计图是图像)

BI4.0的WRC和Java Panel可以使用此功能。

HTML格式把报表保存到我的电脑
DeskI支持此功能
WebIWebI在默认状态下是基于web的,所以不支持内容存为HTML。但是可以保存数据为CSV,4.0以后,格式的复制和粘贴也可以被保留。
CSV(数据)的格式把报表保存到我的电脑
DeskIDeskI中不支持吧报表数据保存为CSV,但是从Data Manager中将数据提供者的数据保存为CSV是可以的。
WebI可以从每一个数据提供者导出数据到CSV,也可以把报表的数据导出成CSV
TXT格式把报表保存到我的电脑
DeskI支持此功能
WebIWebI可以把数据导出成CSV,这就解决了很多的需求。
RTF格式把报表保存到我的电脑
DeskIDeskI支持此功能,表和值的格式也得以保留
WebIWebI可以保留格式的保存为CSV或Excel,这就解决了很大一部分的需求。4.0以后,WebI可以保留格式的在WebI和Office之间复制粘贴
发布传送规则
DeskI传送规则会影响发布的处理和分布。当您为文件设置传送规则,只有当文件中内容满足某一要求时才会实行发布。对于DeskI来说,您可以制定一个公式来实现这一功能。您也可以为一个包含任何数据的个人的发布制定发布规则。
WebIWebI不支持此功能,如果您需要此功能则Crystal Report是一个选择
发布方法
DeskI在文件发布到收件者之前,文件中的数据就会被刷新。这个过程称之为“report bursting”,DeskI有一个选项是“为一批收件人定义一个数据库”,这个功能会根据发布者的用户权限来刷新数据。可以为指定的收件人划分某一批次可以看的个人数据。
WebIWebI的具有动态收件人的发布只有两个选项:一个数据库给所有收件人,每个收件人特定的数据库
ExcelPDFCSV格式发送邮件
DeskIDeskI可以将.rep文件以email的形式发出,无法从用户的接口中直接发送DeskI
WebIWebI支持此功能,胖客户端中有快捷键
计划到打印机
DeskIDeskI支持此功能
WebIWebI中您需要首先计划到PDF到本地,在写一个脚本来完成打印
输出到XML
DeskIDeskI支持此功能
WebIWebI不直接支持此功能,但是可以通过Extension Point完成它。



5. 被优化的功能


一些操作在WebI中得以优化。这部分将会讨论从DeskI到WebI中被改善的功能


创建客户定义的功能函数
DeskI在DeskI中,通过VBA可能会实现此功能,但是不能在服务器端一次为所有客户端设置。
WebI在WebI中此功能整合的很完善。在公式编辑器中新功能被很好的展现出来(如果您希望获得更多的创建外部功能的情报,您可以参考下面的文档  http://help.sap.com/businessobject/product_guides/boexir31SP2/en/xi31_sp2_webi_calc_ext_en.pdf
可选提示
DeskIDeskI不支持可选提示(可选prompt),您可以在prompt中选择所有的值,但是实现的性能会差很多
WebI在WebI中,可以设定prompt为“可选提示”,当Prompt没有选项时候,WebI会移除掉这个过滤器来展现数据
合并单元格
DeskI您只能在设置报表格式的时候实现这一功能
WebIWebI支持此功能。您只需要在单元格上点击右键,然后选择“合并”
queries的排列(又叫数据库排列)
DeskI无法对Query排列,您可以在报表中设置排名或者定义行的限制以及多重的query排序来实现这一功能。
WebI只要Database支持这一功能就可以实现
显示/隐藏空表
DeskI您需要手动设置条件语句来实现这一功能
WebI4.0以后,这个功能可以随时打开关闭。3.1中,您需要在隐藏的对象中点击“显示”
支持数据库依存的measure集合
DeskIDeskI中,您必须从不同层次的hierarchy中设置检索分组集,然后在公共dimension设置同步。否则,DeskI会无法处理一些数据聚合的问题(比如比率),从而导致错误的结果。
WebIWebI支持此功能,叫做“smart measures”
对于一个单元格定义相对/绝对位置
DeskIDeskI不支持此功能。您可以把表当做单元格使用,删除中间的表格,然后固定表头。
WebIWebI支持此功能,这在设计一个复杂的报表布局时尤其有效。
排名累计总和
DeskIDeskI中,您需要使用公式来计算排名累计总和
WebIWebI可以直接使用此功能。
表中的交替行颜色设置
DeskI您必须使用有条件格式报警器的行来实现这一功能。
WebI为方便阅读,在WebI中是默认设置
报警器设置多个条件
DeskI

DeskI中一个报警器只能包含一个对象。如果您要创建一个类似<Revenue> < 5000) and (<Expenses> > 500的报警器,您需要使用附加变量,

步骤是:

首先创建变量:

<Variable1> = (<Revenue> < 5000) and (<Expenses> > 500)

然后在这个变量上加报警器:

<Variable1> = 1

WebIWebI支持多个对象上设置报警器,所以不需要再附加变量。文件转换为WebI以后,您可以根据原功能重新编辑优化报警器。

除此之外,WebI还提供了很多DeskI中没有的新功能。例如:输入控件,跟踪数据变化,web模式钻取,数据库取样,发布成Web Service等等。对于报表的创建和浏览都是很有帮助的。例如,您需要在DeskI中创建多个报表来展现不同scenario的数据,但是如果利用WebI的输入控件功能,您只需要创建一个报表,可以根据用户来查看他们相对应的数据。

总之,大多数的DeskI文件可以转换为WebI。对于只有DeskI才有的功能的报表文件的转换,您可以参考WebI中的替代案。而且WebI中提供的许多新功能一定会帮助您优化您的报表。


1 Comment