用以下代码生成了交叉统计表,为什么所有值都是翻倍了。
我主要是想让表头一个格式转换成表头2的格式。
此主题相关图片如下:数据翻倍.png
查询代码如下:
Dim tb As Table = Tables("单位成本_Table1")
Dim cb As WinForm.CheckedComboBox = e.Form.Controls("CheckedComboBox1")
Dim txt As WinForm.TextBox = e.Form.Controls("TextBox1")
If cb.Value = "" Then
MessageBox.Show("请选择年份!")
Return
End If
Dim str As String = cb.Value.Replace(",","','")
Dim b As New SQLCrossTableBuilder("单位成本查询","单位成本")
b.ConnectionName = con_name
b.Filter = "年 in ( '" & str & "')" ' And 品名 Like '%" & txt.Value & "%'"
b.AddTable("单位成本","成品代号","产品信息","品号")
b.HGroups.AddDef("成品代号") '添加客户列用于水平分组
b.HGroups.AddDef("品名") '添加客户列用于水平分组
b.HGroups.AddDef("型号规格") '添加客户列用于水平分组
b.HGroups.AddDef("简称") '添加客户列用于水平分组
b.HGroups.AddDef("系列") '添加客户列用于水平分组
b.HGroups.AddDef("部件") '添加客户列用于水平分组
b.HGroups.AddDef("工艺类别") '添加客户列用于水平分组
b.VGroups.AddDef("年") '添加产品列用于垂直分组,并设置了Pattern参数
b.VGroups.AddDef("月") '添加产品列用于垂直分组,并设置了Pattern参数
b.Totals.AddDef("单位成本") '添加数量列用于统计
b.Build '生成统计表
tb.DataSource = b.BuildDataSource()