以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  时间问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=157926)

--  作者:BG小白
--  发布时间:2020/11/3 0:31:00
--  时间问题
Dim y As Integer = e.Form.Controls("ComboBox1").text
Dim m As Integer = e.Form.Controls("ComboBox2").text
Dim s As String = e.Form.Controls("checkedComboBox1").text
Dim dt1 As New Date(y, m, 1)
Dim dt2 As New Date(y, m, Date.DaysInMonth(y,m)) \'获取该月的最后一天

Dim m1 As Integer = e.Form.Controls("ComboBox2").text
Dim dt3 As New Date(y, m1, 1)
Dim dt4 As New Date(y, m1, Date.DaysInMonth(y,m)) \'获取该月的最后一天
dt3 = dt3.AddMonths(-1)
dt4 = dt4.AddMonths(-1)
Dim g1 As New GroupTableBuilder("上月销售统计", DataTables("SG_Gathering"))
g1.Groups.AddDef("vShop")
g1.Groups.AddDef("vSPCode")
g1.Groups.AddDef("dtDate", DateGroupEnum.None)
g1.Totals.AddDef("fRealMoney")
g1.FromServer = True
g1.Filter = "dtdate >= \'" & dt3 & "\' And dtdate <= \'" & dt4 & "\' and vShop in (\'" & s.replace(",", "\',\'") & "\')"
g1.Build()

Dim g As New GroupTableBuilder("本月销售统计", DataTables("SG_Gathering"))
g.Groups.AddDef("vShop")
g.Groups.AddDef("vSPCode")
g.Groups.AddDef("dtDate", DateGroupEnum.None)
g.Totals.AddDef("fRealMoney")
g.FromServer = True
g.Filter = "dtdate >= \'" & dt1 & "\' And dtdate <= \'" & dt2 & "\' and vShop in (\'" & s.replace(",", "\',\'") & "\')"
g.Build()

这段代码是有什么问题吗?为什么我统计出来没有当月最后一天

--  作者:有点蓝
--  发布时间:2020/11/3 8:43:00
--  
Dim m1 As Integer = e.Form.Controls("ComboBox2").text
Dim dt3 As New Date(y, m1, 1)
Dim dt4 As date = dt3 
dt3 = dt3.AddMonths(-1)
Dim g1 As New GroupTableBuilder("上月销售统计", DataTables("SG_Gathering"))
g1.Groups.AddDef("vShop")
g1.Groups.AddDef("vSPCode")
g1.Groups.AddDef("dtDate", DateGroupEnum.None)
g1.Totals.AddDef("fRealMoney")
g1.FromServer = True
g1.Filter = "dtdate >= \'" & dt3 & "\' And dtdate < \'" & dt4 & "\' and vShop in (\'" & s.replace(",", "\',\'") & "\')"
g1.Build()
[此贴子已经被作者于2020/11/3 13:35:35编辑过]

--  作者:BG小白
--  发布时间:2020/11/3 12:37:00
--  
Dim dt1 As New Date(y, m, 1)
Dim dt2 As New Date(y, m, Date.DaysInMonth(y,m)) \'获取该月的最后一天
Dim g As New GroupTableBuilder("本月销售统计", DataTables("SG_Gathering"))
g.Groups.AddDef("vShop")
g.Groups.AddDef("vSPCode")
g.Groups.AddDef("dtDate", DateGroupEnum.None)
g.Totals.AddDef("fRealMoney")
g.FromServer = True
g.Filter = "dtdate >= \'" & dt1 & "\' And dtdate <= \'" & dt2 & "\' and vShop in (\'" & s.replace(",", "\',\'") & "\')"
g.Build()

这段代码也是无法获取最后一天

--  作者:BG小白
--  发布时间:2020/11/3 12:46:00
--  
好了,解决了,谢谢蓝老师

Dim y As Integer = e.Form.Controls("ComboBox1").text
Dim m As Integer = e.Form.Controls("ComboBox2").text
Dim s As String = e.Form.Controls("checkedComboBox1").text
Dim dt1 As New Date(y, m, 1)
Dim dt2 As Date = dt1
dt2 = dt1.AddMonths(1)
Dim m1 As Integer = e.Form.Controls("ComboBox2").text
Dim dt3 As New Date(y, m1, 1)
Dim dt4 As Date = dt3 
dt3 = dt3.AddMonths(-1)
Dim g1 As New GroupTableBuilder("上月销售统计", DataTables("SG_Gathering"))
g1.Groups.AddDef("vShop")
g1.Groups.AddDef("vSPCode")
g1.Groups.AddDef("dtDate", DateGroupEnum.None)
g1.Totals.AddDef("fRealMoney")
g1.FromServer = True
g1.Filter = "dtdate >= \'" & dt3 & "\' And dtdate <= \'" & dt4 & "\' and vShop in (\'" & s.replace(",", "\',\'") & "\')"
g1.Build()

Dim g As New GroupTableBuilder("本月销售统计", DataTables("SG_Gathering"))
g.Groups.AddDef("vShop")
g.Groups.AddDef("vSPCode")
g.Groups.AddDef("dtDate", DateGroupEnum.None)
g.Totals.AddDef("fRealMoney")
g.FromServer = True
g.Filter = "dtdate >= \'" & dt1 & "\' And dtdate <= \'" & dt2 & "\' and vShop in (\'" & s.replace(",", "\',\'") & "\')"
g.Build()

--  作者:有点蓝
--  发布时间:2020/11/3 13:37:00
--  
改为小于,如果加上=就把下月1号的数据也算进去了

And dtdate
< 
--  作者:BG小白
--  发布时间:2020/11/3 13:44:00
--  
好像是这样子,但是我现在测试并没出现下个月1号的
--  作者:BG小白
--  发布时间:2020/11/3 13:47:00
--  
虽然测试了一下没有因为=符号数据出错,严谨一点还是改了,改了后数据是一样的
--  作者:BG小白
--  发布时间:2020/11/3 13:48:00
--  
谢谢蓝老师