以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  手工筛选树,为什么不显示31号的数据  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=133195)

--  作者:cuicuibing
--  发布时间:2019/4/9 14:55:00
--  手工筛选树,为什么不显示31号的数据
手工设计筛选树。
先后台加载空的数据。利用筛选树,筛选。年度筛选有31号的数据,月份筛选31号的不显示。
Dim Filter As String = ""
If e.node.Name <> "显示所有行" Then 
    Dim d1 As Date
    Dim d2 As Date
    Dim Year As Integer = e.Node.DataRow("年")
    Dim Month As Integer = e.Node.DataRow("月")
    Dim Product As String = e.Node.DataRow("业务员")
    Select Case e.Node.Level
        Case 0
            d1 = New Date(Year,1,1) \'取得该年的第一天
            d2 = new Date(Year,12,31) \'取得该年的最后一天
            Filter = "拖货日期>= #" & d1 & "# And 拖货日期<= #" & d2 & "#"
        Case 1
            d1 = New Date(Year, Month, 1) \'取得该月的第一天
            d2 = new Date(Year, Month, Date.DaysInMonth(Year,Month)) \'取得该月的最后一天
            Filter = "拖货日期>= #" & d1 & "# And 拖货日期<= #" & d2 & "#"
            MessageBox.Show("未设定业务员的客户:" & d2)
        Case 2
            d1 = New Date(Year, Month, 1) \'取得该月的第一天
            d2 = new Date(Year, Month, Date.DaysInMonth(Year,Month)) \'取得该月的最后一天
            Filter = "拖货日期>= #" & d1 & "# And 拖货日期<= #" & d2 & "# And 业务员 = \'" & Product & "\'"
    End Select
End If
Tables("产品分类_Table1").Filter = Filter
[此贴子已经被作者于2019/4/9 14:56:46编辑过]

--  作者:有点甜
--  发布时间:2019/4/9 18:51:00
--  
Dim Filter As String = ""
If e.node.Name <> "显示所有行" Then
    Dim d1 As Date
    Dim d2 As Date
    Dim Year As Integer = e.Node.DataRow("年")
    Dim Month As Integer = e.Node.DataRow("月")
    Dim Product As String = e.Node.DataRow("业务员")
    Select Case e.Node.Level
        Case 0
            d1 = New Date(Year,1,1) \'取得该年的第一天
            d2 = d1.AddYears(1)
            Filter = "拖货日期>= #" & d1 & "# And 拖货日期< #" & d2 & "#"
        Case 1
            d1 = New Date(Year, Month, 1) \'取得该月的第一天
            d2 = d1.AddMonths(1)
            Filter = "拖货日期>= #" & d1 & "# And 拖货日期< #" & d2 & "#"
            MessageBox.Show("未设定业务员的客户:" & d2)
        Case 2
            d1 = New Date(Year, Month, 1) \'取得该月的第一天
            d2 = d1.AddMonths(1)
            Filter = "拖货日期>= #" & d1 & "# And 拖货日期< #" & d2 & "# And 业务员 = \'" & Product & "\'"
    End Select
End If
Tables("产品分类_Table1").Filter = Filter