【问题标题】:Number of details records on the crystal report page水晶报表页面明细记录数
【发布时间】:2011-02-23 10:05:47
【问题描述】:

我想在水晶报表的最后一页找出明细记录的数量,如果没有,我想隐藏标题部分。

【问题讨论】:

    标签: crystal-reports


    【解决方案1】:

    首先,您必须创建一个公式。 然后,将其插入Details 部分。 例如@VariableA

    在公式中,输入:

    Shared NumberVar PageofLastField;
    If OnLastRecord then PageofLastField := PageNumber;
    

    抑制公式。

    公式检查记录是否为最后一条记录。 如果是最后一条记录,则将最后一条记录所在的页码保存到共享变量PageofLastField中。
    然后在标题的 Suppress 公式中,输入以下代码:

    Shared NumberVar PageofLastField;
    PageofLastField := PageofLastField;
    if pageofLastfield <> 0 and PageNumber > PageofLastField
        THEN TRUE
    ELSE FALSE
    

    【讨论】:

      【解决方案2】:

      如果我正确理解您的问题,您应该能够在页面底部(可能是报告页脚)添加一个摘要,以便在您的详细信息部分计算一个项目。例如,我刚刚打开了一份我拥有的报告,并添加了一个摘要来计算详细信息部分中的邮政编码数量。

      接下来您将看到的屏幕允许您为摘要选择计数。

      接下来,我去了 Section Expert 并把它放在了 X-2 框中,与 Header Section 中的 Suppress 复选框相对。

      如果计数 ({Stores.ZipCode}) > 50 则为真

      如果我的详细信息部分中有超过 50 个邮政编码,这将抑制标题。在您的情况下,如果您的计数为 0,那么您会压制。这就是你要找的东西吗?

      【讨论】:

      • 我会按照步骤进行,看看效果如何。如果最后一页没有记录,我的目的是隐藏最后一页的页眉。
      • 现在我明白你想要做什么了。我认为 PowerUser 是正确的,但这将非常棘手。让我明天再试一次,如果我想出什么办法,我会发布解决方案。
      • 对不起,我什么也没得到。我在其他论坛上看到过这个问题,但我找不到任何可以按照您需要的方式工作的内容。
      【解决方案3】:

      根据公式结果隐藏标题很容易。困难的部分是计算出现在特定页面上的详细信息部分的数量。

      AFAIK,如果没有一些棘手的格式,这是不可能的。例如,您可以构建您的报告,以便每个页面一次仅显示 3 条记录。然后,如果您的总记录数为 4(不能被 3 整除),您就知道最后一页将包含 1 条记录。

      【讨论】:

        【解决方案4】:

        只需在 PageHeader 的 Supress 公式中使用“OnLastRecord”即可解决问题。

        【讨论】:

        • 这正是杰罗姆的回答已经说过的?您的回答有何贡献?
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-11
        • 1970-01-01
        相关资源
        最近更新 更多