【问题标题】:How to suppress a Text Object based on header value in Crystal Report?如何根据 Crystal Report 中的标题值抑制文本对象?
【发布时间】:2023-03-28 10:02:02
【问题描述】:

如何根据标题值在 Crystal Report 中隐藏文本对象字段。 我在标题下方有 2 个文本对象字段,我想根据我的标题取消一个或其他。

即我的标题是动态的,它得到不同的标题值。

案例 1。在某些情况下,如果标题是“ABC”,那么我想禁止或隐藏第一个文本对象。
CASE 2. 如果标题是“DEF”,那么我想抑制或隐藏第二个文本对象。

【问题讨论】:

    标签: text crystal-reports header hide suppress


    【解决方案1】:

    只抑制一个字段而不是整个标题:

    1. 右键单击第一个文本对象
    2. 从菜单中选择设置文本格式
    3. 在“常用”选项卡上,找到标记为 Suppress 的复选框。不过不要检查它。
    4. 请点击右侧的 x+2 按钮。

      注意:它与它所属的 Suppress 复选框相去甚远。有关查找按钮的帮助,请参阅下面的屏幕截图。

    1. 在出现的公式框中,输入您的隐藏文本框的条件。例如,如果您想在标题为“ABC”的情况下隐藏文本字段,那么您可能需要输入以下内容:

      {@HeaderField} = "ABC"
      
      1. 重复下一个文本字段。

    但是,您可能有更简单的方法来解决此问题。不要使用两个文本对象,而是创建一个公式,其中包含 IF-THEN-ELSE 语句以确定显示的文本。

    例如:

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

    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"
    

    【讨论】:

    • 嗨,看起来 if else 代码给出了错误“需要布尔值”。我有这样的东西“ DL.NO. 20-MH-PZ2-197950 21-MH-PZ2-197951 20B-MH-PZ2-197952 21B-MH-PZ2-197953 20C-MH-PZ2-197954 NDPS-2-MH PZ2 20F-MH-PZ2-202109 20G-MH-PZ2-202110" 同样,我还有另一组,根据标题我必须插入这些..请帮助
    • 嗨阿比罗!我很高兴我的回答提供了一些帮助。关于您的最后一条评论,您是将 IF-THEN-ELSE 语句放在组属性的抑制部分中,还是将语句作为一个公式输入,作为一个字段?我上面答案的第 5 步中的示例位于抑制部分,而我使用 IF-THEN 逻辑发布的示例将被添加为公式字段。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-10
    相关资源
    最近更新 更多