优秀的编程知识分享平台

网站首页 > 技术文章 正文

如何使用 ActiveReports 实现直接打印功能?

nanyue 2025-05-10 23:55:07 技术文章 2 ℃

很多使用 ActiveReports 制作报表的用户都在思考一个问题:当报表加载完成之后,ActiveReports 能否帮助浏览器直接跳转到打印预览界面,自动执行打印操作?

下面,小编就来为大家介绍如何在 Web 打印过程中,将预览报表页面隐藏,从而实现直接打印。

FlashViewer

1. 新建ASP.NET 工程

2. 添加Web页面

3. 在界面中添加 WebViewer,并设置 ViewType 属性为 FlashViewer

4. 添加报表

5. 将 FlashViewer 的 ReportName 属性设置为 RdlReport1.rdlx

6. FlashViewer 提供两种方式来实现直接打印。

  • 使用 StartPrint 属性

    展开 FlashViewerOptions 属性的,设置 StartPrint 属性为True。当执行打印报表时,会显示打印对话框

  • 使用脚本实现

    1. 首先设置 FlashViewer 的 UserClientApi 属性为 True。

    2. 打开页面, 在 OnLoadProgress 事件中,添加以下脚本代码。你可以直接使用 State 属性来检测报表是否加载完成,并使用Print方法来调用系统的打印对话框。

<script language="javascript" type="text/javascript">

//javascript

var viewer;

function init()

{

GrapeCity.ActiveReports.Viewer.OnLoad("WebViewer1", function () {

viewer = GrapeCity.ActiveReports.Viewer.Attach("WebViewer1");

viewer.setEventsHandler({

OnLoadProgress: function(e) {

if (e.State == "Completed") {

// Set printing options

var ops = viewer.CreatePrintOptions();

// Modify paper orientation

ops.AdjustPaperOrientation = "Auto";

// Modify page scaling

ops.ScalePages = "Auto";

// Clear page range settings

ops.ClearPageRanges();

// Set page range

ops.AddPageRange(1, e.PageCount);

// Start printing

viewer.Print(ops);

}

}

})

})

}

</script>

以上就是将预览报表页面隐藏,从而实现直接打印的步骤。仅需要几步简单的设置,就能轻轻松松实现跳过预览的直接打印。

下载 Demo,免费试用 ActiveReports

请通过以下方式联系葡萄城,获取以上 Demo 和 ActiveReports 的免费试用版。

微信:GrapeCityDT

邮件:marketing.xa@grapecity.com

官网:www.gcpowertools.com.cn

关于葡萄城控件

葡萄城是一家跨国软件研发集团,专注控件领域近30年,是全球最大的控件提供商,也是微软认证的金牌合作伙伴。

最近发表
标签列表