Crystal reports Crystal Reports 2008中的单个条形图需要多页

Crystal reports Crystal Reports 2008中的单个条形图需要多页,crystal-reports,crystal-reports-2008,Crystal Reports,Crystal Reports 2008,我正在创建一个条形图,其中的值是AVE_ZSCORE字段的最大值,该值设置为参与者代码字段的“更改时”。在任何给定的情况下,我可以在这个图表中有多达250条记录,因此我需要将图表拆分为若干页。但是,记录的数量是动态的,可以在150到250条记录之间 我已经在这个线程中尝试了解决方案,并且尽我所能地遵循了说明(请记住,我对Crystal Reports非常陌生)。我创建了一个公式,将其插入到“详细信息”部分,然后抑制该部分,然后在该公式上插入一个组,并将图表插入到“组页脚”部分。我目前使用的公式(

我正在创建一个条形图,其中的值是AVE_ZSCORE字段的最大值,该值设置为参与者代码字段的“更改时”。在任何给定的情况下,我可以在这个图表中有多达250条记录,因此我需要将图表拆分为若干页。但是,记录的数量是动态的,可以在150到250条记录之间

我已经在这个线程中尝试了解决方案,并且尽我所能地遵循了说明(请记住,我对Crystal Reports非常陌生)。我创建了一个公式,将其插入到“详细信息”部分,然后抑制该部分,然后在该公式上插入一个组,并将图表插入到“组页脚”部分。我目前使用的公式(我称之为“图表”)在4条记录上测试这一点:

阅读记录时; numbervar cnt:=cnt+1; 如果cnt为1到2,则为1其他 如果cnt在3到4之间,则为2

我的问题是,此结果的输出会产生以下3个图形,而不是每个图形包含2个记录的2个图形:

  • 一个0.00的组输出,其中包含所有4条记录(B2、BB、KK、MM) 一图
  • 只有一条记录(BB)的1.00组输出

  • 2.00的组输出,也只有一条记录,即 上一张图的相同记录(BB)

  • 如果我将公式更改为如下所示:

    阅读记录时; numbervar cnt:=cnt+1; 如果cnt为1至4,则为1

    然后输出变为

  • 0.00的组输出,在一个图形中有所有4条记录(B2,BB, KK,MM)
  • 具有一条记录的1.00组输出(BB)

  • 因此,首先,我不了解我正在使用的公式或它是如何工作的,其次,我不知道如何使它工作,以便我可以轻松地指定每个图表的列数。不幸的是,如果不完全了解您的报告布局,很难说些什么。一些截图会让事情变得简单很多。由于还没有具体说明,我希望你的报告中只有一组(提到)

    为了实现您的目标,您应该按照不同的组值呈现图表的次数。这是组的详细信息部分的呈现方式。不是页脚或页眉。由于图表无法添加到详细信息部分,因此应创建额外的虚拟组。因此,结果将分为两组:

    • 外部组(#1)将基于您的公式字段,并且没有页眉/页脚
    • 内部组(#2)将用于在页眉或页脚中显示图表
    组#2可以基于与组#1相同的公式(或者任何其他公式/字段,都不重要)


    顺便说一句,不要像在代码中那样手动计算计数

        WhileReadingRecords; numbervar cnt := cnt + 1; 
    
    您可以在要控制的任何字段上使用汇总计数类型的Running total字段。这样的字段是非常可定制的,所以您会喜欢它们