找回密码
 立即注册

QQ登录

只需一步,快速开始

szpzr

高级会员

139

主题

554

帖子

1763

积分

高级会员

积分
1763

活字格认证

szpzr
高级会员   /  发表于:2017-2-22 10:30  /   查看:16945  /  回复:48
本帖最后由 szpzr 于 2017-2-25 07:54 编辑

页面保存后下列代码:
Contract_Ar Rpt = new Contract_Ar();//实例化报表
               
可以实现直接打印,但是添加下行返回当前页就不能实现打印,如何实现即直接打印,又能关闭当前页返回上一页。
                this.Response.Write("<script>alert('保存完成!');window.opener.location.replace(window.opener.document.referrer);window.close();</script>");//关闭当前窗口刷新父窗口

48 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-2-22 12:26:30
沙发
看到你说实现了打印功能,是在客户端连接的打印机还是服务端的打印机上
我的理解是,最后一行的代码强制关闭了当前窗口,导致打印无法进行。如果是在服务端进行打印应该是不会受到影响的
目前在iis服务端进行打印是可以做到的,在客户端进行打印比较困难。因为没有看到更多的代码WebViewer1这个是创建的什么对象
回复 使用道具 举报
szpzr
高级会员   /  发表于:2017-2-22 12:35:47
板凳
客户端是可以打印的。
回复 使用道具 举报
szpzr
高级会员   /  发表于:2017-2-22 12:37:16
地板
客户端那不能写最后一行语句,只能等打印后再返回前一页面?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-2-22 16:59:54
5#
本帖最后由 Richard.Ma 于 2017-2-22 17:05 编辑

如果是在客户端进行打印的话,应该是你说的这个页面的js代码(后端的代码解析后)给浏览器发送指令,那么至少要等打印开始,也就是浏览器给打印机发送了指令以后,才能关闭这个页面。是否可以等打印开始后,在前端的js代码中添加关闭窗口的方法
网上找了一下,你看看这个有没有参考意义http://blog.csdn.net/qq_16149125/article/details/52194017
回复 使用道具 举报
szpzr
高级会员   /  发表于:2017-2-23 08:09:32
6#
数据表产生若干条数据后,用循环语句试着打印全部记录,只能看到或打到最后一条记录,请教各位大神,能有办法实现直接打印产生的全部记录吗?领导要求必须这样做!
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2017-2-23 09:36:46
7#
您是指: 每条记录会生成一张报表,并打印, 但是会同时产生多条记录,对应多张报表,需要同时打印多张报表。
如果是这样,您可以参考博客:如何实现批量打印
回复 使用道具 举报
szpzr
高级会员   /  发表于:2017-2-23 09:57:19
8#
谢谢Lenka.Guo ,能否给个示例。
回复 使用道具 举报
szpzr
高级会员   /  发表于:2017-2-23 10:00:24
9#
区域报表可以吗?
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2017-2-23 11:25:08
10#
如电话沟通:
  1.   // 生成多个报表
  2.             SectionReport1[] rpt1 = new SectionReport1[3]{  };
  3.             // 为报表添加数据源
  4.             //...
  5.             //...
  6.             //执行批量打印
  7.             for (int i = 0; i < 3; i++)
  8.             {
  9.                 var rpt = rpt1[i];
  10.                 rpt.Run(false);
  11.                 var sectionDocument = rpt.Document;
  12.                 sectionDocument.Print(true, true, false);

  13.             }
复制代码


回复 使用道具 举报
12345下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部