以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  筛选树的问题?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=74706)

--  作者:zsslly
--  发布时间:2015/9/17 9:45:00
--  筛选树的问题?
Tables("日工作单_Table1").AutoSizeRows

Tables("日工作单_Table1").Filter = "Not (事件性质 = \'互动\' or 事件性质 = \'公司任务\' or 事件性质 = \'已完成任务\' or 事件性质 = \'末完成任务\' or 事件性质 = \'模糊任务\')"

Tables("日工作单_table2").FIlter="False"




Dim dt As DataTable
Dim b As New GroupTableBuilder("日工作单_table1",DataTables("客户跟踪仿甘特图"))
b.Groups.AddDef("事件日期",DateGroupEnum.Year,"年")
b.Groups.AddDef("事件日期",DateGroupEnum.Month,"月")
b.Groups.AddDef("设计师")
b.Totals.AddDef("客户姓名",AggregateEnum.Count,"订单数") \'根据客户列来统计记录数,也就是订单数
dt = b.Build(False) \'参数设置为False,生成一个临时表,不在主界面显示
\'然后根据统计表生成目录树
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt, "年|月|设计师")
trv.StopRedraw
For Each nd As WinForm.TreeNode In trv.AllNodes
    Dim Year As Integer = nd.DataRow("年")
    Dim Month As Integer = nd.DataRow("月")
    Dim Product As String = nd.DataRow("设计师")
    Select Case nd.Level
        Case 0
            nd.Text = nd.text & "年(" & dt.Compute("Sum(订单数)","年 = " & Year) & "条)"
        Case 1
            nd.Text = nd.text & "月(" & dt.Compute("Sum(订单数)","年 = " & Year & " And 月 = " & Month) & "条)"
        Case 2
            nd.Text = nd.text & "(" & nd.DataRow("订单数") & "条)"
    End Select
Next
trv.Nodes.Insert("显示所有行","显示所有行(" & dt.Compute("Sum(订单数)") & "条)",0)
trv.ResumeRedraw



如上代码,我的窗口中的表1绑定到“客户跟踪仿甘特图”主表,本身打开窗口时我就已经对主表做过筛选了,我想后面的这个筛选树只筛选之前已经筛选过的结果,不知道代码应该怎么改?求助?

--  作者:大红袍
--  发布时间:2015/9/17 9:47:00
--  

这个意思?

 

Dim dt As DataTable
Dim b As New GroupTableBuilder("日工作单_table1",DataTables("客户跟踪仿甘特图"))
b.Groups.AddDef("事件日期",DateGroupEnum.Year,"年")
b.Groups.AddDef("事件日期",DateGroupEnum.Month,"月")
b.Groups.AddDef("设计师")
b.Totals.AddDef("客户姓名",AggregateEnum.Count,"订单数") \'根据客户列来统计记录数,也就是订单数
b.Filter = "Not (事件性质 = \'互动\' or 事件性质 = \'公司任务\' or 事件性质 = \'已完成任务\' or 事件性质 = \'末完成任务\' or 事件性质 = \'模糊任务\')"
dt = b.Build(False) \'参数设置为False,生成一个临时表,不在主界面显示

--  作者:zsslly
--  发布时间:2015/9/17 10:06:00
--  
老师您好!

这样改,筛选树里面是对的,但窗口的表1中所显示的内容却不对,如图:

我在想是不是代码生成了一个临时表,是这个临时表出了问题呢?


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


--  作者:大红袍
--  发布时间:2015/9/17 10:09:00
--  

右边,你要绑定你自己的表,同时这句代码改一下

 

Dim b As New GroupTableBuilder("temp",DataTables("客户跟踪仿甘特图"))


--  作者:zsslly
--  发布时间:2015/9/17 10:34:00
--  
请问老师加到那个位置,我加在窗口的AfterLoad中,结果不行,求助
--  作者:大红袍
--  发布时间:2015/9/17 10:35:00
--  

不可能不行啊。

 

做例子发上来


--  作者:zsslly
--  发布时间:2015/9/17 10:58:00
--  
不好意思,老师帮看看。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:统计管理.table


--  作者:大红袍
--  发布时间:2015/9/17 11:02:00
--  

请做一个可以测试的例子发上来啊

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=74673&skin=0

 

 


--  作者:zsslly
--  发布时间:2015/9/17 11:53:00
--  
上面发了,
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:统计管理.table


--  作者:zsslly
--  发布时间:2015/9/17 11:56:00
--  
我在这里面改的