以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]窗口分组统计  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=119395)

--  作者:KWK001
--  发布时间:2018/5/24 10:00:00
--  [求助]窗口分组统计
想利用窗口的3个CheckBox控件作为条件,分组统计,请高手看看注明写代码?

Dim fg As WinForm.CheckBox = e.Form.Controls("CheckBox1")
Dim cj As WinForm.CheckBox = e.Form.Controls("CheckBox2")
Dim jc As WinForm.CheckBox = e.Form.Controls("CheckBox3")
Dim g As New GroupTableBuilder("统计表1", DataTables("data"))
g.Groups.AddDef("日期", DateGroupEnum.Year, "年")
g.Groups.AddDef("日期", "月")
g.Groups.AddDef("日期", DateGroupEnum.Day, "日")
g.Groups.AddDef("工号")
g.Groups.AddDef("姓名")
g.Totals.AddDef("作业时间")
g.Totals.AddDef("必要时间")
g.Totals.AddDef("生产数")
g.Filter = "[工序_检查]=jc or [工序_正常抽检]=cj or [工序_返工]=fg"
g.Build()
g.VerticalTotal = True
Tables("生产效率_Table1").DataSource = g.BuildDataSource()
Dim t As Table = Tables("生产效率_Table1")
Dim dc = t.DataTable.DataCols.Add("生产能率", Gettype(Double),"必要时间/作业时间")
dc.SetFormat("0.00%")
Tables("生产效率_Table1").AutoSizeCols()

--  作者:有点甜
--  发布时间:2018/5/24 10:04:00
--  

Dim fg As WinForm.CheckBox = e.Form.Controls("CheckBox1")
Dim cj As WinForm.CheckBox = e.Form.Controls("CheckBox2")
Dim jc As WinForm.CheckBox = e.Form.Controls("CheckBox3")
Dim g As New GroupTableBuilder("统计表1", DataTables("data"))

g.Groups.AddDef("日期", DateGroupEnum.Year, "年")
g.Groups.AddDef("日期", "月")
g.Groups.AddDef("日期", DateGroupEnum.Day, "日")
g.Groups.AddDef("工号")
g.Groups.AddDef("姓名")
g.Totals.AddDef("作业时间")
g.Totals.AddDef("必要时间")
g.Totals.AddDef("生产数")
g.Filter = "[工序_检查]=\'" & jc.Checked & "\' or [工序_正常抽检]=\'" & cj.Checked & "\' or [工序_返工]=\'" & fg.Checked & "\'"
g.VerticalTotal = True
Tables("生产效率_Table1").DataSource = g.BuildDataSource()
Dim t As Table = Tables("生产效率_Table1")
Dim dc = t.DataTable.DataCols.Add("生产能率", Gettype(Double),"必要时间/作业时间")
dc.SetFormat("0.00%")
Tables("生产效率_Table1").AutoSizeCols()


--  作者:KWK001
--  发布时间:2018/5/24 10:11:00
--  
可以了,谢谢!