以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  对8.27改进版日历继续提问?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=58312)

--  作者:苍风霁月
--  发布时间:2014/10/15 11:12:00
--  对8.27改进版日历继续提问?

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=56011&replyID=&skin=1

 

请问,如果这里要进行条件筛选(如按登录用户),如何操作?在哪里改?

 

 

测试:如果用datatable.loadfilter载入,能将表内容按条件筛选,但日历框中的内容是没变的(没经条件筛选)

[此贴子已经被作者于2014-10-15 11:24:59编辑过]

--  作者:苍风霁月
--  发布时间:2014/10/15 11:28:00
--  

请各路高手支招啊!


--  作者:逛逛
--  发布时间:2014/10/15 11:40:00
--  

1、在全局变量上加上

   Public _CustomFilter As String = ""       \'自定义的删选条件

2、在源代码中找到下列方法,把它替换掉

    \'数据表刷新方法
    Public Sub 数据刷新()
        \'默认为Access数据源
        Dim Filter As String = n事务时间 & ">=#" & _表首 & "# and " & n事务时间 & "<=#" & _表尾 & "#"
        If 事务主表_dt.SourceType = 2 Then \'SQL Server数据源
            Filter = n事务时间 & ">=\'" & _表首 & "\' and " & n事务时间 & "<=\'" & _表尾 & "\'"
        End If
        If _CustomFilter <> "" Then
            Filter = Filter & " And " &  _CustomFilter
        End If
        事务主表_dt.LoadFilter = Filter
        事务主表_dt.LoadOrder = n事务时间
        事务主表_dt.Load()
    End Sub

3、自己定义_CustomFilter
 
 比如  _CustomFilter = "(用户=\'张三’or 用户=\'李四’)"


--  作者:Bin
--  发布时间:2014/10/15 11:42:00
--  
筛选后重新生成一次.

或者到BeforeLoadInnerTable里设置
Filter


--  作者:苍风霁月
--  发布时间:2014/10/15 12:12:00
--  

谢谢,搞定!