Foxtable(狐表)用户栏目专家坐堂 → [求助]目录树代码问题(已解决)


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

主题:[求助]目录树代码问题(已解决)

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
[求助]目录树代码问题(已解决)  发帖心情 Post By:2014/11/25 17:50:00 [只看该作者]


一段代码将获取的值写入目录树,出现错误提示,如何修改,请各位老师指教,谢谢。


Dim n0 As Integer = DataTables("工piao信息").GetValues("作业ID").Count
Dim n1 As Integer = DataTables("工piao信息").Compute("Count(工piaoID)") '工piao数
Dim n2 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","Len(工piaoID) = 8") '绑定数
Dim n3 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","Right(工piaoID,3) = '已回收'") '回收数
trv.Nodes.Insert("作业计划合计("& n0 &"/"& n1 &"/"& n2 &"/"& n3 &")",0)

在窗口的AfterLoad事件中已将黄色部分的代码屏蔽掉了,按“刷新”按钮可以重现错误提示。


图片点击可在新窗口打开查看此主题相关图片如下:捕获0.jpg
图片点击可在新窗口打开查看


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目8.foxdb



另外,在作业计划合计节点显示的工piao状态统计数据,是否可以在其他节点显示?如何实现,也请各位老师赐教,谢谢!!


[此贴子已经被作者于2014-11-25 20:39:33编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/25 17:51:00 [只看该作者]

 

[此贴子已经被作者于2014-11-25 17:52:58编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/25 18:02:00 [只看该作者]

Dim n3 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","iif(len(工piaoID) > 3, Substring(工piaoID, Len(工piaoID)-2, 3) = '已回收', false)") '回收数

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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2014/11/25 18:33:00 [只看该作者]

谢谢甜老师的指教,受甜老师的启发,用判断字节大于8位为已回收数,可以简化代码,谢谢甜老师。

Dim n3 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","len(工piaoID) > 8") '回收数

另外,能否在其他节点显示工piao状态的统计数据,代码如何修改,请赐教。再次衷心感谢!!

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/25 19:28:00 [只看该作者]

类似代码

 

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "SELECT DISTINCT 合同年月,客户简称,合同ID,生产ID,作业ID,工piao编号 From {工piao信息}"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = Forms("工piao管理").Controls("TreeView1")
trv.BuildTree(dt,"合同年月|客户简称|合同ID|生产ID|作业ID|工piao编号","","")

trv.Nodes.Insert("作业计划合计",0)

For Each nd As WinForm.TreeNode In trv.AllNodes
    Select Case nd.Level
        Case 0
            If nd.Name = "作业计划合计" Then
                Dim n0 As Integer = DataTables("工piao信息").GetValues("作业ID").Count
                Dim n1 As Integer = DataTables("工piao信息").Compute("Count(工piaoID)") '工piao数
                Dim n2 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","Len(工piaoID) = 8") '绑定数
                Dim n3 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","iif(len(工piaoID) > 3, Substring(工piaoID, Len(工piaoID)-2, 3) = '已回收', false)") '回收数
                nd.text = nd.Name & "("& n0 &"/"& n1 &"/"& n2 &"/"& n3 &")"
            Else
                Dim filter As String = "合同年月 = '" & nd.Name & "'"
                Dim n0 As Integer = DataTables("工piao信息").GetValues("作业ID", filter).Count
                Dim n1 As Integer = DataTables("工piao信息").Compute("Count(工piaoID)", filter) '工piao数
                Dim n2 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","Len(工piaoID) = 8 and " & filter) '绑定数
                Dim n3 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","iif(len(工piaoID) > 3, Substring(工piaoID, Len(工piaoID)-2, 3) = '已回收', false) and " & filter) '回收数
                nd.text = nd.Name & "("& n0 &"/"& n1 &"/"& n2 &"/"& n3 &")"
            End If
        Case 1
            Dim ary() As String = nd.FullName.Split("\")
            Dim filter As String = "合同年月 = '" & ary(0) & "' and 客户简称 = '" & ary(1) & "'"
            Dim n0 As Integer = DataTables("工piao信息").GetValues("作业ID", filter).Count
            Dim n1 As Integer = DataTables("工piao信息").Compute("Count(工piaoID)", filter) '工piao数
            Dim n2 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","Len(工piaoID) = 8 and " & filter) '绑定数
            Dim n3 As Integer = DataTables("工piao信息").Compute("Count(工piao编号)","iif(len(工piaoID) > 3, Substring(工piaoID, Len(工piaoID)-2, 3) = '已回收', false) and " & filter) '回收数
            nd.text = nd.Name & "("& n0 &"/"& n1 &"/"& n2 &"/"& n3 &")"
           

    End Select
Next


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


加好友 发短信
等级:七尾狐 帖子:1525 积分:10580 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2014/11/25 20:39:00 [只看该作者]

谢谢甜老师的赐教,问题全部得到圆满解决,再次衷心感谢。

 回到顶部