数据接口:树形列表

来自企业管理软件文档中心
2018年10月15日 (一) 13:53Nathan讨论 | 贡献的版本

跳转至: 导航搜索

简介

树形列表是云表的一种数据接口。通过树形列表可以清晰地显示数据之间的层次结构,方便用户快速地找到需要选择的数据。如图1

图1:树形列表举例

关于树形的描述中,经常会用到以下名词:

  1. 树节点:树形列表中的每一行就是树的一个节点,称为树节点
  2. 父节点:这是一个相对概念,树节点的上一级节点称为下一级节点的父节点,下一级节点是上一级节点的子节点
  3. 子节点:参见上一条
  4. 根节点:是指树的最顶一级的节点

每个树节点都有两个属性:

  1. 树节点标题
  2. 树节点索引

树节点标题指树节点后面显示的那串文字,树节点索引是树节点的唯一标识,树节点索引在界面上没有显示,但我们做设计的时候要记住他的存在,它是构造树形结构的依据。在以后章节中讲述树形列表的应用时,会进一步介绍树节点索引的用处。

定义树形列表

树形列表有三种构造方式:多字段分级、编码长度分级、自我繁殖。 假如我们有一个如图2所示的简单的部门结构。

图2:部门结构

接下来我们将演示如何通过多字段分级和编码长度分级的构造方式,根据图2所示的部门结构,绘制如图3所示的树形列表。

图3:部门结构的树形列表

树形列表的数据源如图4所示:

图3:树形列表的数据源

多字段分级

部门 人员
开发部 小李
开发部 小红
市场部 莉莉
市场部 明哥
图3:部门结构的树形列表

通过分析上面的表格和树,可以发现它们之间的数据对应关系:树的第一级节点对应的是数据表中“部门”,树的第二级节点对应的是数据表中的“人员”。

通过这种方式构造的树,树的层级和数据表的列是一一对应的,表格中有几列参与构造树,树就会有几个层级。

这种构造树形的方式称之为“多字段分级”,在数据接口管理界面,添加一个新的“树形列表”数据接口,系统会显示一个树形列表数据接口的定义对话框,如下图:

图5:新建树形列表

  1. 数据表:用于指定数据来源,即从哪个数据表中获取数据来构造树形,本例中数据来源于“部门与人员”总表。
  2. 构造方式:用于指定构造树的方式,本例中选择“多级字段”,当选择了这个选项之后,下面会显示出一个列表,用于输入参与构造树形的字段信息;
  3. 分级字段:用于构造树节点的字段,对应树节点的索引属性;
  4. 显示字段:树节点标题显示的字段,对应树节点的标题属性;
  5. 排序:用于指定树节点的排序方式;
列表中的第一行表示树形第一级节点对应的字段信息,分级字段和显示字段都设置为“部门”;
列表中的第二行表示树形第二级节点对应的字段信息,分级字段和显示字段都设置为“人员”;
同理,还可以有第三级、第四级等等,本例中树只有两级。

大部分的时候,“分级字段”和“显示字段”选择同样的就好,但有时候也不相同,例如上例中,假如部门有部门编号,人员有工号,构造树的时候,第一级节点的分级字段可以使用部门编号,而显示字段使用部门,第二级分级字段使用工号,显示字段使用人员。

树节点有两个属性:

  1. 一个是树节点索引
  2. 一个是树节点标题

树节点索引(可以理解为树节点的编号,必须唯一)用于标示每一个树节点,它是构造树的依据,不过界面上并没有显示出来,是看不到的,但我们做设计时,需要记住有这么一个属性存在;树节点右边显示的文字称之为树节点标题。 根据构造树形的方式不同,树节点索引对应数据不一样,在本例中,树节点索引对应的是“分级字段”,因为“分级字段”是构造树的依据。


只选最底层节点:如果该选项打钩,则图3的树形列表中的【开发部】和【市场部】不可以选择,只能选择【小李】【小红】【莉莉】和【明哥】这四个节点。

编码长度分级

编码长度分级:通过对字段的长度进行层次的划分。 比如下表,依据每条记录的【编码】进行分级,编码的划分层次的规则是【3,2,2】,即编码的前面三位数字作为一级,中间两位数字作为二级,最后两位数字作为三级。

编码 人员 管理层次
001 总经理 决策层
002 副经理 决策层
00201 秘书 参谋
0020101 行政主管 管理层
0020102 财务主管 管理层

点击左侧目录树的【我的系统】--【系统管理】--【数据接口】--【树形列表】,新建如图6所示的树形列表。

图6:新建树形列表

构造方式选择编码长度分级。分级的关键在于依据数据源的【编号】字段,根据【编号】字段的长度进行分级,比如001和002属于第一级,00101和00201属于第二级。

最后得到如图7所示的结果

图7:编码长度分级

自我繁殖

自我繁殖:根据两个字段的父子关系来构造树形列表的层次。通过由子节点自动寻找父节点,从末端构建到根部的方式构建一个树形列表。 如下表所示

父节点 子节点
中国 烟台
中国 广东
烟台 张裕酒文化博物馆

“张裕酒文化博物馆”将通过寻找【父节点】连接到“烟台”,而“烟台”也将通过寻找【父节点】连接到“中国”,从而最终构造出如图8的树形列表。

图8:自我繁殖

假设我们已有如图9所示的三张表单。

图9:自我繁殖的数据来源

新建如图10所示的树形列表即可完成。

图10:自我繁殖的参数设置

节点编号:即子节点是哪个字段。

父节点编号:即子节点的上级。

节点名称:即在树形列表中显示子节点还是父节点。

树形列表的使用

在填写规范中使用

1.在模板设计窗口,点击【数据表管理】。

图8:自我繁殖

2.在需要使用树形列表的字段中设置其填写规范即可。

图8:自我繁殖

树形配置: 默认展开树节点:若改选项不勾选,则子节点不会被展开,如下图所示

图8:自我繁殖

返回标题路径:若勾选此选项,则树形列表以【父节点.子节点】的方式返回值,如下图所示

图8:自我繁殖

在总表中使用

在列表选择中使用