FastReport实现分组页码(.net版)

本文介绍如何使用FastReport组件通过脚本编程实现不同客户间的分组页码累计功能。具体步骤包括设置报表属性、编写脚本逻辑来定义页码累计规则,并在界面上引用这些变量以显示当前客户所在页数及总页数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、设报表的DoublePass为true, 如图

二、编写FastReport的脚本

    //定義相關變量
    Dictionary<string, int> dic = new Dictionary<string, int>();
    int curPage, totalPages;
    string oldNo = "";
    string curNo = "";


    private void PageHeader1_BeforePrint(object sender, EventArgs e)
    {             
      curNo = ((String)Report.GetColumnValue("MasterSelected.客戶代碼"));   
        
      //首次,为每客户累计页码
      if (Engine.FirstPass)
      {
        if (dic.ContainsKey(curNo))
        {
          dic[curNo] = dic[curNo] + 1;
        }
        else
        {
          dic[curNo] = 1;
        }
      }

      //第2次,取客户累计页码      
      if (Engine.FinalPass)
      {
        //當前頁(單客戶)        
        if (oldNo != curNo)
        {
          curPage = 1;              //重置客户页码
          oldNo = curNo;
        }
        else 
        {
          curPage  = curPage + 1;   //客户页码+1
        }        
        //總頁數(單客戶)        
        totalPages = dic[curNo];
      }                      
    }

三、介面引用定义的变量,如图:



FastReport实现分组后的页码重置以及数据汇总显示是一项高级报表设计技巧。为了帮助你深入理解并掌握这一过程,建议仔细阅读《FastReport分组页码重置详解》。这份资料将为你提供详尽的解释和示例,确保你能够有效地应用在实际项目中。 参考资源链接:[FastReport分组页码重置详解](https://wenku.csdn.net/doc/2h7xa407gv?spm=1055.2569.3001.10343) 首先,了解如何在FastReport中设置分组是关键。你可以使用报表设计器中的分组编辑器来创建分组。例如,如果你正在处理客户数据,你可以基于客户的ID或名称进行分组。在分组编辑器中,你将定义分组依据,并设置分组属性。 接下来,要实现分组页码的重置,你需要利用`ResetPageNumbers`和`StartNewPage`两个属性。在分组的属性设置中,将`ResetPageNumbers`设置为True,这会在每个新分组开始时重置页码计数。将`StartNewPage`设置为True确保每个新分组开始在新的页面上,不会与前一个分组的页面内容重叠。 数据汇总可以通过聚合函数来实现,比如Sum、Average、Count等。在分组的页脚中,你可以插入一个汇总行,并使用聚合函数来计算分组内特定字段的总和。例如,如果你想计算每个客户的总销售额,可以在该行中使用Sum函数,并指定要汇总的字段。 此外,嵌套报表是FastReport中的一个重要特性,允许在主报表中嵌入子报表来展示更详细的数据。在设计主报表时,通过报表设计器,你可以添加子报表对象,并将其绑定到相应的数据源。在子报表中,你可以进一步应用分组、汇总和条件格式等技术来展示更深层次的数据分析结果。 条件格式则可以在报表中突出显示特定的数据或数据范围。例如,你可以设置条件格式来高亮显示超过某个特定值的销售记录。这些格式化规则可以在报表设计器中设置,并应用于任何需要的报表对象。 在完成这些设置后,你可以预览报表来确认分组是否正确,页码是否重置,数据汇总是否准确,嵌套报表是否按预期工作,以及条件格式是否按照设定规则应用。实际操作中,反复调试和预览是必不可少的步骤。 对于希望进一步提升报表设计能力的读者,我建议继续深入学习《FastReport分组页码重置详解》,该资料提供了更多高级技巧和最佳实践,可以帮助你在报表设计的道路上走得更远。 参考资源链接:[FastReport分组页码重置详解](https://wenku.csdn.net/doc/2h7xa407gv?spm=1055.2569.3001.10343)
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值