设置了一个交叉汇总
Dim d1 As Date = e.Form.Controls("StartDate2").Value
Dim d2 As Date =e.Form.Controls("EndDate2").Value
Dim b As New SQLCrossTableBuilder("设备配件年汇总","设备配件采购")
b.C
b.Filter="结算日期 >= '" & d1 & "' And 结算日期 <= '" & d2 & "'"
b.VGroups.AddExp("年" , "Year(Case When Day(结算日期) > 22 Then DateAdd(d,9,结算日期) Else 结算日期 End)")
b.VGroups.AddExp("月" , "Month(Case When Day(结算日期) > 22 Then DateAdd(d,9,结算日期) Else 结算日期 End)")
b.HGroups.AddDef("申购单位")
b.Totals.AddDef("结算金额", "结算金额")
b.HorizontalTotal = True
b.VerticalTotal = True
b.Build()
以上代码可以正常统计,现在想互换一下水平统计列和垂直统计列,把代码改成下面的问什么提示“输入的字符串格式不正确”,不能正常统计,哪位老师看看,是哪里的问题,谢谢
Dim d1 As Date = e.Form.Controls("StartDate2").Value
Dim d2 As Date =e.Form.Controls("EndDate2").Value
Dim b As New SQLCrossTableBuilder("设备配件年汇总","设备配件采购")
b.C
b.Filter="结算日期 >= '" & d1 & "' And 结算日期 <= '" & d2 & "'"
b.HGroups.AddExp("年" , "Year(Case When Day(结算日期) > 22 Then DateAdd(d,9,结算日期) Else 结算日期 End)")
b.HGroups.AddExp("月" , "Month(Case When Day(结算日期) > 22 Then DateAdd(d,9,结算日期) Else 结算日期 End)")
b.VGroups.AddDef("申购单位")
b.Totals.AddDef("结算金额", "结算金额")
b.HorizontalTotal = True
b.VerticalTotal = True
b.Build()
我只知道问题出在2行绿色代码上,因为上面绿色的代码改为
b.HGroups.AddDef("结算日期", DateGroupEnum.Year, "年")
b.HGroups.AddDef("结算日期", "月")
就可以正常统计,但是加了表达式后就不行了,哪位老师看看,哪里处理问题?
[此贴子已经被作者于2020/4/29 21:16:11编辑过]