找回密码
 立即注册

QQ登录

只需一步,快速开始

wy89757

注册会员

3

主题

6

帖子

45

积分

注册会员

积分
45
最新发帖
wy89757
注册会员   /  发表于:2021-5-18 14:26  /   查看:2420  /  回复:5
本帖最后由 wy89757 于 2021-5-18 16:55 编辑

复制代码
private void Form1_Load(object sender, EventArgs e)
        {
            SectionReport report1 = new SectionReport();
            SectionReport report2 = new SectionReport();
           ............
            SectionReport report100 = new SectionReport();

             report1.LoadLayout(@"..\..\Report1.rpx");
             report2.LoadLayout(@"..\..\Report2.rpx");            
            ............
             report100.LoadLayout(@"..\..\Report100.rpx");

             report1.Run();
             report2.Run();           
             ............
             report100.Run();   

        report1.Document.Pages.AddRange(report2.Document.Pages);
        report1.Document.Pages.AddRange(report3.Document.Pages);
        ............
        report1.Document.Pages.AddRange(report100.Document.Pages);

        viewer1.Document = report1.Document;
                    }




在实际代码运行中,黄色部分的代码执行效率很低,大概需要一分钟。有没有办法只Run()一次,而不是Run()一百次?
            report1.Run();
            report2.Run();
             ..........
            report100.Run();

5 个回复

倒序浏览
Crystal.Li讲师达人认证 悬赏达人认证
论坛元老   /  发表于:2021-5-18 16:55:18
沙发
您好,这个代码逻辑 有点看不大懂。
您可以参考一下我们demo示例,关于section report的绑定:

可以在这里下载源码:
https://github.com/activereports/Samples15

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
wy89757
注册会员   /  发表于:2021-5-18 17:08:19
板凳
Crystal.Li 发表于 2021-5-18 16:55
您好,这个代码逻辑 有点看不大懂。
您可以参考一下我们demo示例,关于section report的绑定:

我是想一次性预览100张报表,但是又不想每张报表都执行一次Run()方法,因为执行100次Run()方法很耗时间,有没有办法让这100张报表只执行一次Run()方法?从而提高速度?
回复 使用道具 举报
Crystal.Li讲师达人认证 悬赏达人认证
论坛元老   /  发表于:2021-5-18 18:52:38
地板
您为啥要这样实现呢?您这个需求我们没有太理解,一般都是点击一张,加载一张报表,如果同时预览100张报表,应该没有什么好的方案,您可以说一下您的业务需求,我们看看是否有更好的方案。
回复 使用道具 举报
wy89757
注册会员   /  发表于:2021-5-19 09:43:15
5#
Crystal.Li 发表于 2021-5-18 18:52
您为啥要这样实现呢?您这个需求我们没有太理解,一般都是点击一张,加载一张报表,如果同时预览100张报表 ...

需求是:客户他们不想一张一张的预览,想按下【批量预览按钮】后,把所有的报表一次性的预览到一个窗口里,但问题是加载速度很慢,Run()方法执行上百次会耗费大量的时间
回复 使用道具 举报
Crystal.Li讲师达人认证 悬赏达人认证
论坛元老   /  发表于:2021-5-19 11:19:50
6#
首先给您说一下,同时预览100张报表肯定是有性能问题的,一次性请求的报表数量多,数据量大,必然是有性能问题。所以我们这边认为这个需求不是很合理,建议最好不要这么使用~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部