以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于日期列的组合统计的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=104684)

--  作者:清谷
--  发布时间:2017/8/3 9:58:00
--  [求助]关于日期列的组合统计的问题
已设置代码如下:

Dim bd1 As New GroupTableBuilder("统计表1",DataTables("综合分布表"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("计划名称1","计划名称") \'根据型号分组
bd1.Totals.AddDef("检查日期1","第一次检查_检查数") \'对数量进行统计
bd1.Totals.AddDef("复查日期1","第一次检查_复查数") \'对金额进行统计
dt1 = bd1.BuildDataSource()

Dim bd2 As New GroupTableBuilder("统计表2",DataTables("综合分布表"))
Dim dt2  As fxDataSource
bd2.Groups.AddDef("计划名称2","计划名称") \'根据型号分组
bd2.Totals.AddDef("检查日期2","第二次检查_检查数") \'对数量进行统计
bd2.Totals.AddDef("复查日期2","第二次检查_复查数") \'对金额进行统计
dt2 = bd2.BuildDataSource()

Dim bd3 As New GroupTableBuilder("统计表3",DataTables("综合分布表"))
Dim dt3 As fxDataSource
bd3.Groups.AddDef("计划名称3","计划名称") \'根据型号分组
bd3.Totals.AddDef("检查日期3","第三次检查_检查数") \'对数量进行统计
bd3.Totals.AddDef("复查日期3","第三次检查_复查数") \'对金额进行统计
dt3 = bd3.BuildDataSource()

Dim bd4 As New GroupTableBuilder("统计表4",DataTables("综合分布表"))
Dim dt4 As fxDataSource
bd4.Groups.AddDef("计划名称4","计划名称") \'根据型号分组
bd4.Totals.AddDef("检查日期4","第四次检查_检查数") \'对数量进行统计
bd4.Totals.AddDef("复查日期4","第四次检查_复查数") \'对金额进行统计
dt4 = bd4.BuildDataSource()

dt1.Combine("计划名称",dt2,"计划名称") \'将销售统计数据组合到进货统计数据
dt1.Combine("计划名称",dt3,"计划名称") \'将退货统计数据组合到进货统计数据
dt1.Combine("计划名称",dt4,"计划名称") \'将退货统计数据组合到进货统计数据

Tables("主窗口_Table7").DataSource = dt1 \'将统计结果绑定到Table
With DataTables("主窗口_Table7").DataCols  \'用表达式列计算库存数据
    .Add("合计_检查数",Gettype(Integer), "IsNull([第一次检查_检查数],0) + ISNULL([第二次检 

查_检查数],0) + ISNULL([第三次检查_检查数],0) + ISNULL([第四次检查_检查数],0)")
    .Add("合计_复查数",Gettype(Integer), "IsNull([第一次检查_复查数],0) + ISNULL([第二次检 

查_复查数],0) + ISNULL([第三次检查_复查数],0) + ISNULL([第四次检查_复查数],0)") 
End With

运行后显示:
.NET Framework 版本:2.0.50727.3655
Foxtable 版本:2017.6.12.1
错误所在事件:
详细错误信息:
从类型“Date”到类型“Decimal”的转换无效。

请问老师应如何修改?

需求如下:
1.按年度和月份分组
2.按年度和季度分组
[此贴子已经被作者于2017/8/3 10:18:41编辑过]

--  作者:有点甜
--  发布时间:2017/8/3 12:10:00
--  
bd1.Totals.AddDef("检查日期1","第一次检查_检查数") \'对数量进行统计
bd1.Totals.AddDef("复查日期1","第一次检查_复查数") \'对金额进行统计

 

改成

 

bd1.Totals.AddDef("检查日期1", AggregateEnum.Count, "第一次检查_检查数")
bd1.Totals.AddDef("复查日期1", AggregateEnum.Count, "第一次检查_复查数")