BIEE-3、客制化应用

浏览: 1678

一、多语言应用

一张报表根据weblanguage展现不同语言

实现方法

以Unit维度的Unit字段为例,前提Unit维表中有中、英文字段。

   RPD中设计 :

  1. 创建会话变量和初始化块select case when 'VALUEOF(NQ_SESSION.WEBLANGUAGE)'='zh-cn' then 0 else 1 end from dual;  变量,AN_INT 
  2. 逻辑层新建双语列UNIT,编辑(case when 0=VALUEOF(NQ_SESSION.LAN_INT) then UNIT_CN else UNIT_EN end) 
  3. 表示层,表示列UNIT的属性一般信息页,勾选“显示定制名称”

  DB中设计

创建一个表,用于初始化块 

二、双列特性应用

例如报表的金额需要按单位进行换算,而单位中的值为非数值字段:元、千、百万等,也可能以后变成:百、千、亿;若用case when一旦发生变化则工作量巨大。这时使用双列特性解决。

实现方法:

  1. 创建会话变量和初始化块 初始化块:select 1 from dual; 变量:UNIT_T 
  2. 逻辑层Unit列属性,一般信息,设置描述ID列,选UNIT_VALUE 
  3. 在逻辑表,事实表中新建逻辑列Amount编辑表达式 (amount/cast(valueof(NQ_SESSION."UNIT_T")as interger)) 
  4. DB表中创建unit维表 
  5. 报表层,使用UNIT列作为提示,使用请求变量做传参 
推荐 0
本文由 liliwu 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册