Foxtable(狐表)用户栏目专家坐堂 → [求助]目录树层级的设置代码,不知道哪错了,请修改


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

主题:[求助]目录树层级的设置代码,不知道哪错了,请修改

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


加好友 发短信
等级:五尾狐 帖子:1116 积分:8608 威望:0 精华:0 注册:2012/7/10 9:09:00
[求助]目录树层级的设置代码,不知道哪错了,请修改  发帖心情 Post By:2013/12/12 9:54:00 [只看该作者]

下列代码运行出错,不知道什么原因,我想建立四层目录树,请赐教。

1、窗口的AfterLoad事件代码为:

Dim cmd As New SQLCommand

Dim dt As DataTable

cmd.CommandText = "SELECT DISTINCT 公务参照区分 ,Year(生成日期) As 年, Month(生成日期) As 月, 审签序号 From {公务信息表}"

dt = cmd.ExecuteReader()

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")

trv.BuildTree(dt, "公务参照区分|年|月|审签序号")

trv.Nodes.Insert("显示所有行",0)


2、目录树的NodeMouseDoubleClick事件代码为:

Dim Value()As String

Dim Filter As String

Dim d1 As Date

Dim d2 As Date

Value = e.Node.FullPath.Split("\")

Select Case e.Node.Level

    Case 0

        If e.Node.Text = "显示所有行" Then

            Tables("审签表_查询").Filter = ""

        Else

         Tables("审签表_查询").Filter = "[公务参照区分] = '" & Value(0) & "'"

        End If

   Case 1     

        Dim y As Integer = value(1)

        d1 = New Date(y,1,1) '取得该年的第一天

        d2 = new Date(y,12,31) '取得该年的最后一天

        Filter = "生成日期 >= #" & d1 & "# And 生成日期 <= #" & d2 & "#"


   Case 2

        Dim y As Integer = value(1)

        Dim m As Integer = value(2)

        d1 = New Date(y, m, 1) '取得该月的第一天

        d2 = new Date(y, m, Date.DaysInMonth(y,m)) '取得该月的最后一天

        Filter = "生成日期 >= #" & d1 & "# And 生成日期 <= #" & d2 & "#"

    Case 3

        Dim y As Integer = value(1)

        Dim m As Integer = value(2)

        d1 = New Date(y, m, 1) '取得该月的第一天

        d2 = new Date(y, m, Date.DaysInMonth(y,m)) '取得该月的最后一天

        Filter = "生成日期 >= #" & d1 & "# And 生成日期 <= #" & d2 & "# And 审签序号 = '" & Value(3) & "'"

End Select

Tables("审签表_查询").Filter = Filter


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 9:56:00 [只看该作者]

请问报什么错?

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 9:57:00 [只看该作者]

有个例子就最好了,至少也说一下提示什么错误吧.

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


加好友 发短信
等级:五尾狐 帖子:1116 积分:8608 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2013/12/12 9:59:00 [只看该作者]

如图:


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


加好友 发短信
等级:五尾狐 帖子:1116 积分:8608 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2013/12/12 9:59:00 [只看该作者]

如图:
图片点击可在新窗口打开查看此主题相关图片如下:截图03.png
图片点击可在新窗口打开查看
图片点击可在新窗口打开查看此主题相关图片如下:截图04.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:五尾狐 帖子:1116 积分:8608 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2013/12/12 10:02:00 [只看该作者]

生成的目录树应为:
显示所有行
公务参照区分
    年
       月
          审签序号

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


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

你到执行SQL窗口执行下面的SQL语句:

 

SELECT DISTINCT 公务参照区分 ,Year(生成日期) As 年, Month(生成日期) As 月, 审签序号 From {公务信息表}

 

看看会不会报错。


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


加好友 发短信
等级:五尾狐 帖子:1116 积分:8608 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2013/12/12 10:08:00 [只看该作者]

报错:
如图:
图片点击可在新窗口打开查看此主题相关图片如下:截图05.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:五尾狐 帖子:1116 积分:8608 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2013/12/12 10:09:00 [只看该作者]

如图:
图片点击可在新窗口打开查看此主题相关图片如下:截图06.png
图片点击可在新窗口打开查看

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


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

原因清楚了:

 

1、如果是外部数据源,记得:

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

 

2、如果是内部表,说明的SQL语句中的表名错了


 回到顶部
总数 23 1 2 3 下一页