插入层级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)