【发布时间】:2012-01-20 19:57:04
【问题描述】:
更新:会不会是另一个问题?
我很确定我已经采取了正确的步骤,但如果这里出现不同的问题怎么办?
我有多个参数,似乎它可能正在被重置,但随后子报告可能会在所有参数上进行计算,因此即使它正在重置,它也会在我拥有的所有多个工作订单号上重新计算在我的工单号参数中指定。
背景
我有一个 Crystal Report 2008 报表,其中包含几个子报表,它们将它们的总值共享回主报表以供操作。
子报表适用于单个记录,但在选择多个记录时不会重置,从而导致它们显示所有记录的总数。
这是一个已知解决方案的问题,但是当我尝试在报告中应用它时,它似乎没有按预期工作。
我很确定这是公式的语法或放置它们的布局的问题。
已知步骤
问题在于 Crystal 子报告没有专门重置;这是设计使然。
要强制重置报表,您必须在运行子报表之前在记录级组(即不是报表标题)中插入一个公式,将共享变量设置回零。
报告布局
- 报告标题(被禁止)
- 页眉(基本页面信息)
- Group Header 1a -- 共享变量重置公式
- Group Header 1b -- 工单信息
- 详细信息 -- 人工估算子报告和材料估算子报告
- 组页脚 1a -- 显示两个子报表总计的公式
- Group Footer 1b -- 工单的详细描述(无子报告)
- 报告页脚(被禁止)
- 页脚(基本页面信息)
人工子报表中的共享变量创建公式(放置在子报表页脚中):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts := Sum ({R_PFWR_ESTS_LABBYCODE.TOTALLABORCOSTS});
主报表中的共享变量公式(放置在主报表,页脚 1a):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts
共享变量重置公式(放置在主报表中,组标题 1a):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts:=0;
谁能看出我哪里出错了?谢谢!
【问题讨论】:
标签: layout syntax crystal-reports formula crystal-reports-2008