Siebel集成OBI报表

业务需求:

     1. 需要在Siebel中展示OBIEE的报表界面,能够以Siebel当前用户SSO到OBI

     2. BI中根据登陆用户实现对数据的安全性控制

     3. 在Siebel中对每张报表实现类似用户职责的视图性安全性控制,细化到用户,职位对 报表的可视性控制

     4. 在Siebel中需要对报表进行分类管理

     5. 报表有100张左右

 

方案设计:

     1. SSO BI和Siebel通过OAM实现单点登陆比较麻烦,考虑BI用户认证可以通过数据库自由定制,每天同步Siebel用户数据到BI用户表

         包括用户名密码,密码使用Siebel用户关联的BI密码字段BISecPwd(可自由设定加密策略)

     2. 使用Symbolic URL 实现报表集成

         设计报表时每张BI报表对应一个特定的URL Path参数路径,将报表路径和Symbolic URL String作为BC 对象形式存储,在报表BC上添加访问组MVG,

         添加类型字段,批量导入报表的URL Path和分类。

Image(25)

 

          Symbolic URL Args 设计如下:

Image(26)

          Tools中配置BI Report Applet,Applet Class = CSSFrameListWeb,Applet WebTemplate=Analytics Applet

          配置BC:

Image(27)

 

     3. 配置目录树和Report Applet,能够根据结点加载报表

   此功能需要在Symbolic URL Args 中加入 IsRecordSensitive = True 参数实现界面刷新,即选择目录结点,报表重新加载功能。

         配置Tree Applet , 复制 Organization Tree Applet ,修改 Tree Node 对应 BC, Applet, 无递归。

Image(28)

         最终效果:

Image(29)

 

          4. 到此集成BI工作本可以结束了,但是却发现了一个产品Bug

              官方描述是这样的:

                    “在任何外部网页集成的Siebel View 中,如果使用IsRecordSensitive参数,则点击MVG,Pick Applet ,或 关于记录等Popup Applet,均会导致SessionWarning ,组件Crash”

              此Bug 有针对8.0.0.5以上的QF,已包含在8.1.1.5 PatchSet中

    Engineering developed quick fix for this issue on top of 8.0.0.5.
    The fix details:
    Bug ID: 13113684
    Platform Available: LINUX, SOLARIS, WINDOWS
    Product Certified: SIA
    Languages Certified: Lang Independent
    Base Required: Fix Pack 8.1.1.5[21229]
    Patch Abstract:
    8.1.1.5 21229 SIA QF0540 sebl_aru
    QF Install Doc:
    Doc is named README.html and is located under
    p13113684_811_LINUX_1of2.zip
    p13113684_811_SOLARIS64_1of2.zip
    p13113684_811_WINNT_1of2.zip

   

         可是项目稳定的情况下,不想升级,打算继续采用8114版本, So Oracle 给了个 Workaround,就是在目录树 Tree Applet 上写Browser Script,来模拟达到Refresh View without IsRecordSensitive Args:


//In the Applet_Load event:
function Applet_Load ()
{
applet = this;
}
//In the Applet_ChangeRecord event:
function Applet_ChangeRecord ()
{
setTimeout("refresh()",10);
}
//And added the following function to the general declaration:
function refresh()
{
applet.InvokeMethod("ToggleTo");
}

   

       效果确实可以达到,不过好像这个Workaround 本身也出了点Bug,居然也出了个QF,且看metalink文章 [ID 1072082.1]

       不过目前没有这种情况,所以这个补丁还是没打。

 

       终上所述,页面集成是有问题的,但是Workaround也是可以解决的,将BI 报表的View视图安全性转化为对BI 报表路径记录的安全性,这个方案是很不错的,至少我是这么认为的。

posted on 2012-02-22 15:40  双宇  阅读(2289)  评论(0编辑  收藏  举报