如何在SAP Crystal Reports中按项目统计记录数及设置行号显示?
解决Crystal Reports中行号/总记录数显示异常的问题
你遇到的问题大概率是两个原因导致的:总记录数的计算逻辑有误,或是公式和项目名字段放在了同一个文本框里,才会输出和项目名称相关的错误内容。咱们一步步来修正:
修正总记录数的计算逻辑:
你用的Count({rpt_PackingSlip.LabelQTY})是统计LabelQTY字段的条目数,如果这个字段有重复值、空值,或者报表存在分组,都会导致计数不准。Crystal Reports有个更靠谱的内置函数TotalRecordCount,可以直接获取整个报表的总记录数,不用依赖具体字段。更新公式内容:
把你的公式改成下面这样:CStr(RecordNumber, "0") & "/" & CStr(TotalRecordCount, "0")如果你的Crystal Reports版本比较旧,没有
TotalRecordCount函数,可以用唯一字段做报表级计数(比如你的SalesOrder每行都是唯一的):CStr(RecordNumber, "0") & "/" & CStr(Count({rpt_PackingSlip.SalesOrder}, "报表"), "0")这里的
"报表"指定了计数范围是整个报表,避免分组逻辑干扰结果。确认公式的放置位置:
务必把这个公式放在单独的文本框里,不要和ITEM NAME字段合并在同一个文本框中。如果放在一起,Crystal Reports会把字段内容和公式结果强行拼接,就会出现你看到的类似Pure Lou...的错误输出。
按照上面的步骤调整后,应该就能正确显示1/3、2/3、3/3这类行号/总记录数的格式了。
内容的提问来源于stack exchange,提问作者user9399808
相关产品推荐
相关产品推荐

