以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  目录树空值的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=88376)

--  作者:天蝉一线
--  发布时间:2016/8/1 20:21:00
--  目录树空值的问题
我用的是BuildTree生成的目录树,但是第六列是空的时候,显示我给的附件的情形,怎么才能让有空值的不要产生空节点。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树的问题.rar


--  作者:Hyphen
--  发布时间:2016/8/2 10:14:00
--  
BuildTree(DataTable, Columns, Filter, Sort)

BuildTree(DataTable, Columns, "第六列 is not null", Sort)

--  作者:天蝉一线
--  发布时间:2016/8/2 23:27:00
--  
不行呀
--  作者:大红袍
--  发布时间:2016/8/3 9:13:00
--  
以下是引用天蝉一线在2016/8/2 23:27:00的发言:
不行呀

 

不可能不行,贴出你写的代码。


--  作者:Hyphen
--  发布时间:2016/8/3 9:13:00
--  
上例子
--  作者:天蝉一线
--  发布时间:2016/8/3 11:34:00
--  
我的数据表是四列,最后一列存在零星有数据的可能。
Dim dt As DataTable
Dim trv1 As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim cmd As New SQLCommand
cmd.Connectio n N ame = "cwgl"
cmd.CommandText = "SELECT * Fro m {会计科目}"
dt = cmd.ExecuteReader()
Dim bd1 As New GroupTableBuilder("统计表1",dt)
bd1.Groups.AddDef("科目编码","会计科目编码")
bd1.Groups.AddDef("一级科目","功能类科目名称") 
bd1.Groups.AddDef("二级科目","支出性质分类_一级科目") 
bd1.Groups.AddDef("三级科目","支出性质分类_二级科目")
bd1.Groups.AddDef("四级科目","经济分类_一级科目") 
bd1.Groups.AddDef("五级科目","经济分类_二级科目")
bd1.Groups.AddDef("六级科目","经济分类_三级科目") 
Tables("会计科目设置_Table1").DataSource =  bd1.BuildDataSource()
Tables("会计科目设置_table1").AutoSizeCols() \'设置自动列宽
trv1.BuildTree("会计科目设置_Table1","功能类科目名称|支出性质分类_一级科目|支出性质分类_二级科目|经济分类_一级科目|经济分类_二级科目|经济分类_三级科目")
Trv1.ExpandAll()

--  作者:大红袍
--  发布时间:2016/8/3 11:51:00
--  
先试试
 
Dim dt As DataTable
Dim trv1 As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim cmd As New SQLCommand
cmd.Connectio n N ame = "cwgl"
cmd.CommandText = "SELECT * Fro m {会计科目}"
dt = cmd.ExecuteReader()
Dim bd1 As New GroupTableBuilder("统计表1",dt)
bd1.Groups.AddDef("科目编码","会计科目编码")
bd1.Groups.AddDef("一级科目","功能类科目名称") 
bd1.Groups.AddDef("二级科目","支出性质分类_一级科目") 
bd1.Groups.AddDef("三级科目","支出性质分类_二级科目")
bd1.Groups.AddDef("四级科目","经济分类_一级科目") 
bd1.Groups.AddDef("五级科目","经济分类_二级科目")
bd1.Groups.AddDef("六级科目","经济分类_三级科目") 
bd1.Filter = "六级科目 is not null and 五级科目 is not null"
Tables("会计科目设置_Table1").DataSource =  bd1.BuildDataSource()
Tables("会计科目设置_table1").AutoSizeCols() \'设置自动列宽
trv1.BuildTree("会计科目设置_Table1","功能类科目名称|支出性质分类_一级科目|支出性质分类_二级科目|经济分类_一级科目|经济分类_二级科目|经济分类_三级科目")
Trv1.ExpandAll()

--  作者:天蝉一线
--  发布时间:2016/8/3 16:35:00
--  
还是老样子
--  作者:大红袍
--  发布时间:2016/8/3 17:17:00
--  
 上传实例。