页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

具体的操作步骤如下:

1、创建数据模型并在模型中增加 “SQL查询”:“SQL查询”,在SQL查询下面编写带有条件的SQL语句,如下图:

Image Removed

如上图所示:Image Added

  • where {[字段=${ParamName}]}参数是动态值,"{[]}"代表参数默认值可不填写,不填写代表查询全部数据;代表参数默认值可不填写,不填写代表查询全部数据。
  • 如果 where 字段=${ParamName},这种写法也支持,但是参数默认值必填,否则执行不通过;,这种写法也支持,但是参数默认值必填,否则执行不通过。
  • 如果在模型中的[参数管理]进行了关联映射,可以随着模型设置的默认值改变输出结果集;具体可参考:参数管理
  • 参数数据类型,默认是字符串,用户可以选择与SQL查询条件字段匹配的数据类型:日期、日期时间、时间、整型、浮点型、长浮点型、其他。

...

2.2  通过参数控制权限

业务用户开发了“销售报表”,老板(admin)可以查看全部地区的销售数据,但是各地区的负责人只能查看对应地区的数据;可以查看全部地区的销售数据,但是各地区的负责人只能查看对应地区的数据。

目前用户”A“是华南地区的负责人,那如何做到用户”A“只能查看”华南“地区的数据?

我们以产品自带数据源northwind数据库下的【orders】为例:【orders】存储的是各个区域、省份、城市的销售订单信息数据库下的【orders】为例:【orders】存储的是各个区域、省份、城市的销售订单信息。

具体的操作步骤如下:

1、创建数据模型并在模型中增加 “SQL查询”

...

  • 如果权限比较简单,比如通过”用户所属组”可以直接匹配的,可直接用函数进行控制;上图的CurrentUserDefaultDepartmentAlias就是用户所属组与区域匹配上了,所以可以控制权限;进行控制;上图的CurrentUserDefaultDepartmentAlias就是用户所属组与区域匹配上了,所以可以控制权限。
  • 如果权限控制比较复杂,比如用户存储在另外一个业务库,需要通过SQL语句进行再处理的,可使用用户属性

...

  • 合并之后,3张表的数据全部合成一张表。
  • union:用于合并俩个或多个SELECT语句的结果集,并且消去表中任何重复行,纵向追加数据纵向追加数据。
  • 也可以使用union all,union all 与union的区别是:union all 不会消除表中重复行。
  • 保存】之后再回到【回到模型】,可以设置与其他查询的关系或者参考构建数据模型构建自己的模型。

...