Text 如何在Crystal Report中基于标题值抑制文本对象?

Text 如何在Crystal Report中基于标题值抑制文本对象?,text,crystal-reports,header,hide,suppress,Text,Crystal Reports,Header,Hide,Suppress,如何基于标题值抑制Crystal报表中的文本对象字段。 标题下方有两个文本对象字段,我想根据标题抑制其中一个 也就是说,我的头是动态的,它得到不同的头值 案例1。在某些情况下,如果标题为“ABC”,则我希望抑制或隐藏第一个文本对象。 案例2。如果标题为“DEF”,则我要抑制或隐藏第二个文本对象。要仅抑制一个字段而不是整个标题,请执行以下操作: 右键单击第一个文本对象 从菜单中选择格式化文本 在“公用”选项卡上,找到标记为“抑制”的复选框。但不要检查它 相反,单击右侧的x+2按钮 注意:它离它所属

如何基于标题值抑制Crystal报表中的文本对象字段。 标题下方有两个文本对象字段,我想根据标题抑制其中一个

也就是说,我的头是动态的,它得到不同的头值

案例1。在某些情况下,如果标题为“ABC”,则我希望抑制或隐藏第一个文本对象。

案例2。如果标题为“DEF”,则我要抑制或隐藏第二个文本对象。

要仅抑制一个字段而不是整个标题,请执行以下操作:

  • 右键单击第一个文本对象
  • 从菜单中选择格式化文本
  • 在“公用”选项卡上,找到标记为“抑制”的复选框。但不要检查它
  • 相反,单击右侧的x+2按钮

    注意:它离它所属的抑制复选框很远。有关查找按钮的帮助,请参见下面的屏幕截图

  • 在出现的公式框中,键入抑制文本框的条件。例如,如果要在标题为“ABC”时取消显示文本字段,则可能需要输入以下内容:

    {@HeaderField} = "ABC"
    
  • 对下一个文本字段重复此操作
  • 然而,可能有一个更简单的方法让你去做这件事。不要有两个文本对象,而是创建一个公式,其中包含IF-THEN-ELSE语句,以确定显示的文本

    例如:

    If {groupname} = "ABC" then "first set of text"
    Else if {groupname} = "DEF" then "second set of text"
    Else "Error"
    


    您好,看起来if-else代码给出了错误“需要一个布尔值”。我有类似这样的“DL.NO.20-MH-PZ2-197950 21-MH-PZ2-197951 20B-MH-PZ2-197952 21B-MH-PZ2-197953 20C-MH-PZ2-197954 N.D.P.S.-2-MH-PZ2-202109 20G-MH-PZ2-202110”类似地,我有另一套,根据标题,我必须插入这些。请帮助Abhiro!我很高兴我的回答提供了一些帮助。关于您的上一条评论,您是将IF-THEN-ELSE语句放在组属性的抑制部分,还是将该语句作为公式输入,作为字段?我在上面回答的第5步中的例子出现在抑制部分,我用IF-THEN逻辑发布的例子将被添加为公式字段。
    If {groupname} = "ABC" then "first set of text"
    Else "second set of text"
    
    Select {groupname}
    Case "ABC": "first set of text"
    Case "DEF": "second set of text"
    Default: "Error"