【问题标题】:Count number of rows in a report using VB使用VB计算报表中的行数
【发布时间】:2012-05-10 19:39:46
【问题描述】:

我有一个包含位置列表的 VB 报告。我将此列表分为多个区域,我需要计算每个区域部分的总行数。我有一个包含我的区域字段的 groupHeader,然后在组中我列出了该区域的相应条目。然后在 groupFooter 我想给出组中的条目总数。我怎样才能做到这一点?我的 groupFooter 中有两个字段

  1. 组数
  2. groupTotalAmount

-这总结了我在每个条目中的值。任何指导将不胜感激。

【问题讨论】:

  • 听起来你想计算控件(不明白所有):如果是这样,试试这个: Dim total as Integer = 0 For each con In groupHeader.Controls total = total + 1 End For跨度>
  • vb.net 还是 vb6?他们不共享任何相同的技术。

标签: vb.net activereports


【解决方案1】:

埃维恩,

您可以通过在设计器本身中设置一些属性来获取组中的总记录。最简单的例子是使用 NorthWind 数据库。您将报告绑定到“客户”表,并希望报告按国家/地区分组,其中每个组将包含该特定国家/地区的城市。

根据您的问题,我认为您已经了解如何在报告中获取组,因此我将仅讨论获取每个组的记录数。在 GroupFooter 中放置一个文本框。将其 datafield 属性设置为“Country”(与 groupheader 相同)。现在您需要为文本框设置以下属性:

  • SummaryFunction:- 计数
  • SummaryGroup:- GroupHeader1(或您的报告中的组头名称)
  • SummaryRunning:- 组
  • SummaryType:- 小计

您还可以使用以下代码以编程方式获得相同的结果。请注意,“TextBox1”是用于显示计数的文本框,位于 GroupFooter 部分:

Private count As Integer = 0

Public Sub GroupHeader1_Format()
    count = 0
End Sub

Public Sub Detail1_Format()
    count += 1
End Sub

Public Sub GroupFooter1_Format()
    TextBox1.Text = count.ToString()
End Sub

我希望这会对你有所帮助。您可能还想查看 ActiveReports blogs,您可以在其中找到有关各个感兴趣领域的博客。

【讨论】:

  • @Matt..感谢您指出这一点。我不确定我是如何错过 VB.NET 部分的。我已将代码转换为 VB..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-04
  • 2015-04-25
  • 1970-01-01
  • 1970-01-01
  • 2015-01-24
  • 2020-03-27
  • 1970-01-01
相关资源
最近更新 更多