【发布时间】:2010-12-15 22:35:44
【问题描述】:
我在 VS 2003 下的 Crystal Reports 中的 Sum 字段有问题。 我正在使用 VS 2003 和 Crystal Reports 生成一个报表,其中包含从 SQL Server 2000 数据库中检索的数据,并在运行时保存在强类型数据集中。
数据集包含多个表,其中一个表 orders 接收 SQL 查询的结果,该查询连接来自两个不同表的记录。在运行期间检查 orders 表的内容后 - 就在将数据集传递给 Report 对象之前,我已经验证了有问题的 SQL 查询工作正常,总是从数据库返回预期的数据。
对数据集进行迭代,每次迭代都会将针对不同 orderID 执行的 SQL 查询的结果合并到数据集中。 SQL 查询还从与每个 orderID 相关的其他表中检索记录,并将它们放入数据集中的适当表(orders 除外)中。
当我尝试将特定列(orders.order_amount 列)汇总到 Crystal Report 时,问题出现了。我得到的总和是不正确的。
例如,orders 表在绑定为报表的数据源时包含 3 条记录,每条记录的 order_amount = $10.00。 sum 字段的值不是返回 $30.00,而是 $50.00。
我看不出这是怎么发生的,我认为这要么是由于 Crystal Reports 中的错误,要么是由于我的报告中缺少项目。数据集已正确填充,但似乎 Crystal Reports 以某种方式将基于 orderID 检索到的相关记录混淆为 orders 表的记录,并添加到 order_amount 总和。
如果我禁用填充相关记录的 SELECT 语句,order_amount 总和会正确显示。
有人知道为什么会发生这种情况吗? 提前致谢。
雷
【问题讨论】:
标签: asp.net crystal-reports sum