Crystal Report基于指定日期计算分组当前值并显示在组页眉
解决Crystal Report组页眉中按EndDate计算CurrentValue总和的问题
我来帮你搞定这个需求——要在组页眉的CurrentValue位置,显示对应组内日期等于?EndDate参数的明细Amount总和对吧?按照下面的步骤操作就能实现你要的效果:
步骤1:创建条件筛选公式
首先,我们需要写一个公式来筛选出符合日期条件的Amount,为后续汇总做准备:
- 在Crystal Report中打开字段资源管理器,右键点击「公式字段」→「新建」
- 给公式起个直观的名字,比如
@FilteredAmount,然后输入以下代码:
If {你的明细日期字段} = {?EndDate} Then {你的明细Amount字段} Else 0
注意:把代码里的
{你的明细日期字段}和{你的明细Amount字段}替换成你报表里实际对应的字段名哦。
步骤2:添加组级汇总字段到页眉
接下来,基于上面的公式创建组级别的求和汇总:
- 回到字段资源管理器,右键点击「汇总字段」→「新建」
- 在弹出的配置窗口中:
- 「字段」选择我们刚创建的
@FilteredAmount - 「汇总函数」选择「求和」
- 「汇总位置」选择「Group #1(你的Name分组)」
- 「字段」选择我们刚创建的
- 点击确定后,把这个新生成的汇总字段拖到组页眉的CurrentValue位置,替换掉原来显示0.00的字段。
步骤3:验证最终效果
现在预览报表,输入示例参数2018/01/30,就能看到你想要的结果:
- GroupA的CurrentValue会显示25.00(对应明细AAA的5.00+ABC的20.00),SumOfAmount保持45.00
- 如果其他组没有对应EndDate的明细,CurrentValue会自动显示0.00,不影响原有SumOfAmount的展示
这样就完美实现了你要的「GroupName | CurrentValue | Sum」的展示效果啦~
内容的提问来源于stack exchange,提问作者user7845219
相关产品推荐
相关产品推荐

