集智数据平台控制下拉数据集中的显示内容

查询填报表单是我们做表时经常会用到的功能,查询条件的显示样式也是多种多样的,有下拉列表框、下拉数据集、下拉日历等等。因为业务需求,可以更好的控制权限,需要我们在使用下拉数据集时,不同的用户登录,所看到的数据也是不一样的。

比如:总经理可以任意的选择查询各部门的信息,而普通员工只可以查看属于自己部门的信息。

有多种方法可以实现这个需求,现在我们看一下用集智数据平台报表系统,通过动态宏是如何实现的。

做一张填报类型的参数表单报表模板。

1、用SQL拼好一个取数的数据集,但是取数的限制where条件用宏来表示,

过宏我们来接受表达式。

SELECT t_org.org_id,t_org.org_name FROM t_org ${m}

2、定义动态宏。在配置菜单下,宏定义中,我们可以设置一个动态宏。

宏表达式为:if(@arg1==”150100″ or @arg1==”150200″ or @arg1==”150501″,” where org_id in (’150200′,’150100′,’150300′,’150400′,’150500′) “,” where org_id=”+@Org_ID)

即做一个IF判断,@arg1是传进来的参数,代表当前登录集智数据平台的用户。@Org_ID代表集智数据平台传进来的用户机构的参数。

3、 新建2中所用的参数。

4、 定义单元格下拉数据集的风格。
5、 登录集智数据平台,上传报表,上传时所读取的参数,接受集智数据平台参数管理模板中的系统变量。即当前登录用户ID@{sys.sys_UserID}当前登录用户机构 @{sys.sys_Orgs}

最后我们看一下在集智数据平台中看到的效果:

经理级别登录时:

普通员工登录时:

本文标签: