插入层级BOM树


我们通过两个例子来学习如何在窗口使用层级BOM树。

示例一

1、打开CaseStudy目录下的示例文件: BOM数据.Table

2、选择表"物料清单B"

3、选新建一个窗口。

4、插入一个LayersTree(层级树)控件。

5、将窗口的AfterLoad事件代码设置为:


Dim
trv As WinForm.LayersTree = e.Form.Controls("LayersTree1")
Dim
st As New LayerTreeSetting
st
.PathCol = "级码"
st
.TextCol = "物料"
st
.ValueCol = "数量"
st
.Separator = "."
st
.GridTree = True
trv
.BuildBomTree(Tables("物料清单B"),st)

LayerTreeSetting
类用于设置层级树,其全部属性说明,可以参考: OpenLayersBomTree

示例二

你也可以针对SQLTable和SQLQuery生成层级BOM树:

1、打开CaseStudy目录下的示例文件: BOM树.Table

2、选择表物料清单B,新建一个窗口,假定窗口名为"窗口2"

3、在窗口中插入一个Table控件,将其类型改为SQLTable,将其Select语句设置为: Select * From {物料清单B}

4、插入一个LayersTree(层级树)控件。

5、将窗口的AfterLoad事件代码设置为:


Dim
trv As WinForm.LayersTree = e.Form.Controls("LayersTree1")
Dim
st As New LayerTreeSetting
st
.PathCol = "级码"
st
.TextCol = "物料"
st
.ValueCol = "数量"
st
.Separator = "."
st
.GridTree = True
trv
.BuildBomTree(Tables("窗口2_Table1"), st)

示例三

1、打开CaseStudy目录下的示例文件: BOM数据.Table

2、选择表"物料清单C"

2、新建一个窗口。

3、插入一个LayersTree(层级树)控件。

4、将窗口的AfterLoad事件代码设置为:


Dim
trv As WinForm.LayersTree = e.Form.Controls("LayersTree1")
Dim
st As New LayerTreeSetting
st.PathCol = "级码"
st
.TextCol = "物料"
st
.ValueCol = "数量"
st
.Lengths = {2}
st
.GridTree = True
trv.BuildBomTree(Tables("物料清单B"),st)

提示:每层的位长度可以不同,可以分别输入每层的位长度, 例如第一层用1位数表示,第二层用3位数表示,从第三层开始用2位数表示,那么设置长度的代码可以改为:


st
.Lengths = {1,3,2}

示例四

1、打开CaseStudy目录下的示例文件: BOM数据.Table

2、选择表"物料清单D"

3、新建一个窗口。

4、插入一个LayersTree(层级树)控件。

5、将窗口的AfterLoad事件代码设置为:


Dim
trv As WinForm.LayersTree = e.Form.Controls("LayersTree1")
Dim
st As New LayerTreeSetting
st.PathCol = "物料"
st
.ValueCol = "数量"
st
.Separator = "\"
st
.IncludeSub = False
trv.BuildBomTree(Tables("物料清单D"),st)


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