【问题标题】:Passing shared variable to a group or detail suppression formula将共享变量传递给组或详细信息抑制公式
【发布时间】:2014-04-06 14:25:57
【问题描述】:

我的报告是:

  • 报告标题被抑制
  • 页眉 a(包含将共享变量 showsection 设置为“0”或“1”的子报表 1)。
  • 如果 showsection 为 0,页面标题 b 将被抑制。
  • 如果 showsection 为 0,则页眉 c 被抑制。
  • 组标头 1 始终被抑制。
  • 如果 showsection 为 0,则会隐藏详细信息。
  • 如果 showsection 为 0,组页脚 1 将被抑制。
  • 所有其他部分都被抑制了。

    问题在于,如果 showsection 为“1”,则页眉按设计显示,但未显示详细信息和组页脚。我简化了子报表为测试所做的工作,并根据我希望测试的显示方式手动将值更改为 0 或 1。

    这是我在子报告中的代码:

    whileprintingrecords;
    shared numbervar showsection;
    showsection := 1
    

    这是我用于页眉、组和详细信息部分的抑制公式:

    whileprintingrecords;
    shared numbervar showsection;
    showsection =0
    
  • 【问题讨论】:

    • 当 showsection 设置为“0”时,所有内容都被抑制

    标签: crystal-reports


    【解决方案1】:

    像这样改变抑制公式。

    whileprintingrecords;
    shared numbervar showsection;
    if showsection =0
    then true
    else false
    

    【讨论】:

    • 这在功能上与问题状态已被使用的完全相同。唯一的区别是它更冗长。
    • 我在我的回答中没有看到任何错误...观察者问题仔细抑制条件写错了我已经正确了..我认为它不需要反对票..你认为这个有问题的公式是正确的,并提供了正确的输出whileprintingrecords; shared numbervar showsection; showsection =0
    • 是的,原始公式在功能和风格上都是正确的。 showsection=0 本身就是一个有效的布尔语句,将其放入 if 语句只会使公式复杂化。考虑到这一点,您的回答实际上并不能解决问题。
    【解决方案2】:

    不知道为什么这很重要,但是当我抑制组标题时,这导致详细信息和组页脚部分抑制公式评估为 true。在部分专家中,我取消选中了抑制框,而是标记了抑制空白部分框。

    【讨论】:

      猜你喜欢
      • 2014-03-31
      • 1970-01-01
      • 1970-01-01
      • 2016-08-08
      • 1970-01-01
      • 1970-01-01
      • 2018-10-18
      • 1970-01-01
      • 2023-03-27
      相关资源
      最近更新 更多