求验收记录表中各施工单位的费用合计施工。要求,对于同一施工单位、同一工程(即工程编号一样),只计算一次施工费用。同一工程,只有一家施工单位。
即以下数据,序号4、5是同一工程,对于“单位2”的工程编号为“cdfk-250”只计一次“200000”费用。
拟排除“工程编号”重复值后,再用按施工单位分组统计“施工费”,可否?
[此贴子已经被作者于2025/2/16 23:19:08编辑过]
'排除工程编号重复的记录
Tables("验收记录").RepeatFilter("工程编号", 1)
‘再组合统计施工费用,显示结果不符合要求。因以下计算公式是针对DataTables,而不是Tables
Dim g As New GroupTableBuilder("施工费用", DataTables("验收记录"))
g.Groups.AddDef("施工单位")
g.Totals.AddDef("施工费")
g.Build()
MainTable = Tables("施工费用")
Dim sql命令 As New SQLCommand
sql命令.CommandText = "s e lect max([_Identify]) as ID from {验收记录} group by 工程编号"
Dim g As New GroupTableBuilder("施工费用", DataTables("验收记录"))
g.Groups.AddDef("施工单位")
g.Totals.AddDef("施工费")
g.Filter = "_Identify in(" & String.Join(",", sql命令.ExecuteReader.datarows.Select(Function(行) CInt(行("ID")))) & ")"
g.Build()
MainTable = Tables("施工费用")
感谢“y2287958” 狐神,结果正确。代码直接照抄了,谢谢。