繁体   English   中英

Crystal Reports - 我的公式有效,但在超过 1 个子报表中重复时,所有记录都会消失

[英]Crystal Reports - my formula works, but when repeated in more than 1 subreport, all records disappear

我不是开发人员,但我应该由 C.R. 创建报告,所以如果这对您来说是一个明显的问题,请提前原谅,请记住,我是一个真正的初学者。

我的工作由 3 个不同的工作组成(5 个工作中的 3 个,这是我可以从事的工作的最大工作)。 在我的 SQL 数据库中,与这些工作相对应的 table.field 是 job.phase,所以当我在报告详细信息中输入“job.phase”字段时,我得到了 3 行该工作。

关键是我的报告打印输出总是必须显示 5 个不同的文本对象(一个在另一个之下),对应于所有 5 个可能的 table.field-records 的描述,并且每个文本对象旁边都应该出现一个“X”列出的其中一项工作是我工作的一部分(否则什么都不会出现)。

我所做的如下: - 创建了一个包含“job.phase”字段的子报告 - 将其放在我的第一个文本 object 附近 - 在我的子报告中指定以下“显示字符串”公式:如果job.phase = 'working1' then 'X' else ''并且有效:如果 working1 是我工作的一部分,则会出现 X,如果 working1 不是我的工作的一部分,则不会出现任何内容。 然后我又创建了 4 个子报表,等于第一个子报表,并为 job.phase = working2, working3, working4 和 working5, BUT指定了相同的内容,这样做之后,没有显示 X(即使工作 1、2 和 3是我工作的一部分)...

请问有人可以帮我吗? 这太令人沮丧了...

将子报表用于此类事情对于您正在尝试做的事情来说太过分了,并且可能导致许多事情表现不佳。 我建议你放弃这个想法。 这是我的做法:

您要做的第一件事是按工作分组(如果您的报告中会出现多个,我会假设它会出现)。 组页脚部分是您可以显示标签和 X 的地方。 您需要像以前一样创建 5 个公式if {job.phase} = "working1" then "X" ,每个阶段/工作一个。 将所有 5 个公式放入报表的详细信息部分,然后隐藏整个部分,使其不显示。

要显示 X,您可以在组页脚中为您创建的五个公式中的每一个使用最大汇总。 为此,依次右键单击每个公式,select Insert -> Summary。 选择最大值作为摘要,并选择“第 1 组”(您的工作 ID 或您用于对工作进行分组的任何字段)作为位置。 这将在组页脚中插入一个字段,当为作业指定特定工作时,该字段将显示一个 X,否则它不会显示任何内容。 移动它们以显示在适当的标签/文本字段旁边,您就完成了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM