以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  日期列是datetime类型筛选问题?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=120281)

--  作者:wakai
--  发布时间:2018/6/11 22:03:00
--  日期列是datetime类型筛选问题?
ft增加的日期列在SQl中是datetime类型
在进行开始期和截止日期的区间筛选时,因为还有00:00:00时问题,比如查6月10至6月12日,实际在控件中要录入为6月9日至6月13日
如果将类型改为date,窗体日期控件又无法绑定,提示“DateTimePicker只能绑定日期列”

Dim jz As WinForm.DateTimePicker = e.Form.Controls("截止日期")
Dim kc As WinForm.DateTimePicker = e.Form.Controls("开始日期")

If kc.Value IsNot Nothing Then
    If Filter > "" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "日期 > \'" & kc.Value & "\'"
End If

If jz.Value IsNot Nothing Then
    If Filter > "" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "日期 < \'" & jz.Value & "\'"
End If


--  作者:有点蓝
--  发布时间:2018/6/11 22:09:00
--  
必须使用datetime类型,筛选用法参考:http://www.foxtable.com/webhelp/scr/2720.htm

查6月10至6月12日,实际在控件中要录入6月10日至6月12日

If kc.Value IsNot Nothing Then
    If Filter > "" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "日期 >= \'" & kc.Value.date & "\'"
End If

If jz.Value IsNot Nothing Then
    If Filter > "" Then
        Filter = Filter & " And "
    End If
    Filter = Filter & "日期 < \'" & jz.Value.date.adddays(1) & "\'"
End If

--  作者:wakai
--  发布时间:2018/6/11 22:56:00
--  
谢谢蓝老师