电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

如何去掉员工姓名全拼中的分隔符'

来源:金蝶云社区作者:金蝶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格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信