【BOS学习 2】如何实现用户在新增时申请人等于创建人,申请人带出部门及岗位信息?原创
金蝶云社区-是坏兔兔啦
是坏兔兔啦
5人赞赏了该文章 232次浏览 未经作者许可,禁止转载编辑于2024年09月27日 14:59:39
summary-icon摘要由AI智能服务提供

本文介绍了在用户新增或变更时,如何自动设置申请人、申请部门及岗位信息的系统配置方法。首先,通过控件设置建立创建人、申请人和人员信息之间的关联。其次,在单据头添加实体服务规则,包括创建人赋值给人员信息、人员信息赋值给申请人,并自动获取申请人的部门和岗位信息。最后,设置相关字段的锁定性和可见性,确保配置生效。

需求

  1. 用户新增时,申请人自动等于创建人,并且自动带出申请部门、岗位信息

  2. 申请人变更后,申请部门、岗位信息也会变更

效果

上传图片

步骤一  控件设置

创建人是用户,申请人是员工,为了使两者进行连接必须要有一个中转站(人员信息)。引用属性、即时触发更新事件更据个人选择进行设置。

标识元素类型标题基础资料类型引用属性即时触发更新事件
F_TT_CreatorId创建人创建人用户(SEC_User)用户.联系对象
F_TT_Creator基础资料人员信息人员详细信息(公共)(DB_Person)人员信息.用户
F_TT_User基础资料申请人员工(BD_EMPinfo)

岗位信息单据体.所属部

门 

岗位信息单据体.就任岗位
F_TT_Sqbm基础资料申请部门部门(BD_Department)

F_TT_Job基础资料岗位岗位信息(HR_ORG_HRPOST)

步骤二  单据头添加实体规则

为了使用户在新增时,申请人自动带出,所以我们需要在单据头添加实体服务规则

上传图片

1. 新增实体服务规则

获取人员详细信息】规则条件设置为F_TT_CreatorId <> null   OR  F_TT_User  <> null 只有实体规则中包含的字段,才会在值更新中触发实体服务规则。这是实现需求2的必要条件,否则申请人变更后,申请部门、岗位不会自动变更。

2. 新增服务 

服务描述服务类型
公式含义
1. 创建人赋值给人员信息

计算定义公式的值并填写到指定

值更新、新增)


F_TT_Creator  = F_TT_CreatorId.FLinkObject.id人员信息 = 创建人.联系方式
2. 人员信息赋值给申请人 F_TT_User =  F_TT_Creator.FEmpInfo.id申请人 =  人员信息.员工
3. 获取申请人部门F_TT_Sqbm=GetStaffInfo('F_TT_User','FPostDept')申请部门 = GetStaffInfo('F_TT_User','FPostDept')
4. 获取申请人岗位F_TT_Job = GetStaffInfo('F_TT_User','FPost')岗位 = GetStaffInfo('F_TT_User','FPost')

上传图片

注意:值更新一定要勾选,否则值更新时,实体服务规则不会生效!

步骤三 设置锁定性及可见性

上传图片

上传图片


图标赞 5
5人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!