我不是开发人员,但我应该由CR创建一份报告,如果对你来说这是一个显而易见的问题,请原谅我,请记住我是一个真正的初学者。
我的工作由3种不同的工作组成(5种中有3种,这是我可以为工作提供的最大工作量)。 在我的SQL数据库中,与这些工作方式对应的table.field是job.phase,所以当我在报告详细信息中输入“job.phase”字段时,我得到3行用于该工作。
关键是我的报告打印输出总是必须显示5个不同的文本对象(一个在另一个之下),对应于所有5个可能的table.field记录的描述,并且文本旁边应该出现“X”当列出的每一个工作都是我工作的一部分时(不会出现任何内容)。
我所做的是以下内容:
- 创建了一个包含“job.phase”字段的子报表
- 把它放在我的第一个文本对象附近
- 在我的子报表中指定以下“show string”公式:
如果job.phase
='working1',那么'X'不然''
并且它有效:如果working1是我工作的一部分,则会出现X,如果working1不属于我的工作,则不会出现任何内容。
然后我创建了4个子报表,等于第一个子报表,并为job.phase = working2,working3,working4和working5, BUT 指定了相同的子报表,在这之后,没有显示X(甚至虽然工作1,2和3是我工作的一部分)...
请问有谁可以帮助我吗?这太令人沮丧......
答案 0 :(得分:1)
对于这样的事情使用子报告对于你正在尝试做的事情来说是过度的,并且可能导致任何数量的事情表现得很糟糕。我建议你放弃这个想法。我就是这样做的:
您要做的第一件事就是按工作分组(如果您的报告中会出现多个,我会假设它会出现)。您可以在“组页脚”部分显示标签和X.您需要像if {job.phase} = "working1" then "X"
之前一样创建5个公式,每个阶段/工作一个。将所有这5个公式放入报告的“详细信息”部分,然后禁止整个部分,使其不显示。
要显示X,您可以在组页脚中为您创建的五个公式中的每一个使用最大摘要。要执行此操作,请依次右键单击每个公式,选择“插入” - >摘要。选择最大值作为摘要,选择“组1”(您的作业ID或用于分组作业的任何字段)作为位置。这将在组页脚中插入一个字段,该字段将在为作业指定特定工作时显示X,否则它将不显示任何内容。将它们移动到相应的标签/文本字段旁边,然后就完成了。