BIEE 11.1.1.7回写配置和使用

浏览: 2578

从BIEE 10.1.3.4以来,BIEE都提供了回写功能,用于在展现端修改显示的数据,并将其写回到数据仓库(数据库)。但随着版本的升级,关于回写的一些相关配置也有所变化,这里将根据BIEE 11.1.1.7的回写配置和使用以及碰到的相关问题,做一些记录和说明。

回写配置的主体步骤:

  1. 整理需要回写的物理表格和字段。


  2. 在BI Administrator Tool的物理层,找到需要回写的表格所在的”数据库配置”,勾选”在默认情况下允许直接数据库请求”


  3. 在BI Administrator Tool中,开启列的回写属性

首先在物理层将回写表格的缓存关闭:取消勾选”可高速缓存”

在逻辑层找到逻辑表的需要回写的字段,打开属性设置,勾选”可写”

在表示层,找到需要回写的字段,打开属性设置,配置权限,给相应的用户对字段的读/写权限,如下图:


  1. 创建回写的模版文件,模版文件保存在OBIEE_HOME\instances\instance1\bifoundation\OracleBIPresentationServicesComponent\coreapplication_obips1\analyticsRes\customMessages目录中,文件名称可自定义。

    回写模版文件为xml文件,大体结构如下:




   SetQuotaUseID“>

      

         Supplier“>

            INSERT INTO regiontypequota VALUES(@{c0},@{c1},’@{c2}’,'@{c3}’,'@{c4}’)

            UPDATE regiontypequota SET Dollars=’@{c4}’ WHERE YR=@{c0} AND Quarter=@{c1} AND Region=’@{c2}’ AND ItemType=’@{c3}’

         

      

   



说明:

SetQuotaUseID为前台回写时,调用回写的模版名称

Supplier为连接池的名称

Regiontypequota为实体物理表名

黄色部分为回写时需要引用的BIEE展现列的columnID,可从answer的高级页中的xml里获得,模版中引用BIEE展现列的方法为@{columnID};当然也可使用列位置来引用,但不建议这种做法,因为在answer中列顺序随时可能调整

此处模版文件的使用比较容易出问题:

问题1:

注意如果只需要update,不需要insert,那么 element仍然要写入xml,写法为:

> </insert>

注意> <中间必须填入空格符

问题2:

如果要使用insert回写,那么原始物理表中必须保留一个空行,所有字段都为空。展现时需insert即从此空行写入。

问题3:

对于update,如果字段的原始值为空,那么在展现时须将空值转换成其它字符。

如使用ifnull将空值转换成’–’,同时修改模版xml中的update SQL为:

UPDATE regiontypequota SET Dollars=decode(‘@{c4}’,'–’,”,’@{c4}’) WHERE YR=@{c0} AND Quarter=@{c1} AND Region=’@{c2}’ AND ItemType=’@{c3}’

因为回写时读取的是展现数据,所以如果字段的原始值为空,还是需要将其转换成其他字符展现出来。

同理,因为回写时读取展现数据,所以作为where条件的字段都需在answer的结果页中,放入结果表格,但如果不需要展现的话,可在结果表格中将字段设为隐藏。

  1. 修改instanceconfig.xml文件,文件位于OBIEE_HOME\instances\instance1\config\OracleBIPresentationServicesComponent\coreapplication_obips1

    在此文件中相应位置加入element,打开回写


        

            true

        


    保存后,需重启BIEE。


  2. 在BIEE上,给相应用户赋予回写的相关权限

在BIEE的管理页中,打开管理权限,给相应用户”回写到数据库”、”管理回写”的权限,如下图:

  1. 在BIEE answer”标准”页中,打开字段的回写属性

在answer的标准页中,选择需要回写的字段,打开列属性,勾选启用回写

  1. 在BIEE answer”结果”页中,配置表格的回写属性

    在answer的结果页中,选择结果表格,打开表属性,配置回写属性如下:


    注意SetQuotaUseID为模版文件中定义的名称



    回写效果展示:

    注意BIEE 11.1.1.7中回写时需点击”更新”按钮,相应字段才会出现回写框,回写完成后点击”应用”,然后点击”完成”即可。

    —————————–

推荐 0
本文由 newkoa 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册