Felix.Li 发表于 2022-12-12 16:32:20

【报表】 无预览打印

本帖最后由 Bella.Yuan 于 2023-1-18 15:29 编辑

wyn的无预览打印来了!!!

                              
众所周知wyn的很强大的一点就在于它的强大嵌入式。其中很重要的一点就是很多借口的开放.我们可以通过接口获取很多数据信息,更包括直接集成页面或者或许数据。
当然,包括我们今天的无预览打印也是这样。话不多说,上干货!!!!!


主要是参考我附件中的HTML中的script文件。或者直接运行也可以看到
我们需要的是门户地址(wyn发布的地址)、可以访问改报表的token(我们接口调用如果不是内部调用,都需要token)、需要打印的报表ID

我们的流程主要是:
启动一个打印服务器用来执行打印操作   ----》wyn调用导出接口,导出一个PDF流给打印服务    ----》   打印服务获取PDF流并调用默认打印机----》    打印结果

那具体如何实现呢:
第一步启动附件中的PrintAgent.exe(打印服务、调用系统默认打印机、端口8088)
第二步:

总共发起五部请求,其中所需要的三个参数分别在其中拼接。首先我们导出报表的PDF流我们内部需要一个PDFID,这个ID每一个服务器都不一样。
然后会通过这个PDFID去获取PDF导出地址,也就是第二步,获取导出地址
第三步就是获取到的地址,这是一个中专过程
第四部,用上一步获取到的地址进行PDF导出。输出结果为一个Blob类型的PDF流
第五步:调用打印接口进行打印

以上就是无预览打印的五个流程,如果这个知道了咱们就可以随意添加在自己的代码中,只要最后走这个流程即可
(小提示,如果打印机端口被占用,想改改变,可以自行修改代码:)

打印附件:
页: [1]
查看完整版本: 【报表】 无预览打印