Foxtable(狐表)用户栏目专家坐堂 → 对于datetime型列,为什么不能用BuildTree按照年月分开的方式,做加载树呢?


  共有5193人关注过本帖树形打印复制链接

主题:对于datetime型列,为什么不能用BuildTree按照年月分开的方式,做加载树呢?

帅哥哟,离线,有人找我吗?
zhsenchzhi
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:423 积分:3196 威望:0 精华:0 注册:2013/5/10 10:01:00
对于datetime型列,为什么不能用BuildTree按照年月分开的方式,做加载树呢?  发帖心情 Post By:2013/6/13 15:15:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目2.foxdb

 

代码如下:

 

Tables("表A").OpenLoadTree("日期时间测试 YM")


Dim cmd As New SQLCommand
Dim dt As DataTable

cmd.CommandText = "SELECT * From {表A} "
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"日期时间测试 YM")

 

第一行用 openloadtree的方式,能正确执行, 最后一行 用 buildtree就不行,这是为什么呢?

 

之所以 不用openloadtree的方式, 是因为 openloadtree不能设置加载数据的范围,只能全部选择


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/6/13 15:20:00 [只看该作者]

1、BuildTree没有这个功能
2、你要自己的写,参考:

http://www.foxtable.com/help/topics/2054.htm

 

3、你不应该Sel4ect *,应该只加载生成目录树的列,加载所有列,效率太低。


 回到顶部
帅哥哟,离线,有人找我吗?
zhsenchzhi
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:423 积分:3196 威望:0 精华:0 注册:2013/5/10 10:01:00
  发帖心情 Post By:2013/6/13 15:34:00 [只看该作者]

按照例子,虽然可以出来,但是对于大数量来说,效率很低,而且还要 distinct ,不过也只能如此了,我原以为你们有更好的方法


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/6/13 15:35:00 [只看该作者]

例子的效率挺高的。

 回到顶部