有时需要对一列未分组的值中的部分值进行小计。
假设:
- 有一个包含加拿大和美国客户的列表。
- 要保持基于客户名以字母顺序对客户记录进行的排序。
- 不想将数据按国家/地区分组。
- 只想计算来自加拿大记录的总计值。
- 还想只计算来自美国记录的总计值。
若要完成这个任务,请创建两个运行总计,一个保存美国记录的运行总计,另一个保存加拿大记录的运行总计。
USTotal
维护美国记录的运行总计。
CanadaTotal
维护加拿大记录的运行总计。
创建条件运行总计
在字段资源管理器中,右击“运行总计字段”并单击“新建”。
提示要显示“字段资源管理器”,单击“Crystal Reports”菜单,单击“字段资源管理器”。
在“创建运行总计字段”对话框中的“运行总计名称”字段中,输入运行总计对象的名称。
在“可用表和字段”区域中,选择要进行汇总的第一个字段。
单击第一个箭头按钮,将该字段添加到“汇总字段”框中。
在“汇总类型”列表中,单击“求和”。
在对话框的“求值”部分中,单击“使用公式”,然后单击“公式”按钮(标签为 x+2)。
在“运行总计条件公式”对话框中,在公式框中输入公式。
例如,如果使用 Crystal 语法创建美国销售的运行总计,则可以输入:
{Customer.Country} = "USA"
如果使用 Basic 语法,则可以输入:
Formula = {Customer.Country} = "USA"
它通知程序在每次遇到 {客户.国家和地区} 等于“美国”的记录时计算运行总计。运行总计将忽略所有其他记录。
单击“保存并关闭”按钮。
在“创建运行总计字段”对话框的“重置”部分中,单击“从不”。
单击“确定”保存运行总计字段。
使用以上步骤创建另一个运行总计。唯一的差别是公式中的值。
返回到字段资源管理器并找到运行总计字段。
可以将这两个运行总计字段拖动到报表的“详细资料”节上,或者,如果要查看总计,也可以将它们拖动到报表的“报表尾”节上。
<table>
<colgroup>
<col style="width: 100%" />
</colgroup>
<thead>
<tr class="header">
<th><img src="images/8yfdxzdx.alert_note(zh-cn,VS.90).gif" alt="Note" class="note" />注意</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><p>放在报表上的运行总计由 # 前缀表示(如 #Total1)。</p></td>
</tr>
</tbody>
</table>