以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]加载筛选  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=144973)

--  作者:江南小镇
--  发布时间:2020/1/4 13:06:00
--  [求助]加载筛选
老师,窗口1在加载筛选日期时把行全部隐藏了。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:短信收藏.rar
 
--  作者:有点蓝
--  发布时间:2020/1/4 13:55:00
--  
因为日期列值都是有时分秒的

If e.Node.Name = "显示所有行" Then
    \'\'\' \' Tables(e.Form.Name & "_Table2").Filter = ""
    \'\'\' \' With e.Form.Controls("Table1").Table.Filter = ""
    
    e.Form.Controls("Table1").Table.Filter = ""
    
    \' End With
Else
    Dim FilterCol() As String = e.Form.Controls("复选").Value.Split(",")
    Dim TmpStr() As String = e.Node.FullPath.Split("\\")
    Dim FilterStr As String
    Dim t As Table = e.Form.Controls("Table1").Table
    For i As Integer = 0 To e.Node.Level
        If t.Cols(FilterCol(i)).IsDate Then
            Dim d As Date = cdate(TmpStr(i))
            FilterStr = FilterStr & "[" & FilterCol(i) & "] >= \'" & d & "\' and [" & FilterCol(i) & "] < \'" & d.AddDays(1) & "\' And "
        Else
            FilterStr = FilterStr & "[" & FilterCol(i) & "] = \'" & TmpStr(i) & "\' And "
        End If
    Next
    FilterStr = FilterStr.SubString(0,FilterStr.Length - 5)
    \'\'\'\'Tables(e.Form.Name & "_Table2").Filter = FilterStr
    t.Filter = FilterStr
    
End If