|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622 。
您需要 登录 才可以下载或查看,没有帐号?注册
x
本书介绍了企业的Business Objects EntERPrise用户、用户组和对象、BusinessObjects Enterprise的系统管理员等内容
================>
bo语义层设计注意事项
语义层设计时注意的几个问题:
1、 对于比重报表,在设计时可以用以下三张表:f_rate_toplevel存放最高级税务机构的数据,f_rate_secondlevel存放次级税务机构的数据,f_rate_thirdlevel存放再次级税务机构的数据,然后通过聚合感知函数 @Aggregate_Aware,最先感知f_rate_toplevel里的数据,接着是f_rate_secondlevel以及f_rate_thirdlevel,通过这种方式可以实现比重报表的钻取。但是值得注意的是,在用wi制作报表时不能将钻取层次在自定义作用域里面定义,可以在钻取时任其自动找到在层次里面定义的下一层。例如语义层:行政_人员单一属性就是属于这种情况。
2、 为了能实现各分县局的用户进入系统只能看到本局的数据,设计了5张权限表,分别是vw_pub_powerlist_a(稽查属性),vw_pub_powerlist_m(管理属性),vw_pub_powerlist_l(征收属性),vw_pub_powerlist_mr(管理区域),vw_pub_powerlist_rcv(收入归属),如果在语义层中有表与这几张权限表直接关联的话,那么在supervisor中找到改语义层,在其属性的行选择相应的权限表,并且在其where语句中设置如下:VW_PUB_POWERLIST_A.ROLEID = replace(@Variable('BOUSER'),'admin',''),其他权限表类似处理。例如语义层:纳税人基本信息(历史)就是属于这种情况。
3、 如果在语义层中并未关联这5张权限表,但是却用到其中对应的属性的话,那么要在语义层中加入这张或这几张权限表,并且在supervisor作如下限制 :Exists(select 1 from vw_pub_powerlist_A where ROLEID = replace(@Variable ( 'BOUSER' ) ,'admin','' ) and orgdeptcode = F_RATE_SECONDLEVEL. Orgdeptcode),其中vw_pub_powerlist_A(稽查属性)就是事实表F_RATE_SECONDLEVEL用到的属性,如果用到的是管理属性,可以改成vw_pub_powerlist_M,以此类推。例如语义层:稽查机构人员平均收入就是属于这种情况。
4、 另外一种情况是,如果语义层中并不用到第2点所说的任何一个属性,而是需要用税务机构名称,那么可以在语义层中加入维表d_pub_taxorgdept,并且在superviosr作如下设置:exists (select 1 from(select * from vw_pub_powerlist_a union all select * from vw_pub_powerlist_m union all select * from vw_pub_powerlist_l)a where roleid = replace (@Variable('BOUSER'),'admin','')and orgdeptcode = F_RATE_SECONDLEVEL. Orgdeptcode ) ,其中F_RATE_SECONDLEVEL就是需要限制权限的事实表。其他事实表类似。例如语义层:行政_人员单一属性就是属于这种情况。 |
|