所以我的问题是我创建了一个按经销商编号分组的报告 . 在这个组中,我创建了运行总计来总结每个经销商的数量,然后只显示他们的总量 . 我在组头中将所有变量重置为0 . 当我在CR中查看报告时看起来很好 . 但是通过 Spectator 或导出到excel -data只会显示正在运行的总数 . 似乎它在组头中没有重置为0 . 任何想法将不胜感激 . 如果在CR中正确显示,问题可能只与 Spectator 有关吗?
在报表头中:
whileprintingrecords;
global numbervar volume := 0;
组的详细信息部分:公式字段
if Month({appl_trans.trans-dt}) = 1
and Year({appl_trans.trans-dt}) = Year(CurrentDate) then (
if previousisnull({contract1.contract-no}) then
global numbervar volume := {contract1.cost-base};
if {contract1.contract-no} <> previous({contract1.contract-no}) then
global numbervar volume := volume + {contract1.cost-base}
else
global numbervar volume := volume
);
在组头中:
whileprintingrecords;
global numbervar volume := 0;
在组页脚:公式字段
whileprintingrecords;
global numbervar volume := volume;
1 回答
你的变量使用过于复杂,因此CR可能会做一些奇怪的事情 . 完全摆脱报告 Headers 中的公式 - 您已经在组头中重新初始化变量 . 接下来,将详细信息部分中的公式更改为以下内容:
将公式保持在组 Headers 中 . 然后使用此公式显示页脚中的音量:
您通常只想为每个公式声明一个变量,这意味着只有一个“全局数字变量x”,并且对于使用该变量的每个公式都要这样做 . 您也永远不需要为自己设置变量,因为它实际上不会做任何事情 .
实现此目的的另一种方法可能比使用公式更简单,您可以添加一个Running Total字段来汇总,评估的变化并在每个组后重置 . 或者另一种方法是在上添加另一个内部分组,并在组页脚中插入一个Summary字段 . 无论哪种方式都可以完成工作 .