如何去掉员工姓名全拼中的分隔符'
s-hr cloud知识来源:金蝶云社区作者:金蝶2024-09-226
本文目录[ 隐藏 ]

【适用版本】
s-HR V8.5及以上
如何去掉员工姓名全拼中的分隔符'
序言:
s-HR标准产品在员工入职时,会根据员工姓名生成姓名全拼,但是为了避免歧义和确保拼读的清晰,有些姓名的拼音会带有分隔符',例如林燕娥的拼音为linyan 'e,在某些客户把姓名全拼做用户账号使用时,因账号不能包含',会导致用户无法登录。如果客户要求将'从姓名全拼中去掉,只能二开,工作量比较大。下面介绍一种简单的方式,通过dep脚本即可实现。
实现步骤:
1、 dep导入员工_个人信息实体
在动态扩展平台导入员工_个人信息,如下图所示:

2、 扩展dep脚本
在实体扩展定义中,找到addNew方法,并在addNew方法的后置脚本中写下去掉分隔符'dep代码,如下图所示:

然后启用相应的dep方案,即可实现在员工入职时去掉姓名全拼中的分隔符'。dep addNew后置脚本代码如下:
var imp = JavaImporter();
imp.importPackage(Packages.com.kingdee.eas.util.app);
with(imp){
// 获取上下文
var ctx = pluginCtx.getContext();
// 获取方法参数,这里获取的是personInfo对象
var obj = methodCtx.getParamValue(0);
// 获取方法的返回值,这里获取的是员工id
var billId = methodCtx.getResultValue();
// 从personInfo对象中获取姓名全拼
var fullNamePingYin = obj.get("fullNamePingYin");
if (fullNamePingYin.indexOf("’") !== -1){
// 获取去掉’后的姓名全拼
fullNamePingYin = fullNamePingYin.replace("’", "");
// 更新去掉’后的姓名全拼到数据库
var sql = "update t_bd_person SET FFullNamePingYin = '" + fullNamePingYin + "' WHERE FID = '"+billId+"'";
DbUtil.execute(ctx, sql);
}
}3、实现更新员工时去掉姓名全拼中的分隔符'
上述步骤只能实现员工新增时,去掉姓名全拼中的分隔符',在员工编辑保存时,姓名全拼中的分隔符'又会出现,这是因为姓名全拼在员工编辑保存时是重新生成的。实现思路与新增逻辑一样。如下:
在实体扩展定义中,找到update方法,并在update方法的后置脚本中写下去掉分隔符'代码,如下图所示:

然后启用相应的dep方案,即可实
如何去掉员工姓名全拼中的分隔符'
【适用版本】s-HR V8.5及以上如何去掉员工姓名全拼中的分隔符'序言: s-HR标准产品在员工入职时,会根据员工姓名生成姓名全拼,...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇
下一篇



