我有一份水晶报告,要求报告工资单上的成分(RUB_0),特别是基本工资和养老金缴款。
某些员工可能在一个月内拥有多个工资单(BUL_0),因此,由于我们正在处理月初至今的数据,因此只需报告每位员工的最新(最高)工资单(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
我已经构建了以下公式,可以在报告的详细信息部分中正确报告最新(最高)工资单。
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
根据以下图片在我的报告中显示哪个是正确的(在详细程度上)
更新后的图片:
当我尝试为其中一个公式字段添加摘要时,“SUM”选项不可用,实际报告字段也不可用。尝试手动求和时,crystal会返回“此字段无法汇总”警告。
我发现这个警告的原因是因为我的上面的公式,正在创建一个无法求和的常量。我已经尝试将字段转换为不同的数据类型,并尝试设置多个公式以根据下面的文章重置值,但是 - 它没有解决我的特定问题。
Crystal Report Sum of a Group Summary
我需要在所写公式的组页脚中包含摘要。任何帮助将不胜感激。
答案 0 :(得分:1)
试试这个:
创建公式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