Foxtable(狐表)用户栏目专家坐堂 → [求助]实在搞不定了,只能求高手指教


  共有4589人关注过本帖平板打印复制链接

主题:[求助]实在搞不定了,只能求高手指教

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


加好友 发短信
等级:五尾狐 帖子:1172 积分:8418 威望:0 精华:0 注册:2012/10/29 20:09:00
[求助]实在搞不定了,只能求高手指教  发帖心情 Post By:2014/2/28 8:47:00 [只看该作者]

分组统计出现的问题.先上图:


图片点击可在新窗口打开查看此主题相关图片如下:图四.jpg
图片点击可在新窗口打开查看
图四是筛选树正常显示的情况图。

图片点击可在新窗口打开查看此主题相关图片如下:图二.jpg
图片点击可在新窗口打开查看
图二是不能正常显示的图


图片点击可在新窗口打开查看此主题相关图片如下:图三.jpg
图片点击可在新窗口打开查看
图三是把代码二放在窗口内的按钮上执行,出现的错误提示。

把代码一放在窗口上的按钮内执行,能够正常显示筛选树,如把代码一、代码二放在窗口的afterloae,登录时分别出现图一和图六所示的错误提示(图一、图六见二楼)。

代码一是求高手指教的,代码二是按帮助文件写的。

代码一:

Dim dt As DataTable
Dim b As New GroupTableBuilder("统计表1",DataTables("基层法律服务人员信息表"))
b.Groups.AddDef("主管司法局")
b.Groups.AddDef("法律服务所")
b.Groups.AddDef("姓名")
dt = b.Build(False)
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")

trv.Nodes.Clear
trv.BuildTree(dt,"主管司法局|法律服务所|姓名")
trv.StopRedraw
For Each nd As WinForm.TreeNode In trv.AllNodes
    Select Case nd.Level
        Case 0
            nd.Text = nd.text & "(" & dt.Compute("count(姓名)","主管司法局 = '" & nd.DataRow("主管司法局") & "'") & "人)"
        Case 1
            nd.Text = nd.text & "(" & dt.Compute("count(姓名)","主管司法局 = '" & nd.DataRow("主管司法局") & "' And 法律服务所 = '" & nd.DataRow("法律服务所") & "'") & "人)"
    End Select
Next
trv.Nodes.Insert("全部","全部(" & dt.Compute("count(姓名)") & "人)",0)
trv.ResumeRedraw


代码二:
Dim dt As DataTable
Dim b As New GroupTableBuilder("统计表1",DataTables("基层法律服务人员信息表"))
b.Groups.AddDef("主管司法局")
b.Groups.AddDef("法律服务所")
b.Groups.AddDef("姓名")
dt = b.Build(False)
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
'trv.Nodes.Clear
trv.BuildTree(dt,"主管司法局|法律服务所|姓名")
trv.StopRedraw
For Each nd As WinForm.TreeNode In trv.AllNodes
    Dim sfj As String = nd.DataRow("主管司法局")
    Dim fws As String = nd.DataRow("法律服务所")

    Select Case nd.Level
        Case 0
            nd.Text = nd.text & "(" & dt.Compute("count(姓名)","主管司法局 = " & sfj) &  "人)"
        Case 1
            nd.Text = nd.text & "(" & dt.Compute("count(姓名)","主管司法局 = " & sfj & " And  法律服务所 = " & fws) & "人)"
    End Select
Next
trv.Nodes.Insert("全部","全部(" & dt.Compute("count(姓名)") & "人)",0)
trv.ResumeRedraw



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