对水晶报告的计算常量求和 - CR 不提供"SUM"选项和手动"Sum"生成错误



我有一个水晶报告,该报告需要在Payslips上包含的组件(RUB_0(报告,特别是基本的薪金和养老金贡献。

某些员工一个月内可能有一个以上的paylip(bul_0(,因此,只有最新的(最大(Payslip(bul_0(每位员工必须报告以来,自从我们使用一个月以来的数字。

我的数据如下:

BUL_0       DAT_0                   RUB_0       AMT_0
1700000018  2017-01-31 00:00:00.000 SALACT_MTD  20000.000000000000
1700000019  2017-01-31 00:00:00.000 SALACT_MTD  40000.000000000000

我已经构建了以下公式,该公式在报告的详细信息部分中正确报告了最新(最大(payslip。

IF ({HISTOPAYE.RUB_0} = "SALACT_MTD") AND {HISTOPAYE.TYP_0} = 6 AND {HISTOPAYE.BUL_0} = Maximum({HISTOPAYE.BUL_0}, {HISTOPAYE.EMP_0})
THEN {HISTOPAYE.AMT_0}
ELSE 0

根据以下图像在我的报告上显示正确的(详细级别(

电流晶体输出

下面更新图像:

更新的水晶输出

当我尝试为其中一个公式字段添加摘要时,"总和"选项不可用,实际报告字段也不可用。当试图手动总和值时,Crystal返回"无法总结此字段"警告。

我发现此警告的原因是因为我上面的公式是创建一个无法总结的常数。我尝试将字段投放到不同的数据类型,并尝试设置多个公式以根据以下文章重置值,但是 - 它无法解决我的特定问题。

crystal报告总摘要的总和

我需要向书面公式的小组页脚包含一个摘要。任何帮助将不胜感激。

尝试以下:

创建一个公式Initialize并放置在报告标题中

Shared Numbervar counter;
counter:=0;

更改您现有的公式如下:

    Shared Numbervar counter;
    Local Numbervar display;
    IF ({HISTOPAYE.RUB_0} = "SALACT_MTD") AND {HISTOPAYE.TYP_0} = 6 AND {HISTOPAYE.BUL_0} = Maximum({HISTOPAYE.BUL_0}, {HISTOPAYE.EMP_0})
    THEN display:={HISTOPAYE.AMT_0}
    ELSE 0;
counter:=counter+display;
display

现在在组页脚中创建以下公式

Shared Numbervar counter;
counter;                  //This will give the final output sum of all values

最新更新