Delphi QuickReport:打印分组记录的数量

时间:2010-11-16 12:35:12

标签: delphi quickreports

在QuickReport 3和Delphi中,如何打印按TQRBand类型GroupFooter分组的记录数?

是否涉及表达和计数?感谢。

编辑:可以命名为“为每个组生成小计”。

假设我们有

<header>
<title>
<group header>
<deail>
<deail>
<deail>
<group footer> print here 3

<group header>
<deail>
<deail>
<group footer> print here 2

<summary>

2 个答案:

答案 0 :(得分:1)

难道你不能自己这样做吗?创建内存变量 iDetail:Integer 您必须在适用的 OnBeforePrint 方法处理程序中将其重新初始化为零。然后你想要它打印的地方做一个 inttostr(idetail)

我发现QuickReport有许多限制,你必须自己编写这样的东西。

答案 1 :(得分:0)

我通过混合内存和QR帮助阅读来写这个...我手头没有QR来测试我说的内容,所以你应该在接受我的答案之前测试;)< / p>

将TQRExpr组件放在该组的页脚区域上。然后在对象检查器中找到Expression属性,您可能需要单击省略号按钮以启动表达式编辑器并使用count函数构建新表达式。

或者您可能需要手动输入表达式,例如'Count( Table1.Field1 )'

将ResetAfterPrint属性设置为true,以指示组件在新组启动之前将计数器置于0。

您可能希望使用Mask属性格式化该数字。

修改 @none状态Count不带任何参数,所以我删除了我原先用括号括起来的那个,但是我不确定你是否必须使用括号本身(我无法测试它)。如果您有兴趣使用计数而不是重新发明轮子,请评论它是否如现在所示 - 或不 - 。