504385214 发表于 2017-8-9 09:48:34

AR11.2,H5打印问题

chrome浏览器
edge浏览器
QQ浏览器IE模式
需要的效果是,直接打印,不需要展示报表,不需要预览报表!
扩展:是否可以设置默认打印机,就不出现打印机选择

KearneyKang 发表于 2017-8-9 10:35:57

您好
由于我们的打印整个模块是封装好了的,如果您要实现您说的结果
有两种办法,第一种就是您自己写打印接口
第二种就是修改我们的封装代码

504385214 发表于 2017-8-9 10:56:57

那到底是哪儿的问题啊?不是说这样就可以直接打印的哇?

KearneyKang 发表于 2017-8-9 12:06:36

您的反馈的问题,经过电话沟通,我已经了解了:)

504385214 发表于 2017-8-9 14:30:07

请尽快回复!我还先做个demo,哎!!还是一样!没一点多的js文件!问题依旧。希尽快解决!

KearneyKang 发表于 2017-8-9 17:11:47

好的,正在验证中

KearneyKang 发表于 2017-8-10 12:16:28

本帖最后由 Lenka.Guo 于 2017-8-10 12:19 编辑

您好
您反馈的问题,我这边经过如下步骤验证:
1、把div的宽度和高度都设置为0

2、把 uiType设置为Custom

设置后直接Chrome实现Viewer隐藏,点击打印后直接弹出打印页,不会出现预览。
IE浏览器由于本身的一些设置,所以点击打印会先弹出一个保存或者打开PDF的弹出框

谷歌浏览器运行结果:



IE浏览器运行结果:




实现主要代码:
<body>
    <button type="button" onclick="dy()">打印</button>
    <div id="viewer"    style="width:0px ;height:0px;"></div>
    <script src="Scripts\bootstrap-3.0.0.js"></script>
    <script src="Scripts\knockout-2.3.0.js"></script>
    <script src="Scripts\jquery-1.10.2.js"></script>
    <script src="Scripts\GrapeCity.ActiveReports.Viewer.Html.js"></script>
    <script type="text/javascript">      
      function dy() {      
            var viewer = GrapeCity.ActiveReports.Viewer({
                element: '#viewer',
                reportService: {
                  url: '/ActiveReports.ReportService.asmx'
                },
                uiType: 'Custom',
                report: {
                  id: "货物跟踪报表.rdlx"
                },

                documentLoaded: function reportLoaded() {
                  viewer.print();
                },
            });      
      }
    </script>
</body>
测试demo如附件


页: [1]
查看完整版本: AR11.2,H5打印问题