如下 数据统计代码不起作用 在设置时有效,但复制到程序中就不起作用了,请帮忙看一下。
Dim t As Table = Tables("workRecord")
Dim g As SubtotalGroup
t.SubtotalGroups.Clear()
t.GroupAboveData = False
t.TreeVisible = True
t.SpillNode = True
g = New SubtotalGroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "*"
g.TotalOn = "workingHours"
g.Caption = "总计"
t.SubtotalGroups.Add(g)
t.Subtotal()
有执行到,测试过。之前是正常,今天有人反馈不显示合计了。
最后加上msgbox试试,如果能够弹出,说明代码执行了。可能有其它代码影响
以下是全部代码,查询按钮。
Dim filter As String
Dim begindate As String = e.Form.Controls("begindate").text
Dim enddate As String = e.Form.Controls("enddate").text
If begindate ="" Or enddate ="" Then
MessageBox.Show("作业日期不能为空!","提示")
Return
End If
filter = " workdate >= '" & begindate & "' and workdate <= '" & enddate & "' "
Dim personName As String = e.Form.Controls("personName").text
filter = filter & " And personName Like '%" & personName & "%'"
Dim groupname As String = e.Form.Controls("groupname").text
If groupname <>"" Then
filter = filter & " and groupname = '" & groupname & "'"
End If
Dim workgroupname As String = e.Form.Controls("workgroupname").text
If workgroupname <> "" Then
filter = filter & " and workgroupname = '" & workgroupname & "'"
End If
Dim projectName As String = e.Form.Controls("projectName").text
filter = filter & " and projectName like '%" & projectName & "%'"
e.Form.Controls("textbox1").text=filter
DataTables("workRecord").LoadTop = 1000000
DataTables("workRecord").LoadFilter=filter
DataTables("workrecord").LoadOrder="workdate,groupname,personname"
DataTables("workRecord").Load()
If e.Form.Controls("namegroup").Checked = True Then
Dim t As Table = Tables("workRecord")
Dim g As Subtotalgroup
t.SubtotalGroups.Clear()
t.GroupAboveData = False
t.TreeVisible = True
t.SpillNode = True
g = New Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "personName"
g.TotalOn = "workingHours"
g.Caption = "{0} 小计"
t.SubtotalGroups.Add(g)
t.Subtotal()
Else
Dim t As Table = Tables("workRecord")
Dim g As Subtotalgroup
t.SubtotalGroups.Clear()
t.GroupAboveData = False
t.TreeVisible = True
t.SpillNode = True
g = New Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "*"
g.TotalOn = "workingHours"
g.Caption = "总计"
t.SubtotalGroups.Add(g)
t.Subtotal()
End If
看4楼。另外这个设置的是主表,如果打开的是副本表,肯定是没有反应的