以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  筛选树改为加载树  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=143812)

--  作者:15666282205
--  发布时间:2019/12/5 9:31:00
--  筛选树改为加载树
老师,我编写了筛选树代码,运行正常,我模仿着帮助改为加载树,提示SQL语句错误,无法继续统计等等。请您看看。
正常的筛选树
\'首先生成统计表
\'Dim dt3 As DataTable
\'Dim b3 As New GroupTableBuilder("统计表决算登记表",DataTables("决算登记表"))
\'b3.Groups.AddDef("日期",DateGroupEnum.Year,"年")
\'b3.Groups.AddDef("日期",DateGroupEnum.Month,"月")
\'b3.Groups.AddDef("状态")
\'\'b3.Groups.AddDef("考勤班组")
\'\'b3.Groups.AddDef("考勤员")
\'b3.Groups.AddDef("序号")
\'b3.Groups.AddDef("编制人")
\'\'b3.Groups.AddDef("所属班组")
\'b3.Totals.AddDef("序号",AggregateEnum.Count,"次数") \'根据客户列来统计记录数,也就是订单数
\'dt3 = b3.Build(True) \'参数设置为True,生成一个临时表,不在主界面显示
\'\'然后根据统计表生成目录树
\'Dim trv3 As WinForm.TreeView = e.Form.Controls("TreeView1")
\'trv3.BuildTree(dt3, "年|月|编制人|状态")
\'trv3.StopRedraw
\'For Each nd As WinForm.TreeNode In trv3.AllNodes
\'Dim Year As Integer = nd.DataRow("年")
\'Dim Month As Integer = nd.DataRow("月")
\'Dim Product4 As String = nd.DataRow("状态")
\'Dim Product5 As String = nd.DataRow("编制人")
\'\'Dim Product6 As String = nd.DataRow("生产工段")
\'\' Dim Product3 As String = nd.DataRow("提交人")
\'\'Dim Product7 As String = nd.DataRow("  ")
\'Select Case nd.Level
\'Case 0
\'nd.Text = nd.text & "年(" & dt3.Compute("Sum(次数)","年 = " & Year) & ")"
\'Case 1
\'nd.Text = nd.text & "月(" & dt3.Compute("Sum(次数)","年 = " & Year & " And 月 = " & Month) & ")"
\'Case 2
\'nd.Text = nd.text & "(" & dt3.Compute("Sum(次数)","年 = " & Year & " And 月 = " & Month & " And  编制人 = \'" & nd.Text & "\'") & ")"
\'Case 3
\'nd.Text = nd.text & "(" & dt3.Compute("Sum(次数)","年 = " & Year & " And 月 = " & Month & " And  编制人 = \'" & Product5 & "\' And 状态 = \'" & nd.Text & "\'") & ")"
\'\'Case 4
\'\'nd.Text = nd.text & "(" & dt3.Compute("Sum(次数)","年 = " & Year & " And 月 = " & Month & " And  部门 = \'" & Product6 & "\' And  考勤班组 = \'" & Product3 & "\'  And  考勤员 = \'" & nd.Text & "\'") & ")"
\'\'Case 5
\'\'nd.Text = nd.text & "(" & nd.DataRow("次数") & ")"
\'End Select
\'Next
\'trv3.Nodes.Insert("显示所有行","显示所有行(" & dt3.Compute("Sum(次数)") & ")",0)
\'trv3.ResumeRedraw
研究了半天加载树,区别就是第二行,我改成了这样
Dim b3 As New SQLGroupTableBuilder("统计表决算登记表","决算登记表")
其他的没动。请您指点。

--  作者:15666282205
--  发布时间:2019/12/5 9:37:00
--  
老师,用的阿里云SQL.我想设计成统计加分页的加载树,有现成的实例吗?
--  作者:15666282205
--  发布时间:2019/12/5 9:47:00
--  
另外,“dt3 = b3.Build(True) \'参数设置为True,“,有的帮助写的设置为false,哪个正确?
--  作者:有点蓝
--  发布时间:2019/12/5 10:07:00
--  
分页加载树参考:http://www.foxtable.com/webhelp/topics/2692.htm


--  作者:15666282205
--  发布时间:2019/12/5 10:18:00
--  
老师,这两个帮助我都看了,我慢慢解决。关键是让您看看一楼的代码,应该怎么改。
--  作者:有点蓝
--  发布时间:2019/12/5 10:39:00
--  
请上传实例测试
--  作者:15666282205
--  发布时间:2019/12/5 11:53:00
--  
老师,您看看实例,我首先设置的筛选树,运行正常,然后不加载表,需要把筛选树改成加载树,但是我改的不行,如一楼所属。我的实际项目是用的阿里云SQL.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:加载树.foxdb



--  作者:有点蓝
--  发布时间:2019/12/5 12:17:00
--  
要设置一下数据源
Dim b3 As New sqlGroupTableBuilder("统计表决算登记表","决算登记表")
b3.ConnectionName = "数据源名称"
[此贴子已经被作者于2019/12/5 14:12:22编辑过]

--  作者:15666282205
--  发布时间:2019/12/5 13:10:00
--  
我在一楼的代码就是这样改的,不能运行,提示“生成的SQL语句错误,无法继续统计”。"b3.c"什么意思?
[此贴子已经被作者于2019/12/5 13:16:12编辑过]

--  作者:有点蓝
--  发布时间:2019/12/5 14:13:00
--  
Dim b3 As New sqlGroupTableBuilder("统计表决算登记表","决算登记表")
b3.ConnectionName = "数据源名称"