SAP BusinessObjects WebI 3.x 中的Custom Sort

Webi中有三种排序方式, Ascending, Descending和Custom Sort。默认是Ascending方式。

前两种很好理解,稍有数据库基础的人一看就懂。

比较好玩的是第三种。

 
 

1) 要排序的值都出现在报表中。

比如, 表值如下:

 
 

                                    ID
————————————–
                                     1
                                     2
                                     3
                                     4
                                     5

 
 

但是, 由于要求, 在报表上要显示为如下格式:

 
 

 
 

这时可以使用Custom Sort来完成。

 
 

 
 

 
 

点击”OK”即可。

 
 

对于使用了Custom Sort 的列,webi排序图标变成如下所示:

 
 

 

 
 

2) 添加其他数值。

 
 

现在报表中并没有出现”6″, 如果将来, 我想让”6″出现在1和3之间,怎么办?

 
 

只需手工添加即可:

 
 

 
 

 
 

测试: 在数据库中添加”6″, 于是

数据库中表值如下:

                                    ID
————————————–
                                     1
                                     2...

Read More...

Webi 中的 Merge Dimensions

由于项目原因要经常使用Merge Dimension, 今天抽空把其中的道道复习了一下。

为了方便描述, 依然沿用BO 自带的 Island Resort Marketing作为Universe。

 
 

分别创建两个Data Providers,

如下所示,

 
 

[Year 1998]:


 

[Year 1998 1999]: 

 

 
 

运行查询, 结果如图,

  

现在将Year, Resort两个Dimension Merge起来,拖出的报表如下所示:

  

 
 

可见, 现在的报表显示样式是根据Merge之后的Dimension叠加而来。 

 
 

如果我如果想使用DP1中的Dimension作为Driving Value,该怎么做呢?

OK, 打开Merge之后的Dimension, 选择第一个DP中的Dimension.

拖入报表, 这样, 报表后面的值就是根据第一个DP中的Dimension值而来。

 
 

  
 

同理, 可以将DP2中的值作为Driving value.

 
 

另: Document的Properties中有一个选项叫: Extended Merged Dimension ...

Read More...

BO Enable Database Credentials

这是在BO当中使用数据库已有账户进行数据查询的一种方式。

 
 

下面通过一个简单的例子来说明一下。

 
 

首先要确保在数据库中有相应用户。比如,有一个用户名叫”Test1″,他的名下有Test_Value这张表,表中有数据,如下:

 
 

                                    ID
————————————–
                                     1

 
 

与此同时,有Test2用户, 同样, 在他的名下也有Test_Value这张表, 数据如下:

 
 

                                    ID
————————————–
                                     2

 
 

去到CMC新建两个用户, BO1, BO2, 修改两者的属性, 分别指向数据库用户Test1和Test2.

 
 

使用BO1创建一个Universe, 创建基于Test_Value表的Object。

 
 

创建完之后修改connection的Authentication Mode为”Use BusinessObjects Credential Mapping”。(这步很重要,否则会以标准的方式去数据库取数,无视前面的”用户mapping”)

 
 

保存universe,然后Export。

 
 

分别使用BO1和BO2登录,新建一个基于刚刚创建的universe的Webi报表,运行,就能看出两者查询出来的结果是不一样的。

 
 

===================================

 
 

总觉得BO的这种用户Mapping方式应该和Oracle的VPD相结合,以达到最佳的维护和可定制性。 改天研究一下。...

Read More...

BO Reposiroty 从MySQL迁移至Oracle

等着看足球呢, 闲来无事,心血来潮, 把机器上的BO Repository 从MySQL迁移到 Oracle下。几经波澜,终于搞定了。

环境:

Windows 2003 SP2

BusinessObjects XI 3.1 SP1

Oracle 11g R2

MySQL 5.5

 
 

1)  Repository迁移:

打开 CMC >> 双击 SIA服务器,选择Configuration Tab >> 选择第二个 : “Copy data from another source”, 点击 “OK”, 在”Source Contains Data ...

Read More...

BusinessObjects Infoview Windows AD 单点登录(Single Sign On)

这两天在搞单点登录,功夫不负有心人,最后还是搞出来了,在网上看了好多文章,自己实际操作的时候还是会遇到很多问题。罗列一下设置的过程,也算是纪念一下这两天的工作。

首先 需要用到两台服务器(一台不行), 一台作为AD服务器, 另外一台当然就是BO服务器了。

环境: Windows Server 2003 En, BO XI 3.1

假设:

AD 服务器机器名:vwindows2003AD

BO 服务器机器名: vwindows03 IP:192.168.1.7

 

以下括号内标注的是所操作的机器名。
1. 安装和配置AD服务器, 网上教程一大堆, 我就不详述了。

域DNS: AD.TEST

域:AD
2. 配置用户(vwindows2003AD)

新建一个叫BO的组,然后新建一个叫boservice的用户,右击boservice用户,进入属性,切换到delegation选项卡, 选择”Trust this user for delegation to any service ...

Read More...