这是在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相结合,以达到最佳的维护和可定制性。 改天研究一下。