- 谁来管理数据视图
- 如何创建数据视图
- 视图分类
- JDBC数据
- 使用的数据连接
- 创建数据视图
- 图形模式的数据视图
- SQL模式的数据视图
- 图型数据视图转换为SQL数据视图
- 公共功能
- 转码设置
- 单元格字段替换
- 单元格字典转码
- 数据视图转码
- 高级
- 系统数据
- 使用的数据连接
- 创建数据视图
- 系统视图-主题视图
- v_dn_user(用户)
- v_dn_org(组织)
- v_dn_role(角色)
- 系统视图-映射视图
- 组织和用户映射:
- 用户和角色映射:
- 经验总结
- 缓存数据
- 字段定义
- 数据维护
- 经验总结
- MongoDB数据
- 使用的数据连接
- 明细查询模式
- 查询条件、字段筛选、排序条件
- 原始数据
- path
- 聚合查询模式
- 聚合条件
- 聚合操作符
- 值
- 原始数据
- path
- Redis数据
- 使用的数据连接
- Redis命令
- Lua脚本
- JavaScript脚本
- 原始数据
- HBase数据
- 接口数据
- 联合数据
有了数据连接后,数据源就可以为用户提供各种各样的符合各类规范的“货物”,这些货物的规范专业术语我们统称为“数据视图”。
谁来管理数据视图
首先要有权限登录lczDesigner的用户;
其次,在设计器的许可名单中的用户,如果被授予了“数据管理”权限,则可以创建、修改和删除数据视图,否则,只能查看到这个数据视图的存在,可以使用,但是,不可以查看到数据视图的内容。
如何创建数据视图
在lczDesigner中进行,点击“系统项窗体”中的“数据”选项卡,然后针对窗体中的目录鼠标右键,看到如如下图的弹出菜单:
视图分类
对应连接类型,可以创建对应类型视图。另外还包括系统数据、缓存数据。
JDBC数据
使用的数据连接
只能使用“JDBC连接”。
创建数据视图
选择[新建数据视图] > [JDBC数据]菜单,打开[数据视图选项]视窗,如下图:
- 选择“图形模式”还是“SQL模式”;“图形模式”是对“SQL模式”的一个图形化方式的操作,本质仍旧是SQL;
- 允许在这里通过点击按钮创建JDBC数据连接;
- 选择一个现有存在的数据连接,作为下一步制作数据视图所使用的数据连接。选择完毕后,点“下一步”按钮。
图形模式的数据视图
“图形模式”适合规范的SQL查询,或者说,适合对于SQL不甚了解的用户。界面如下图:
“图形模式”让用户免写SQL语句,但是本质上还是对SQL语句对应过程的封装:
1)输出列:对应SQL语句的直接SELECT的字段名;
2)附加列:对应SQL语句的SELECT中的表达式字段;
3)联接:表之间的关联。可惜目前只实现了 INNER JOIN模式;
4)条件:对应SQL语句的WHERE内容;
5)排序:对应SQL语句的ORDER BY内容;
6)分组:对应SQL语句的GROUP BY内容。
SQL模式的数据视图
直接录入SQL语句,例如:
SELECT
SUM(order_detail.money) AS 金额,
product.product_id AS 产品编码,
product.product_name AS 产品名称
FROM
`order`,
order_detail,
product
WHERE
order_detail.order_id = `order`.order_id
AND order_detail.product_id = product.product_id
AND `order`.is_abort = 0
GROUP BY
product.product_name, product.product_id
ORDER BY
product.product_id ASC
注意:如果要引用系统变量或预定义变量,引用方式是,例如:
{userNumber}
图型数据视图转换为SQL数据视图
鼠标右键某个图型数据视图,如下图:
执行即可完成转换操作。
注意:一旦从图形视图转换为SQL数据视图,不可逆,即无法从SQL数据视图转换回图形数据视图。如果需要保持图形视图数据,请提前通过“复制”菜单复制数据视图进行数据备份。
公共功能
公共功能如下截图:
这里要重点关注“转码设置…”按钮和“高级..”按钮的功能。
转码设置
“转码”,就是通过映射关系,把A表达为B。
基于上述定义,转码的目的和实现方式都有多种多样,我们这里只讲解lczReport提供的为实现单元格显示的转码方式。其包含了三种转码方式。
单元格字段替换
上图的意思是,一个工作表中的“销售额多维度汇总”模板数据中,既有“客户编号”字段,又有“客户名称”字段。
B4单元格是客户编号,但是显示的时候想按照客户名称进行显示,那该单元格的“显示属性”就直接使用如下表达式即可:
销售额多维度汇总.客户名称
一般我们采用图形化的方式来定义,即下图:
注意:上述使用场景,不要使用下文介绍的“字典转码”来实现,因为,字段替换的效率是最高的。尤其是在客户数量比较大的场合。
单元格字典转码
上图的意思是,工作表中的A2单元格本身的值是部门编码,希望按照部门名称进行显示。
实现的方法是,把“部门”字典拖拽进入成为模板数据(或者也比较常见的是建立一个缓存数据的字典),然后把该单元格的“显示属性”使用如下表达式表达:
DATAMAP(部门,编码,名称,A2)
一般我们采用图形化的方式来定义,即下图:
数据视图转码
在数据视图里,就把转码的配置工作完成了。下图是数据视图编辑器里的操作示范:
点击“转码设置…”按钮,出现了字段列表。针对想要转码的字段,例如,上图针对“付款方式”进行转码,点击“付款方式”右侧的“设置…”按钮,然后在乐创者知识库中选择对应的字典数据视图。
上述操作后,我们来演示下使用该数据视图的时候,工作表如何转码“付款方式”字段?
注意:单元格的显示方式要设置为:“转码方式显示”。然后,预览结果如下图示范:
高级
系统数据
系统数据指的是乐创者系统内置的系统级别的数据,目前主要开放的是账户体系方面的数据。
使用的数据连接
系统数据所使用的数据连接叫做“系统连接”,是系统内置的,不允许用户修改,不允许删除。
创建数据视图
上图是系统数据视图的设计界面。
其中有一种特殊的数据连接,叫做“系统连接”。这是一种系统内置的连接,不开放给用户直接去使用,只能让用户直接使用所开放的系统的“视图”。
总之,需要以这些“系统视图”来制作乐创者的“系统的数据视图”。
我们接下来介绍下所开放的系统视图。
系统视图-主题视图
v_dn_user(用户)
USER_ID:用户编号
USER_NUMBER:用户工号
LOGIN_NAME:登录名
USER_NAME:用户姓名
USER_ORG_NAME:组织内部名称
SUPERVISOR_ID:主管的用户编号
USER_DESC:人员描述
USER_DISABED:禁用标记
EMAIL_ADDRESS:电子邮件地址
SEX:性别
IDENTITY_CARD:身份证号
PHONE:移动电话
WECHAT:微信
USER_INDEX:记录顺序号
DING_ID:个人钉钉ID
WE_CORP_ID:个人微信ID
CREATE_ID:记录创建人编号
CREATE_DATE_TIME:记录创建时间
UPDATE_ID:记录更新人编号
UPDATE_DATE_TIME:记录更新时间
v_dn_org(组织)
ORG_ID:组织编号
ORG_NUMBER:组织工号
ORG_NAME:组织内部名称
ORG_ALIAS:组织显示名称
PARENT_NAME:商机组织的内部名称
IS_LEAF:是否叶子节点
ORG_DESC:组织描述
ORG_INDEX:记录顺序号
CREATE_ID:记录创建人编号
CREATE_DATE_TIME:记录创建时间
UPDATE_ID:记录更新人编号
UPDATE_DATE_TIME:记录更新时间
v_dn_role(角色)
ROLE_ID:角色编号
ROLE_NAME:角色内部名称
ROLE_ALIAS:角色显示名称
ROLE_DESC:角色描述
ROLE_INDEX:记录顺序号
CREATE_ID:记录创建人编号
CREATE_DATE_TIME:记录创建时间
UPDATE_ID:记录更新人编号
UPDATE_DATE_TIME:记录更新时间
系统视图-映射视图
组织和用户映射:
(1)v_dn_org_users(组织关联的用户,组织被全部列出):
ORG_ID:组织编号
ORG_NUMBER:组织工号
ORG_NAME:组织内部名称
ORG_ALIAS:组织显示名称
USER_ID:用户编号
USER_NUMBER:用户工号
USER_NAME:用户姓名
SUPERVISOR_ID:上级主管的用户编号
USER_DESC:用户描述
USER_DISABLED:禁用标记
EMAIL_ADDRESS:电子邮件地址
SEX:性别
IDENTITY_CARD:身份证号
PHONE:移动电话号码
WECHAT:微信号
USER_INDEX:个人顺序号
DING_ID:个人钉钉ID
WE_CORP_ID:个人微信ID
CREATE_ID:用户记录创建人用户编号
CREATE_DATE_TIME:用户记录创建时间
UPDATE_ID:用户记录更新人用户编号
UPDATE_DATE_TIME:用户记录更新时间
用户和角色映射:
(1)v_dn_map_user_role(映射关系):
ID:映射编号
USER_ID:用户编号
ROLE_ID:角色编号
(2)v_dn_role_users(角色关联的用户,角色被全部列出):
ROLE_ID:
ROLE_NAME:
ROLE_ALIAS:
USER_ID:
USER_NUMBER:
USER_NAME:
SUPERVISOR_ID:
USER_DESC:
USER_DISABLED:
EMAIL_ADDRESS:
SEX:
IDENTITY_CARD:
PHONE:
WECHAT:
USER_INDEX:
DING_ID:
WE_CORP_ID:
CREATE_ID:用户记录创建人用户编号
CREATE_DATE_TIME:用户记录创建时间
UPDATE_ID:用户记录修改人用户编号
UPDATE_DATE_TIME:用户记录修改时间
(3)v_dn_user_roles(用户关联的角色,用户被全部列出):
USER_ID:
USER_NUMBER:
LOGIN_NAME:
USER_NAME:
ROLE_ID:
ROLE_NAME:
ROLE_ALIAS:
PARENT_NAME:
ROLE_DESC:
ROLE_INDEX:
CREATE_ID:角色记录创建人用户编号
CREATE_DATE_TIME:角色记录创建时间
UPDATE_ID:角色记录修改人用户编号
UPDATE_DATE_TIME:角色记录修改时间
经验总结
- 所谓“系统”数据,是乐创者系统本身的内置数据;
- 目前开放的是账户体系方面的数据;
- 系统数据连接与您的业务库的数据连接不是同一个连接;
- 系统数据属于图型数据视图,并且,不支持转换为SQL数据视图。
缓存数据
缓存数据是由lczDesigner构造的数据,不依赖数据连接。
字段定义
点击“字段定义”按钮,初始界面如下:
为了减轻用户的定义工作,系统默认出现“编号”和“名称”两个字段,您可以增加、删除和修改字段的名称及类型。
数据维护
自定义的字段确定好了后,就可以通过以下按钮进行数据的维护:
经验总结
- 缓存数据可以构造成数据视图,也可以构造成为模板中的数据,本节介绍的是前者;
- 缓存数据适合作为数据量不大的字典数据;
- 缓存数据不依赖于数据连接,是存放在乐创者系统内部的。
MongoDB数据
新建视窗如下图:
使用的数据连接
只能使用“MongoDB连接”。
明细查询模式
选择数据连接,之后选择了表,然后如果“聚合查询模式”未勾选,那么是明细查询模式的配置界面。
查询条件、字段筛选、排序条件
均为选填。输入内容时调用json编辑器,关键字高亮显示,支持关键字提示(根据输入的内容下拉框实时显示匹配的关键字),变量定义格式为“${变量名|默认值}”,变量名后必须含“|”(|后空时,表示默认值为空字符串),保存或执行时进行校验。
原始数据
默认不显示,点击“查看原始数据”时根据条件显示匹配的结果(以列表树的方式显示,默认不展开根节点,展开时逐层展开,原始数据中的内容均支持复制),查看原始数据时校验必填项。
path
选中某行数据时,下方显示该行数据的path,path中的内容支持选中通过“ctrl+c”复制。
聚合查询模式
选择数据连接,之后选择了表,然后如果“聚合查询模式”勾选,那么是聚合查询模式的配置界面,如下图:
聚合条件
必填,默认为空,通过点击“+”按钮可增加一条记录;
聚合操作符
必填,默认“$match”,下拉选项:$match、$group、$project、$limit、$skip、$sort、$unwind,每种操作符可以使用多次;
值
必填,操作符类型为“$limit”和“$skip”时,可在列表中直接输入输入数字和自定义参数;其他操作符时则通过“…”按钮调用json编辑器,关键字高亮显示,支持关键字提示(根据输入的内容下拉框实时显示匹配的关键字),变量定义格式为“${变量名|默认值}”,变量名后必须含“|”(|后空时,表示默认值为空字符串),保存或执行时进行校验;
原始数据
默认不显示,点击“查看原始数据”时根据条件显示匹配的结果(以列表树的方式显示,默认不展开根节点,展开时逐层展开,原始数据中的内容均支持复制),查看原始数据时校验必填项;
path
选中某行数据时,下方显示该行数据的path,path中的内容支持选中通过“ctrl+c”复制。
Redis数据
新建视窗如下图示范:
支持三种模式:Redis命令、Lua脚本、JavaScript脚本。
支持将左侧列表中的key通过双击key的方式添加到命令、Lua脚本和JavaScript脚本框光标定位的地方。
使用的数据连接
只能使用“Redis连接”。
Redis命令
多行文本框中必须填写命令。
Lua脚本
多行文本框中必须填写Lua脚本。
JavaScript脚本
多行文本框中必须填写JavaScript脚本。
原始数据
默认不显示,点击“查看原始数据”按钮时根据条件显示匹配的结果(以列表树的方式显示,默认不展开根节点)。
HBase数据
接口数据
联合数据
最后编辑:afa 更新时间:2025-04-24 11:27
