以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]如何对后台筛选后的数据进行汇总统计  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=172071)

--  作者:onlinech
--  发布时间:2021/9/22 10:53:00
--  [求助]如何对后台筛选后的数据进行汇总统计
有一SQL数据库,利用后台筛选后,要在显示的表中的第一行显示汇总统计" 净重"的总数量,如何实现
Dim dt1,dt2 As New Date
dt1 = e.Form.Controls("DateTimePicker1").text \'读取起始日期控件的值
dt2 = e.Form.Controls("DateTimePicker2").text \'读取结束日期控件的值
\'利用各控件的值,得出筛选条件表达式
Dim Filter,fhdw,shdw,hm,ch As String
fhdw = e.Form.Controls("发货单位").text
shdw = e.Form.Controls("收货单位").text
hm = e.Form.Controls("货名").text
ch = e.Form.Controls("车号").text
If fhdw <> "" And fhdw <>"发货单位" Then
    filter = "发货单位 = \'" &  fhdw & "\'" & " And "
End If
If shdw <> "" And shdw <> "收货单位" Then
    filter = filter & "收货单位 = \'" &  shdw & "\'" & " And "
End If
If hm <> "" And hm <> "货名"Then
    filter = filter & "货名 = \'" &  hm & "\'" & " And "
End If
If ch <> "" And  ch <> "车号" Then
    filter = filter & "车号 = \'" &  ch & "\'" & " And "
End If
Filter = filter & "更新时间 >= \'" & dt1 & "\' And 更新时间 <= \'" & dt2 & "\'"
\'后台读取符合条件的记录
Tables("明细查询_Table1").DataSource = DataTables("称重信息")
Tables("明细查询_Table1").Sort = "更新时间 DESC"
DataTables("称重信息").LoadFilter = Filter
‘Dim g As New Subtotalgroup \'定义一个新的分组
’g.GroupOn = "*" \'分组列为所有列
‘g.TotalOn = "净重" \'对净重进行统计
’With Tables("称重信息")
‘    .SubtotalGroups.Clear() \'清除原有的分组
’    .SubtotalGroups.Add(g) \'加入刚刚定义的分组
‘    .Subtotal() \'生成汇总模式
’End With
DataTables("称重信息").Load()

--  作者:有点蓝
--  发布时间:2021/9/22 11:04:00
--  
Filter = filter & "更新时间 >= \'" & dt1 & "\' And 更新时间 <= \'" & dt2 & "\'"
\'后台读取符合条件的记录
DataTables("称重信息").LoadFilter = Filter
DataTables("称重信息").Load()
Tables("明细查询_Table1").DataSource = DataTables("称重信息")
Tables("明细查询_Table1").Sort = "更新时间 DESC"
Dim g As New Subtotalgroup \'定义一个新的分组
g.GroupOn = "*" \'分组列为所有列
g.TotalOn = "净重" \'对净重进行统计
With Tables("明细查询_Table1")
    .SubtotalGroups.Clear() \'清除原有的分组
    .SubtotalGroups.Add(g) \'加入刚刚定义的分组
    .Subtotal() \'生成汇总模式
End With



--  作者:onlinech
--  发布时间:2021/9/22 11:21:00
--  
如何将这个带有汇总后的表打印出来,我的代码不能显示汇总的这一行
With Tables("称重信息").PrintInfo
    .Title = "称重数据明细单"
    .PageFooter = "第[PageNo]页,共[PageCount]页"
    .PageFooterLine = True
    .PaperKind = 9
    .FitIntoPage = True
End With
Tables("称重信息").Print(True,False)

--  作者:有点蓝
--  发布时间:2021/9/22 11:34:00
--  
With Tables("明细查询_Table1").PrintInfo
……
Tables("明细查询_Table1").Print(True,False)