美创科技技术社区

注册

 

发新话题 回复该主题

BIEE中会话变量的使用 [复制链接]

1#

会话变量主要用来实现限制用户的查看范围的权限。

使用官方biee示例repository

在administration tool,选择manage>variable,如下

[img][/img]

我们先创建一个新的初始化块(Initialization Block),在右边窗口中右击选择new Initialization Block

[img][/img]

键入 initialization block名: setUser ,然后编辑Data Source,点击Edit Data Source,如下:

[img][/img]

然后选择Connection Pool,编辑数据源。

[img][/img]

在Default Initiazation String中,输入以下语句,

select ':USER', case when upper(':USER') = 'KURT' then 'Germany' when upper(':USER') = 'KEIKO' then 'Japan' when upper(':USER')= 'CHARLES' then 'United Kingdom' when upper(':USER') = 'KAREN' then 'United States of America' end, 'CountryManagers', 3 from Dual

点击OK之前 我们可以测试一下,测试完成Ok 退出,

继续配置variable target 点击Edit Date Target,

[img][/img]

选择新建session variable,分别创建USER ,UserCountry, GROUP, LOGLEVEL

[img][/img]

其中USER,GROUP,LOGLEVEL都是系统会话变量,UserCountry是非系统会话变量,之后点击OK 退出。

[img][/img]

在确认OK之前 同样我们也可以测试一下。

之后Action>Close,最后check in change 保存。

然后开始第二个步骤,创建用户组

点击Manage>Security 创建用户组CountryManagers,并且设置相应权限中的filter

[img][/img]

点击add 增加新的filters

[img][/img]

选择customers列双击

[img][/img]

之后点击expression Builder button

[img][/img]

完成如上步骤后 点击OK 确定,action>close,然后保存退出。

我们回到answer,重新登入,我们就用KEIKO用户登入进入answer,键入条件,如下;

[img][/img]

显示结果;

[img][/img]

换个用户,以CHARLES登陆:

[img][/img]

需求完成。

分享 转发
TOP
发新话题 回复该主题