本篇讲解 O2OA 平台流程表单打开时自动载入基础数据的常用写法。可在表单载入事件中读取当前用户对象与流程实例对象,取出员工号、手机号、拟稿人、拟稿时间与拟稿部门等字段。群组相关数据可先按人员查出所属群组,再取群组名称或获取群组内人员身份。注意先打印对象确认属性名再取值,字段为空时容易导致展示异常,取值逻辑应做兜底,避免提交时出现空白项。
以联系电话为例:
联系电话字段默认值写脚本:return this.session.user.mobile(脚本详解在下方) 即可当前用户信息对象:this.session.user
在表单 load 事件中执行 console.log(this.session.user),可查看该对象包含哪些属性
例如:
员工号:this.session.user.employee
手机号:this.session.user.mobile
当前流程实例对象:this.workContext.getWork()
在表单 load 事件中执行 console.log(this.workContext.getWork()),可查看该对象包含哪些属性
例如:
拟稿人:this.workContext.getWork().creatorPerson
拟稿时间:this.workContext.getWork().createTime
拟稿部门:this.workContext.getWork().creatorUnit
vargroupList=this.org.listGroupWithPerson(this.workContext.getWork().creatorPerson); //如果获取当前人员所在的群组,传入的参数可用this.session.user.name
groupList 返回如下图:
groupList[0].name 即可获取群组名称
var groupObj = this.org.getGroup( "test" ); //test 可为群组名称、唯一编码等 groupObj 返回如下:
var groupList = this.org.getGroup( "test" );
var personList =groupList.personList; //群组内人员
var ipersonList = []; //身份数组
for(var i=0;i <personList.length;i++){
var personList2 = this.org.listIdentityWithPerson(personList[i]); //根据人员获取身份
if( personList2.length > 0){
ipersonList.push(personList2[0].distinguishedName);
}
}
return ipersonList;
相关内容
上一篇:开发知识-数据优化知识点
下一篇:快速入门-服务器总体介绍汇总