以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  SQL数据库统计日期优化  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=126971)

--  作者:weibu
--  发布时间:2018/11/2 8:43:00
--  SQL数据库统计日期优化
老师我用的是SQL数据库,数据库的入库日期格式包含了 毫秒如:2018-10-23 16:31:41.000
我想狐表统计界面设定了开始日期和结束日期的格式 是DATE:2018-10-23;
如果开始日期=2018-10-23;结束日期=2018-10-23;统计的就是2018-10-23一天的商品;其中SQL数据库中入库日期为2018-10-24 00:00:00.000是统计在2018-10-24里面的。
代码如下要怎么修改:
Dim lx As String = e.Form.Controls("ComboBox1").Value
Dim ks As Date = e.Form.Controls("DateTimePicker1").Value    \'日期输入框的格式是DATE型:2018-10-23
Dim js As Date = e.Form.Controls("DateTimePicker2").Value
Dim dr As DataRow = DataTables("用户信息").find("用户名 = \'" & 用户名 & "\'")  \'找到当前登录者所在的行
Dim filter As String = "1=2"
If dr("职位") = "管理者" Then
    Dim drs = DataTables("部门信息").Select("层级 like \'" & dr("层级") & "%\'")
    For Each cdr As DataRow In drs
        Filter &= " or 当前所在部门 = \'" & cdr("所属部门") & "\'And 入库日期 >= \'" & ks & "\' And 入库日期 <= \'" & js & "\' and 是否可用 = 1" 
    Next
    Else If dr("职位") = "职员" Then
    Filter = "当前所在部门 = \'" & dr("所属部门") & "\'And 入库日期 >= \'" & ks & "\' And 入库日期 <= \'" & js & "\'and 是否可用 = 1" 

End If
Dim g As New CrossTableBuilder("库存汇总", DataTables("溯源码"))
’统计代码
g.Filter = filter
g.Build()
MainTable = Tables("库存汇总")



--  作者:有点甜
--  发布时间:2018/11/2 9:08:00
--  
Dim ks As Date = e.Form.Controls("DateTimePicker1").Value  
Dim js As Date = e.Form.Controls("DateTimePicker2").Value.adddays(1)
 
.....
 
Filter &= " or 当前所在部门 = \'" & cdr("所属部门") & "\'And 入库日期 >= \'" & ks & "\' And 入库日期 < \'" & js & "\' and 是否可用 = 1"
 

--  作者:weibu
--  发布时间:2018/11/2 9:19:00
--  
感谢
[此贴子已经被作者于2018/11/2 9:19:30编辑过]

--  作者:weibu
--  发布时间:2018/11/2 10:12:00
--  
我这边发现一个问题,就是右击单元格筛选日期的时候,如果选择等于2018-10-23,选择的是后台筛选。出来的数据不全。为什么,怎么处理?
--  作者:有点甜
--  发布时间:2018/11/2 10:24:00
--  

1、右键的筛选,是对已经筛选过的数据,再做一次筛选;

 

2、参考,细节自己调整。如果还有问题,实例发上来测试。

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=119100&skin=0

 


--  作者:有点甜
--  发布时间:2018/11/2 10:26:00
--  

或者,参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=72160&skin=0