分组统计出现的问题.先上图:
此主题相关图片如下:图四.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