WorkFlowInterface全部函数集合
WorkFlowInterface.js封装了工作流常用的JS操作API
文件路径:SystemFrameWorkV3/Script/WorkFlowInterface.js
文件路径:CRM/script/ServiceFactory/WorkFlow/WorkFlowProcess.js
文件路径:CRM/script/ServiceFactory/WorkFlow/WorkFlowInstanceCC.js
一、当前流程实例对象
调用var WorkFlowInstanceObject = GetWorkFlowInstanceObject()可返回当前发起或审批界面的流程实例对象
包含以下属性:
IsValid:流程实例是否有效
WorkFlowInstanceID:流程实例编号
WorkFlowCategory:流程类别
OrganizationID:系统账套编号
AgencyID:组织编号
DepartmentID:部门编号
WorkFlowInstanceCode:流程编号
WorkFlowGUID:流程标识
SubSystemCode:子系统代号
WorkFlowInstanceID:流程实例编号
WorkFlowType:流程类型
WorkFlowStep:流程步骤
WorkFlowIsRestrictUser:是否限制审批人
WorkFlowRestrictUserGUIDList:限制审批人列表
WorkFlowRestrictUserNeedAllApprove:是否会审
WorkFlowStepIsMulti:是否为并行步骤
RestrictJumpWorkFlowStepList:跳转步骤列表
ApprovedWorkFlowStepList:已经审批通过的步骤列表
Initiateuserguid:发起人guid
InitiateDate:发起时间
IsInitiateWorkFlowInstance:是否为发起流程
ExtraDataDictionary:额外数据字典
二、当前流程步骤对象
调用PageDynamicObject.WorkFlowSetting可返回当前流程步骤的对象
包含以下属性:
PageDynamicObject.WorkFlowSetting.WorkFlowType:流程类型
PageDynamicObject.WorkFlowSetting.WorkFlowGUID:流程标识
PageDynamicObject.WorkFlowSetting.CanAdminWorkFlowInstanceAttachment:是否显示流程附件
PageDynamicObject.WorkFlowSetting.CanAdminWorkFlowInstanceLog:是否显示流程日志
PageDynamicObject.WorkFlowSetting.SubmitWorkFlowSuccessResultIsVisible:是否显示流程提交成功的提示
PageDynamicObject.WorkFlowSetting.SubmitWorkFlowSuccessPanelWidth:流程控制面板的宽度
PageDynamicObject.WorkFlowSetting.SubmitWorkFlowSuccessPanelHeight:流程控制面板的高度
PageDynamicObject.WorkFlowSetting.SuccessCallBackJSFunction:流程提交成功后的回调
三、流程验证事件
PageDynamicObject.SumbitWorkFlowVerifyCallBack
如果返回为true,则流程验证通过正式提交;如果返回为false,则流程中止提交。
PageDynamicObject.SumbitWorkFlowVerifyCallBack = function () { if (DomHasElement("员工请假申请单主表_请假天数")) { var 请假类型 = GetRadioValue("员工请假申请单主表_请假类型"); var 请假天数 = 获取数值("员工请假申请单主表_请假天数", 1); var 剩余天数 = 获取数值("员工请假申请单主表_剩余" + 请假类型, 1); if (请假天数 > 剩余天数) { alert("【" + 请假类型 + "】的请假天数【" + 请假天数 + "】不能大于剩余" + 请假类型 + "天数【" + 剩余天数 + "】!"); return false; } } return true; };
四、常用函数列表
序号 | 函数名称 | 返回值 | 函数说明 |
1 | InitiateWorkFlow() | 无 | 初始化工作流 |
2 | GetWorkFlowStepActionForActivity() | 通过/退回 | 获得当前流程审批的动作 |
3 | GetSelectedSubmitWorkFlowStep() | 字符串 | 获得用户选择的流程下一步 |
4 | GetSelectedWorkFlowRestrictUser(WorkFlowStep) | 对象 | 获得用户选择的限定审批人 |
5 | IsGroupApproveWorkFlowStep(WorkFlowStep) | true/false | 判断当前是否为会审步骤 |
6 | IsInitiateWorkFlow() | true/false | 判断是否为发起流程 |
7 | IsReInitiateWorkFlow() | true/false | 判断流程是否为重新送审 |
8 | LoadWorkFlowInstanceLog(ShowMsgDIVID) | 无 | 加载流程日志 |
9 | WorkFlowRestrictUserGUIDListCheckAll() | 无 | 全选指定审批人 |
10 | WorkFlowRestrictUserGUIDListUnCheckAll() | 无 | 全部取消指定审批人 |
11 | WorkFlowRestrictUserGUIDSelectUser(UserGuid) | 无 | 选择特定的人 |
12 | GetWorkFlowInstanceObject() | 对象 | 获得当前的WorkFlowInstanceObject对象 |
13 | WorkFlowInstanceCCClass.AddUser() | 无 | 添加流程抄送人 |
14 | WorkFlowProcess.InitiateWorkFlow(WorkFlowType) | 无 | 发起流程 |
15 | WorkFlowProcess.SumbitWorkFlow(IsDraft) | 无 | 提交流程 |
16 | WorkFlowProcess.LoadWorkFlowProcessPage(WorkFlowType, WorkFlowStep, WorkFlowGUID, VerifyCode) | 无 | 加载流程审批页 |
17 | WorkFlowProcess.DeleteWorkFlow(WorkFlowGUID, VerifyCode) | 无 | 删除流程实例 |
18 | WorkFlowProcess.RestoreWorkFlowToFirstStep(WorkFlowGUID, VerifyCode) | 无 | 撤回流程 |
19 | WorkFlowInstanceCC.SetIsViewed(ID) | 无 | 设置抄送已阅 |
20 | WorkFlowInstanceCC.SetIsViewedAll() | 无 | 将全部抄送设为已阅 |
1、初始化工作流
函数:InitiateWorkFlow()
返回: 无
2、获得当前流程审批的动作
函数:GetWorkFlowStepActionForActivity()
返回: 通过/退回
3、获得用户选择的流程下一步
函数:GetSelectedSubmitWorkFlowStep()
返回: 字符串
4、获得用户选择的限定审批人
函数:GetSelectedWorkFlowRestrictUser(WorkFlowStep)
WorkFlowStep: 流程步骤
返回: 字符串
5、判断当前是否为会审步骤
函数:IsGroupApproveWorkFlowStep(WorkFlowStep)
WorkFlowStep: 流程步骤
返回: true/false
6、判断是否为发起流程
函数:IsInitiateWorkFlow()
返回: true/false
7、判断流程是否为重新送审
函数:IsReInitiateWorkFlow()
返回: true/false
8、加载流程日志
函数:LoadWorkFlowInstanceLog(ShowMsgDIVID)
ShowMsgDIVID: 显示流程日志的层
返回: 无
9、全选指定审批人
函数:WorkFlowRestrictUserGUIDListCheckAll()
返回: 无
10、全部取消指定审批人
函数:WorkFlowRestrictUserGUIDListUnCheckAll()
返回: 无
11、选择特定的人
函数:WorkFlowRestrictUserGUIDSelectUser(UserGuid)
UserGuid: 指定人员的guid
返回: 无
12、获得当前的WorkFlowInstanceObject对象
函数: GetWorkFlowInstanceObject()
返回: 流程实例对象
13、添加流程抄送人
函数: WorkFlowInstanceCCClass.AddUser()
返回: 无
14、发起流程
函数: WorkFlowProcess.InitiateWorkFlow(WorkFlowType)
WorkFlowType: 流程类型
返回: 无
15、提交流程
函数: WorkFlowProcess.SumbitWorkFlow(IsDraft)
IsDraft: true/false,是否暂存
返回: 无
16、加载流程审批页
函数: WorkFlowProcess.LoadWorkFlowProcessPage(WorkFlowType, WorkFlowStep, WorkFlowGUID, VerifyCode)
WorkFlowType: 流程类型
WorkFlowStep: 流程步骤
WorkFlowGUID: 流程实例标识
VerifyCode: 验证码
返回: 无
17、删除流程实例
函数: WorkFlowProcess.DeleteWorkFlow(WorkFlowGUID, VerifyCode)
WorkFlowGUID: 流程实例标识
VerifyCode: 验证码
返回: 无
18、撤回流程
函数: WorkFlowProcess.RestoreWorkFlowToFirstStep(WorkFlowGUID, VerifyCode)
WorkFlowGUID: 流程实例标识
VerifyCode: 验证码
返回: 无
19、设置抄送已阅
函数:WorkFlowInstanceCC.SetIsViewed(ID)
ID: 框架数据库WorkFlowInstanceCC表记录编号
返回: 无
20、将自已的全部抄送设为已阅
函数:WorkFlowInstanceCC.SetIsViewedAll()
返回: 无