我有一个相当简单的子报表,当没有为它选择任何记录时,我想要隐藏它。问题是我有一个子报表的页眉和页脚部分,其中包含静态元素(文本框、行等)。我已将包含子报表的节、子报表本身以及子报表内的节设置为在没有记录时全部隐藏。然而,不管怎样,子报告还是出现了。没有数据的数据节确实被隐藏了,但页眉和页脚似乎保持了子报表的可见性。
有什么想法吗?哦,我在运行Crystal-Reports 2011。谢谢!
发布于 2012-09-20 01:54:24
我自己在CR2008也遇到了这个问题。以下是我为实现此目的所做的步骤:
编辑:如果您的子报表确实返回了记录,但没有显示任何记录,那么请尝试使用共享变量。要做到这一点,首先需要考虑用于显示子报告中记录的逻辑。这很可能是在明细节隐藏公式中找到的逻辑,但它将在很大程度上取决于特定子报表的格式。
现在,初始化子报表标题中的共享数字变量,然后使用上述逻辑在每次显示一行时对其进行递增。
回到主报表,您可以检查该变量的值,以便有条件地隐藏子报表的部分。我说“可能”是因为CR可能不会在查看抑制公式之前计算子报告的变量,而是给它一个机会。您需要在节抑制公式中使用whileprintingrecords;关键字来延迟其求值。祝好运!
发布于 2013-10-01 09:27:58
你有没有试过使用抑制公式?
右击Format > Check Suppress >单击编辑公式x-2\f25-2按钮
发布于 2014-09-25 03:08:24
很难跟踪帖子中的所有内容,但如果数据相互运行,那么添加一个部分,并将您的子报告放在该部分中,并确保选中了can grow。
如果您有要显示的静态数据,则可能需要创建两个子报表,一个包含静态数据,另一个包含动态数据,如果为空则取消显示。
https://stackoverflow.com/questions/12499919
复制相似问题