在Crystal Reports中,如果任何行包含特定值,如何禁止文本对象

时间:2014-07-18 19:33:40

标签: crystal-reports

在我的报告中,如果任何行中的列值包含特定值,我想在报告标题中显示警告文本对象。

"Warning, this report has problems"

如何构建文本对象的抑制公式来实现此目的?

如果有其他方法可以隐藏/显示它,那也没关系。

2 个答案:

答案 0 :(得分:2)

如何构建文本对象的抑制公式来实现此目的?

  1. 右键单击文本对象
  2. 转到常用标签
  3. 如果有一个带x2的按钮,右边有一个Suppress复选框,点击此按钮
  4. 在公式编辑器中编写一个公式,如果这个"某个值"在行中或否则为

答案 1 :(得分:0)

让我们假设您对价值的发生感兴趣" WarningValue"在专栏#34; MyColumn"在表格中"结果"。

首先,创建一个公式。我们称之为" MyFormula"。它应该是这样的:

if not isnull({Result.MyColumn}) and {Result.MyColumn} = "WarningValue" then 1 else 0

然后将此公式放入详细会话中。你可以压制它。

然后使用右键单击报告标题。在上下文菜单中,选择"在下面插入部分"。在文本框中输入消息"警告,此报告存在问题"在这个新的部分内。使用右键单击此部分,然后选择"部分专家"在上下文菜单中。将以下公式放入"抑制"选项:

sum({@MyFormula}) < 1

因此,如果报告计算至少发生一次&#34; WarningValue&#34;,则不会抑制该消息。