以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [讨论]筛选树  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94026)

--  作者:yupeng
--  发布时间:2016/12/13 16:24:00
--  [讨论]筛选树

参考CaseStudy目录下的文件:统计筛选树.Table

 

老师我参考上面的例子做了一个统计筛选树,在点击子节点时出错,第一个节点没有问题,代码如下,请老师帮忙看一下。麻烦您了

 

Dim  Filter As String = ""
If e.node.Name <> "显示所有行" Then  \'要用Name属性,不能用Text属性
    Dim  d1 As   Date
    Dim  d2 As   Date
    Dim  splx  As  String =   e.Node.DataRow("商品描述_类型")
    Dim  spmx  As  String =   e.Node.DataRow("商品描述_款式")
   
    Select Case  e.Node.Level
        Case  0
            Filter = "商品描述_类型 = \'"  & splx & "\'"
        Case  1
            Filter = "商品描述_类型 = \'"  & splx & "\'" And "商品描述_类型 = \'"  & spmx & "\'"
    End Select
End If
Tables("商品表").Filter = Filter

 


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

--  作者:有点蓝
--  发布时间:2016/12/13 16:51:00
--  
Filter = "商品描述_类型 = \'"  & splx & "\' And 商品描述_类型 = \'"  & spmx & "\'"


--  作者:yupeng
--  发布时间:2016/12/13 17:13:00
--  

老师  新出来个问题了   还要麻烦您一下  谢谢您

 

\'首先生成统计表
Dim  dt  As  DataTable
Dim  b  As  New  GroupTableBuilder("统计表1",DataTables("商品表"))
b.Groups.AddDef("商品描述_类型")
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  splx  As  String =   nd.DataRow("商品描述_类型")
    Dim  Product  As  String =   nd.DataRow("商品描述_款式")
    Select  Case  nd.Level
        Case  0
            nd.Text =   nd.text  &  "("  &  nd.DataRow("订单数")  &  "款)"

        Case  1
            nd.Text =   nd.text  &  "("  &  nd.DataRow("订单数")  &  "款)"
           
        End  Select
    Next
    trv.Nodes.Insert("显示所有行","显示所有行("  &  dt.Compute("Sum(订单数)")  &  "款)",0)
    trv.ResumeRedraw

 

 


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

--  作者:有点蓝
--  发布时间:2016/12/13 17:16:00
--  
Case  0
            nd.Text =   nd.text  &  "("  &  dt.Compute("Sum(订单数)","商品描述_类型=\'" & splx & "\'")  &  "款)"