以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 统计 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=120385) |
-- 作者:outcat -- 发布时间:2018/6/14 7:34:00 -- 统计
查找代码: If Tables("时段报表_Table1").Current IsNot Nothing Then e.Form.Controls("Table1").Visible = True
Dim Filter As String With e.Form.Controls("供应商") If .Value IsNot Nothing Then Filter = "供应商 = \'" & .Value & "\'" End If End With
With e.Form.Controls("StartDate") If .Value IsNot Nothing Then If Filter >"" Then Filter = Filter & " And " End If Filter = Filter & "日期 >= #" & .Value & "#" End If End With With e.Form.Controls("EndDate") If .Value IsNot Nothing Then If Filter >"" Then Filter = Filter & " And " End If Filter = Filter & "日期 <= #" & .Value & "#" End If End With Tables("时段报表_Table1").Filter = Filter End If Tables("时段报表_Table1").Cols("总数量").GrandTotal = True Tables("时段报表_Table1").Cols("总金额").GrandTotal = True Tables("时段报表_Table1").GrandTotal = True
汇总代码 Dim Filter As String = "1=1" Dim g As New CrossTableBuilder("统计表1",DataTables("采购总表")) With e.Form.Controls("供应商") If .Value IsNot Nothing Then Filter = "供应商 = \'" & .Value & "\'" End If End With
With e.Form.Controls("StartDate") If .Value IsNot Nothing Then If Filter >"" Then Filter = Filter & " And " End If Filter = Filter & "日期 >= #" & .Value & "#" End If End With With e.Form.Controls("EndDate") If .Value IsNot Nothing Then If Filter >"" Then Filter = Filter & " And " End If Filter = Filter & "日期 <= #" & .Value & "#" End If End With
g.Filter = Filter vars("filter") = Filter Dim cg As fxDataSource g.HGroups.AddDef("供应商") g.VGroups.AddDef("日期",DateGroupEnum.Year, "{0}年") g.VGroups.AddDef("日期", "{0}月") g.Totals.AddDef("总数量","数量") g.Totals.AddDef("总金额","金额") g.Totals.AddDef("日期",AggregateEnum.Count,"单数") g.HorizontalTotal = True g.VerticalTotal = True g.Build() cg=g.BuildDataSource Tables("时段报表_Table1").DataSource = cg Tables("时段报表_Table1").Cols("供应商").Width = 120
当第一次查询的时候,我先点了 查找,先查出单据明细,然后再点 汇总,这个正确,然后我需要改变查询时间,需要先查出单据明细,然后在点 汇总,可是这是 点 查找 会出错,提示 “未找到 列【日期】”,我想 在第二次点查询的时候,自动关闭上一次汇总的界面,改变查询时间后,先查出明细,然后点 汇总了,再出来汇总数据
|
-- 作者:有点甜 -- 发布时间:2018/6/14 8:56:00 -- 查询代码,第一行,改成
Tables("时段报表_Table1").DataSource = DataTables("单据明细") |