第1章 套打概述
1.1 概述
本文档主要是针对“组织与人事”的套打功能,其它模块的套打可参考下面说明,但是不在本文档的维护范围之内。
本文档主要是一个参考文档,部分内容有其他的处理方式能够实现也是可以的。
本文档要求对系统的套打使用有一定的了解,部分内容涉及到一些开发方面的东西,可按需关注。
1.2 套打功能路径
单据套打 |
序号 | 套打功能位置 | GUI端对应位置(系统平台/业务工具/套打) |
1 | 员工管理/入职/工作流入职/流程跟踪/单据/套打 | /HR/AffairBiz/EmpEnroll |
2 | 员工管理/转正/工作流转正/流程跟踪/单据/套打 | /HR/AffairBiz/empHire |
3 | 员工管理/调动/工作流调动/流程跟踪/单据/套打 | /HR/AffairBiz/FlucBiz |
4 | 员工管理/离职/工作流离职/流程跟踪/单据/套打 | /HR/AffairBiz/EmpResign |
批量套打(PTM3之后新增) |
序号 | 套打功能位置 | GUI端对应位置 |
1 | 员工管理/员工入职/套打 | /HR/AffairBiz/StaffRecordCard |
2 | 员工管理/调动/工作流调动/流程跟踪/套打 | /HR/AffairBiz/FluctuationBizBillAll |
3 | 员工管理/调动/跨组织调动/调出人员查看/套打 | /HR/AffairBiz/StaffTemporarilySingle |
4 | 员工管理/离职/套打 | /HR/AffairBiz/PersonDimissionProve |
5 | 员工管理/退休及返聘/套打 | /HR/AffairBiz/RetirementAndRestart |
6 | 员工管理/劳动合同/套打 | /HR/Contract/batchContract |
7 | 组织管理/岗位日常维护/岗位(编辑界面)/套打 | /HR/OrgUnit/PositionSpecification |
1.3 套打功能后台处理类
单据套打:com.kingdee.shr.affair.web.util. HRAffairDataProvider
批量套打:com.kingdee.shr.batchAffair.web.util.PrintHelpDataProvider
1.4 套打功能前端方法
套打模板名称(指定读取的GUI的套打文件路径): getTemplateName()
套打QueryPK (指定数据源QUERY元数据路径):getTemplateQueryPK()
套打dataProvider(后台处理的类): getTemplateDataProvider()
第2章 套打维护
2.1 概述
套打支持情况 |
操作 | PTM3 | PTM4 |
新增模板 | Yes | Yes |
维护模板 | Yes | Yes |
新增数据源 | No(需二次开发) | Yes(支持一般数据源新增) |
维护数据源 | Yes | Yes |
新增套打功能 | No(需二次开发) | No(需二次开发) |
原来EAS的套打模板理论上讲,都是可以使用的,但是需要解决数据源的取数问题。
2.2 新增模板
只需要在想新增模板的套打模板下面添加即可,一般是ReportOne套打模板。
2.3 维护模板
找到对应的模板编辑即可。
如果想要维护系统模板,最好复制一份到该目录下面维护。(为避免部分用户,PTM3之后修改了系统的预置模板,PTM4不再直接更新系统的预置模板,要使用最新模板的,需要手动导入)
2.4 维护数据源
2.4.1 查看套打数据源对应的元数据
2.4.2 动态扩展平台导入要维护的元数据
2.4.3 维护数据源
数据源维护完成、启用之后,重新打开已经导入该数据源对应动态查询方案的套打模板,在左边的数据栏中就会有对应的字段。(注:套打动态查询-编辑界面,不需要再维护)
2.5 新增数据源
理论上,系统并不支持批量套打新增数据源,这里提供了一个处理方式,用于客户的一些特殊处理,但不作为系统功能展现。
套打元数据配置原理:
主要解决下面的两个问题:
1、“套打管理”建立的“套打动态查询”对应的元数据query的路径
2、列表界面的数据id对应的元数据query的字段
2.5.1 进入套打元数据配置页面新增配置
地址:http://ip:port/shr/dynamic.do?uipk=com.kingdee.eas.hr.emp.app.PrintMetaConfig.list
r/dynamic.do?uipk=com.kingdee.eas.hr.emp.app.PrintMetaConfig.list
这个界面里面是PTM3之后所有使用过的元数据,这些元数据现在都是可以直接使用的,只需要在套打模板找到对应的动态查询,复制一份到新目录即可。
2.5.2 新增配置
说明 |
序号 | 字段名称 | | 重要性 |
1 | 编码 | 配置信息的编码 | 必录(不重要) |
2 | 元数据名称 | query元数据名称 | 必录(不重要) |
3 | 元数据路径 | query元数据路径 | 必录(重要) |
4 | 套打配置动态查询名称 | 套打建立的动态查询的名称 | 必录(重要) |
5 | 所选数据过滤条件 | 列表所选数据ID对应query相关实体的ID | 必录(重要) |
6 | 其它过滤条件 | | 通常不填 |
7 | 备注 | | 选填 |
2.5.3 举例
比如在套打中要新增数据源
1、 先新增动态查询
2、 配置元数据:在地址栏输入路径:
http://ip:port/shr/dynamic.do?uipk=com.kingdee.eas.hr.emp.app.PrintMetaConfig.list
3、点击创建
(1)编码:088(类似基础资料的编码,一个标示)
(2)元数据名称:员工档案袋卡套打(元数据的名称,方便日后查找)
(3)元数据路径:就是对应的动态查询的“主查询对象路径“,比如这里是com.kingdee.eas.hr.affair.app.StaffRecordCardQuery,必须填对
(4)套打配置动态查询名称:所建的动态查询的英文名称,比如这里是test,必须填对
(5)所选数据过滤条件:如果在人员列表套打,billId是人员id
这个元数据对应的人员id字段,是id,则填id(如果是person.id,则填person.id)
至此,数据源新增完成,在添加数据源时即可看到此数据源并添加。
2.6 新增套打功能(二次开发)
2.6.1 概述
客户端一般需要两种类型的文件,一个是数据源(对应的是QUERY),一个是设计的套打模板。
现在WEB端,只能读取一个文件夹下面的模板,所以前端要指定套打模板的所在路径。
如果WEB端已经有套打功能,只需要在对应的目录下建立新的模板或者数据源,没有套打功能的界面,比如合同,需要新建立一个合同管理的目录存放对应的模板和数据源。
2.6.2 开发流程
2.6.2.1 视图配置(按下面配置,name属性不要修改)
<button name="templatePrint" visible="true" caption="套打" />
2.6.2.2 前端代码修改
找到对应的JS文件:
对JS文件进行修改:
2.6.2.3 后台套打处理类修改
后台处理类,只要是用来处理新增数据源取数问题,如果能在“2.5新增数据源“里面解决数据源的取数问题,可以不进行java修改。
如果进行二次开发,最好不要直接修改系统的默认处理类,如PrintHelpDataProvider.java。
因为后面新版本,还会对这个类进行处理,再次更新后,需要再进行二次开发。
可以按下面文件复制一份修改,只要在JS里面指定新增的这个处理类,就可以了。
第3章 常见问题处理
3.1 原来人事事物-组织管理-岗位说明书目录找不到了?相关自定义的模板没有了?
1、查找原来目录下面的文件。(fpath为套打目录的英文路径)
select * from t_rpts_storagetree where fpath like '%/eas/EAS_Note.kdrs/HR/AffairBiz/OrganizationAndManagement%'
2、找到要调整位置的文件FID,更新路径
update t_rpts_storagetree set FPATH = '/eas/EAS_Note.kdrs/HR/OrgUnit/PositionSpecification' where fid = 'eaf9033f-76b5-473c-9d04-52e8b825868f'
3.2 如何调整套打打印的方式?比如说双面打印等等?
系统的套打功能生成的是PDF格式的文件,直接在网页上面打印,如果不能满足打印的一些特殊要求,可以先右键另存为PDF格式的文件,对PDF格式文件进行打印。