OpenInlineFilterTree(内联)

Table的OpenInlineFilterTree方法用于打开内联筛选树。

OpenInlineFilterTree
的语法为:

OpenInlineFilterTree
(Setting, Size)

Setting: InlineTreeSetting类型,用于设置筛选树。
Size:    整数型,可选,用于指定目录树宽度,单位为像素。

InlineTreeSetting的相关属性有:

ParentCol:   字符型,指定父列名称。
ChildCol:    字符型,指定子列名称。
TextCol:     字符型,用于指定标题列,如果省略,则目录树节点的标题来自于ChildCol指定的子列。
ValueCol:    字符型,用于指定数值列
Unique:      逻辑型,是否要求行唯一,默认为True,如果允许重复行,将此属性设置为False即可。
SortCol:     字符型,指定排序列
SortDesc:    逻辑型,是否降序排序

Subtotal:    逻辑型,是否自动汇总子目录数据。
MergeTotal:   逻辑型,是否合并显示统计结果。
IncludeSub:  逻辑型,指定是否显示子目录数据,默认为True。
GridTree:    逻辑性,指定是否自动开启折叠模式,默认为False。 
ExpandTo:    整数型,指定折叠树默认展开级别,默认为0,也就是都不展开,如果设置为-1,则全部展开。

区分树类型

还记得我们在介绍分级数据类型时,提到了三种分级数据,分别为BOM型、项目型和普通型,也知道了通过菜单设置分级筛选树的时候,是可以选择数据类型的。

那么通过代码打开分级筛选树,是如何区分数据类型的呢?很简单:

通过OpenInlineBomTree打开的自然是BOM树,通过
OpenInlineFilterTree打开的,默认是项目筛选树,如果将Unique属性设置为False,就是普通分级筛选树了。

示例一

打开CaseStudy目录下的文件:折叠模式.Table。

选择表"部门",在命令窗口执行以下代码:

Dim t As New InlineTreeSetting
t
.ParentCol = "parentid"
t
.ChildCol = "id"
t
.TextCol = "部门"
t
.ValueCol = "人数"
t
.SortCol = "sysgrdtreesort"
t
.Subtotal = True
t
.MergeTotal  = True
t
.GridTree = True
Tables
("部门").OpenInlineFilterTree(t)

执行后,得到的筛选树如下:

示例二

打开CaseStudy目录下的文件:折叠模式.Table。

选择表"销售",在命令窗口执行以下代码:


Dim
t As New InlineTreeSetting
t
.ParentCol = "团队"
t
.ChildCol = "员工"
t
.ValueCol = "数量"
t
.Unique = False
t
.Subtotal = True
t
.GridTree = True
Tables
("销售").OpenInlineFilterTree(t)

提示:由于这是一个销售数据表,允许重复记录,所以必须将
Unique属性设置为False,否则将无法生成筛选树。

执行后,得到的筛选树如下:


本页地址:http://www.foxtable.com/webhelp/topics/3355.htm