选择Test可以看到数据已经过滤。
再创建查询时,涉及到机构的查询都需要以上的过滤条件,或者必须用到d_company的comcode;
在用Report制作报表时,Query里需要有comcode字段,可以不显示。
7. (手工)通过Transformer给CUBE增加数据权限
IBM Cognos 8 Business Intelligence V8.4 所有的组件中,Transformer的变化最大,特别是在安全认证方面,所以,我们重点研究一下Transfomer中Customer View的变化及应用。
假定我们在Cognos Series 7的NameSpace中已经存在了两个用户,一个是
jiesin.x.liu,另一个是kevin.x.li。还是以之前创建的NEDW_F_SH_QC_Data.pyj模型文件为例,来实现jiesin.x.liu只能查看CRL维度下第二级Level中Category = Small的数据,而Kevin.x.li只能查看Category = big的数据,如下图所示:
为实现上述功能,我们操作如下步骤:
第一步:
有点废话,用Transformer打开NEDW_F_SH_QC_Data.pyj。
第二步: 单工具栏中的如下图所示:
按钮,显示Categories视窗,选择中Customer View选项夹。
第四步:
Create Custom View.
上图中已经提示“Right Click to Create Custom View”,因此通过菜单,开启Create Custom View视窗。
输入Custom View Name,通过Assign Security按钮,登录Portal,在Cognos Series 7 的NameSpace中选择用户jiesin.x.liu,如下图所示:
同样的方法,创建Kevin的Custom View.
选择中jiesin,点下图红色线框中的按钮,选择CRL维度,在右的视图中选中值为big的Gategory,单击鼠标右键,在弹出的菜单中,勾选Exclude,展现结果如下图所示:
同样的方法,设置允许kevin的访问的数据。
第五步:
在Custom View中,选中jiesin、kevin,拖放到Cube下,如下图所示:
第六步:
重新OLAP,创建Cube,Copy 这个新建的Cube,覆盖已经发布到portal的NEDW_F_SH_QC_Data.mdc。
通过上述六步骤,分别用jiesin.x.liu、kevin.x.li登录http://localhost/Cognos/cgi-bin/cognos.cgi的portal,就实现了jiesin.x.liu只能查看CRL维度下第二级Level中Category = Small的数据,而Kevin.x.li只能查看Category = big的数据。
但有一个问题,每个Custom view都需要这样手动创建,如果是一个复杂的用户类,不是要把开发人员累死?
8. (用动词)通过Transformer给CUBE增加数据权限
OpenMDL \业务分类分析.mdl\SecurityNameSpaceMake \
ViewMake \机构\CustomViewMake \机构\
SecurityObjectMake 'CAMID(\
PowerCubeCustomViewListUpdate Cube \业务分类分析\ \ EndList SaveMDL \业务分类分析加权限_OKd.mdl\