通过 ActiveReports 实现 Web 系统的报表直接打印操作

在一些系统中,并不需要先进行预览操作,而是直接打印报表数据。比如在电子商务系统中客户订单打印功能,操作人员在填写必要的用户数据之后,点击单页按钮便可直接打印客户订单。本文就结合 ActiveReports 来实现 Web 系统中直接打印报表的需求。在 ActiveReports 中实现 Web 客户端直接打印操作,主要是借助 ActiveReports 所提供的 Flash 类型的 WebViewer 控件,该控件可以在加载报表之后直接打印。<br/><img src="/image.ashx?picture=image_thumb_217.png" alt="ActiveReports 实现 Web 系统的报表直接打印" width="500px" />

发布于 2013/10/10 00:00

在一些系统中,并不需要先进行预览操作,而是直接打印报表数据。比如在电子商务系统中客户订单打印功能,操作人员在填写必要的用户数据之后,点击单页按钮便可直接打印客户订单。本文就结合 ActiveReports 来实现 Web 系统中直接打印报表的需求。在 ActiveReports 中实现 Web 客户端直接打印操作,主要是借助 ActiveReports 所提供的 Flash 类型的 WebViewer 控件,该控件可以在加载报表之后直接打印。

首先,创建一个 Web 应用程序,添加 ActiveReports 报表到工程中,并在 aspx 页面中添加 WebViewer 控件,然后设置 WebViewer 的 ViewerType 为 FlashViewer。

然后,在打印按钮单击事件的后台代码中设置 WebViewer1.FlashViewerOptions.PrintOptions.StartPrint = true;,以实现加载报表之后直接打印。

    protected void Button2_Click(object sender, EventArgs e)
    {
        GrapeCity.ActiveReports.PageReport report = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo(Server.MapPath(@"Reports\rptInvoice.rdlx")));
        // 获取用户输入数据,并传递到报表中。
        report.Report.ReportParameters[1].DefaultValue.Values.Add(TextBox1.Text);
        report.Report.ReportParameters[2].DefaultValue.Values.Add(TextBox2.Text);
        report.Report.ReportParameters[3].DefaultValue.Values.Add(TextBox3.Text);
        report.Report.ReportParameters[4].DefaultValue.Values.Add(TextBox4.Text);
        report.Report.ReportParameters[5].DefaultValue.Values.Add(TextBox5.Text);
        report.Report.ReportParameters[6].DefaultValue.Values.Add(TextBox6.Text);
        WebViewer1.Report = report;
        WebViewer1.FlashViewerOptions.PrintOptions.StartPrint = true;
        WebViewer1.Visible = true;
        WebViewer1.Width = 0;
        WebViewer1.Height = 0;
    }

预览打印运行截图:

ActiveReports Web 预览打印截图

直接打印运行截图:

ActiveReports Web 直接打印截图

源码下载:VS2010 + ActiveReports 7

 

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

加微信获取技术资讯

加微信获取技术资讯

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态