驰骋数据源设计与基础概念
1. 基本概念
1. 基础概念
● 数据源结构图
● 数据源定义:为表单、流程、低代码、大屏提供数据的组件,我们称为数据源。应用(单据、实体、流程、门户)通过数据源与其他系统进行数据交互。
● 数据源提供数据内容的方式:枚举、字典、查询、过程。
● 枚举:是一种用户定义的数据类型,它由一组命名的整型常量组成,比如:性别,0=女,1=男。政治面貌:0=群众、1=团员、2=党员。
● 字典:用下拉框展示的数据结构,比如:角色类型、部门、产品类型等数据,具有编号、名称两个属性或者编号名称父节点编号属性的结果数据。分别成为编码字典,树结构字典。
● 查询:输入参数,返回结果集,比如:人员信息、车辆信息、客户量化关系表等。返回一行数据的我们称为实体查询,多行数据的称为集合查询。
● 过程:输入参数,返回执行结果。比如:账户注销过程、出入入库过程、修改密码、作废过程等。
● 数据源类型:本机数据源、关系数据库数据源、WebApi数据源。
● 本机数据源:顾名思义就是ccfast数据库的数据源,是默认的一个数据源枚举、自定义外键数据都存储在默认数据源里。
● 关系数据库数据源:通过数据库连接方式获取数据的方式。
● WebApi数据源:通过http协议与参数获得数据的方式。
● 数据源维护:用于维护数据的工具如下图
● 如上图所示:
2. 数据源结构图
● 根据基础概念,整理如下结构图。
● 名词定义参考上一章节。
3. 用途&定义
● 数据内容的定义.
序 | 项目 | 定义 | 用途 |
1 | 枚举 | 是一种用户定义的数据类型,它由一组命名的整型常量组成,比如:性别,0=女,1=男。政治面貌:0=群众、1=团员、2=党员。 | 1. 表单的下拉框。 2. 表单单选按钮。 3. 流程转向的方向条件。 |
2 | 字典 | 用下拉框展示的数据结构,比如:角色类型、部门、产品类型等数据,具有编号、名称两个属性或者编号名称父节点编号属性的结果数据。分别成为编码字典,树结构字典。 | 1. 表单的下拉框。 2. 流程转向的方向条件。 |
3 | 查询 | 输入参数,返回结果集,比如:人员信息、车辆信息、客户量化关系表等。返回一行数据的我们称为实体查询,多行数据的称为集合查询。 | 1. 表单的装载填充。 2. 从表填充。 3. 文本框pop返回值的填充。 |
4 | 过程 | 输入参数,返回执行结果。比如:账户注销过程、出入入库过程、修改密码、作废过程等。 | 1. 流程事件。 2. 节点事件。 3. 单据事件。 比如:流程结束后需要执行出库事件。 |
4. 表达式
1. 表达式是获取数据的配置项,比如:关系数据库数据源获取字典的表达式: SELECT No,Name FROM Port_Emp WHERE OrgNo='@WebUser.DeptNo'
2. 比如:WebApi数据源的Body设置里设置: { token:'@Token',deptNo='@WebUser.DeptNo'}
3. 在关系数据库里有一个表达式,找个表达式用于写一个sql,或者一个存储过程的名字。
4. 表达式里的参数,用@符号,加参数名字表达。在运行的时候被替换先来, 执行之后获取想要的到的结果。
5. 参数分为:数据源内置参数、人员登录参数、环境参数。
5. 表达式的参数
5.1. 数据源内置的参数
● 在数据源中定义的参数,一般对webapi模式的数据源有效。
● 比如:token变量,更多的请参考webapi章节。
5.2. 人员登录参数
● 人员登录信息是系统参数:
● @WebUser.No 登录人员的账号
● @WebUser.Name 名称
● @WebUser.DeptNo 部门编号
● @WebUser.DeptName 部门名称
● @WebUser.OrgNo 组织编号
● @WebUser.OrgName 组织名称
● 以上的参数:可以带入表达式:
1. 比如:关系数据库数据源获取字典的表达式: SELECT No,Name FROM Port_Emp WHERE OrgNo='@WebUser.DeptNo'
1. 比如:WebApi数据源的Body设置里设置: { token:'@Token',deptNo='@WebUser.DeptNo'}
5.3. 环境参数
1. 环境也就是应用,比如:在单据的表单中,在流程的表单中。一个外键字典绑定到下拉框,外键需要绑定到一个字典上,该控件周围的数据都是环境参数。
2. 在获取找个下拉框的外键的数据对应的SQL查询或者webapi的表达式的时候,都可以引用这些环境变量。
3. 比如:SELECT No,Name FROM Port_Emp WHERE OrgNo='@MyFieldName'
4. 找个里面的变量,就是找个字段控件周围的字段值。
5.4. 参数别名
1. 在表达式里,有一个参数 ,需要在不同的环境(表单)生效。
2. 比如数据源配置的参数是 @Addr 地址,在A表单的环境里字段名叫DiZhi, 在B表单环境里字段叫DZ.
3. 那么别名我们就配置@Addr=DZ,DiZhi
6. 数据源区别
序 | 对比项 | 本机数据源 | 关系数据数据源 | WebAPI数据源 |
1 | 连接方式 | 默认获取系统的配置, 不需要配置连接串。 | 通过设置的数据库连接串连接 | 通过http协议 |
2 | 创建方式 | 默认创建 | 手工创建 | 手工创建 |
3 | 自定义字典表单 | 有 | 无 | 无 |
4 | SQL字典表 | 有 | 有 | 有 |
5 | 枚举 | 有 | 无 | 无 |
6 | 查询 | 有 | 有 | 有 |
7 | 过程 | 有 | 有 | 有 |