s-HR 套打导出pdf入口说明
套打导出pdf 1、方法入口:com.kingdee.shr.base.syssetting.web.controller.ReportTemplateController.reportAction(HttpServletRequest, HttpServletResponse, ModelMap) 2、入参:tdTemplatePath 套打模版路径,tdRptTemplate 套打模版 3、套打数据处理器获取com.kingdee.shr.base.syssetting.web.controller.ReportTemplateController.getDataProvider(HttpServletRequest, HttpServletResponse, ModelMap) 涉及参数:tdRptTemplate 套打模版,tdQueryPK 套打模版使用的query元数据,isSelectedAll 是否权限,queryUuid 查询的uuid,billID 单据ID(重要),dataProvider 套打数据处理器(重要) 4、导出dpf入口:com.kingdee.shr.base.syssetting.web.controller.ReportTemplateController.export(HttpServletRequest, HttpServletResponse, ModelMap, String, Object, String) 5、调用底层接口:com.kingdee.bos.ctrl.report.forapp.kdnote.webserver.KDNoteWebServerHelper.exportPDF(String, Object, OutputStream)
目前产品没有提供统一的生成套打PDF对外接口,只能二开整合后进行自行开发
套打的核心参数:
以请假单位例子,可以在url中加入参数debug=true,回传后将压缩的js解开,然后看对应js中的方法
tdTemplateName:模板名称,通过getTemplateName这个方法获取模板名称,每个功能的模板名称都不一样,通过js实现写入到这里(重写core.js的方法getTemplateName,core.js中此方法的值留空,各领域都需自行写入)
dataProvider:数据处理器,通过getTemplateDataProvider这个方法获取套打的数据处理器,如果使用框架的统一数据处理器,则无需重写此方法(重写core.js的方法getTemplateDataProvider,如果走core.js的默认套打处理为:com.kingdee.bos.ctrl.print.common.provider.DefaultPrintDataProvider)
其他参数可以通过对应方法(core.js的templatePrintAction方法)看
tdQueryPK:套打使用查询的主query的元数据全路径,默认为空,core.js的getTemplateQueryPK方法获取,领域和二开可以重写
billId:单据ID,通过core.js的getTemplatePrintId方法获取,领域和二开可以重写
举例如下图:
模板名称:/s-HR/Attendance/LeaveBill
数据处理器:com.kingdee.shr.ats.web.templatePrint.LeaveBillPrintHelpDataProvider
js调用套打的入口为:core.js的templatePrintAction方法,领域调用只需js走这套继承体系,视图将套打按钮配置出来就可以自动调用,如果需要自己写套打入口,可以参考此方法的内部实现。
老师,能请教下js该怎么调用吗?
s-HR 套打导出pdf入口说明
本文2024-09-16 23:44:51发表“s-hr cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-shr-56536.html