NC65薪资发放项目客开

2019-12-27  本文已影响0人  把酒对牛

需求

客户要求【人力资本】模块的有关【薪资发放】单据能够支持审批流,如【社保缴交】、【考勤月报】等。

分析

这些单据都是根据各自模块的【xx项目】动态执行公式取数到界面上来的,标准产品并不支持审批流。经过沟通,直接在【社保】、【考勤】、【绩效】等模块,各自增加一个单据,由客户自己手动录入数据,并提交审批。然后在【薪酬管理】的【薪资发放项目】中,将【项目数据来源】设置为对应的单据字段。

实现

以【绩效】为例,开发【绩效审批项目】单据。

  1. 薪资发放项目添加字段
  1. 薪资期间添加参照
INSERT INTO "BD_REFINFO"("CODE", "DR", "ISNEEDPARA", "ISSPECIALREF", "METADATATYPENAME", "MODULENAME", "NAME", "PARA1", "PARA2", "PARA3", "PK_REFINFO", "REFCLASS", "REFSYSTEM", "REFTYPE", "RESERV1", "RESERV2", "RESERV3", "RESID", "RESIDPATH", "TS", "WHEREPART", "METADATANAMESPACE", "LAYER", "PK_COUNTRY", "PK_INDUSTRY") VALUES ('waperiod1', '0', NULL, NULL, 'PeriodVO', 'hrwa', '薪资期间1', NULL, NULL, NULL, 'hrwaZ7110000000XAY93', 'nc.ui.wa.ref.WaPeriodRefTreeModel', NULL, '1', NULL, NULL, NULL, '060130refinfo0018', '60130refinfo', '2019-11-29 22:58:26', NULL, 'hrwa', NULL, NULL, NULL);
alter table wa_period add taxyear char(4);
comment on column wa_period.taxyear is '纳税年度';
alter table wa_period add taxperiod char(2);
comment on column wa_period.taxperiod is '纳税期间';
  1. 单据绘制
    单据要根据薪资发放项目动态加载字段,预留了30个数值型的字段,在列表态和卡片态初始化的时候,去查询符合条件的薪资发放项目,根据编码依次将表体的列名改为对应的薪资发放项目。即在ShowUpableBillFormShowUpableBillListView两个类的handleEvent函数中处理。但是列表态没必要动态修改列名,反正导入导出是根据卡片的字段来的,列表态也无法确定pk_org
  2. 公式配置
    为了能让薪资发放项目从新建的单据上取数,需要配置公式,公式的路径是home/resources/hr/wa/formula/wa_formula.xml,该文件的编码是UTF-8,但是系统是以GB2312的格式读取的,所以配置中文的时候要以GB2312的格式打开,标准产品不存在中文配置,名称都是以多语资源的形式录入的,最关键的是parapanelconvertorprocess三个配置项。
<entry>
  <string>valueOfJXSPXM</string>
  <function>
    <defaultName>绩效审批项目</defaultName>  <!-- 名称 -->
    <displayName>valueOfJXSPXM()</displayName>  <!-- 公式 -->
    <hintMsgRes>取对象在指定绩效方案或期间中的绩效审批项目值</hintMsgRes>  <!-- 解释 -->
    <inputSigRes>绩效审批项目</inputSigRes>
    <pattern>valueOfJXSPXM\(\w+\)</pattern>  <!-- 公式格式校验 -->
    <arguments>valueOfJXSPXM({0})</arguments>  <!-- 公式参数 -->
    <parapanel>nc.ui.hr.func.WAJxspxmPanel</parapanel>  <!-- 公式配置界面 -->
    <convertor>nc.ui.hr.func.WAJxspxmConvertor</convertor>  <!-- 公式转换 -->
    <group>PE</group>  <!-- 所属系统 -->
    <process>nc.impl.wa.func.WAJxspxmParse</process>  <!-- 公式解析 -->
    <productCode>UPP6013func</productCode>
  </function>
</entry>
上一篇下一篇

猜你喜欢

热点阅读