|

楼主 |
发表于 2010-1-15 15:55:36
|
显示全部楼层
UserStartFlow('Biz:\ZJGLXT\PROC\XJCFF_BZQRJL.PROC', //流程URL
BM_ID,//部门
'', //岗位
'', //人员
'JYSJYY',Str,BGBZ,'新检测方法、标准确认记录流程');
procedure TZJ.UserStartFlow(AFlowUrl,ADept,ARole,APerson,AStartProc,AFlowID,ASubject,ADescription:string);
var {流程URL,部门,岗位,人员 ,流程ID,流程主题 }
lBizURL: TBizURL;
lFlowValue: TFlowValue;
lFlowControl: TFlowControl;
lExecutor: TOrgURL;
begin
lBizURL := TBizURL.Create;
lFlowValue := TFlowValue.Create; //流程实例
lFlowControl := TFlowControl.Create(Self.Context);//流程控制组件
lExecutor := TOrgURL.Create(cDeptID,cPositionMemberID,cOperatorNameID); //执行者
lBizURL.URL := AFlowUrl;
try
lFlowValue.IDs.Add(AFlowID); //流程ID
lFlowValue.Subject:= 'aa阿斯大声的哈'; //流程主题
lFlowValue.Description := ADescription; //流程描述
//启动流程实例
lFlowControl.StartupFlow(lBizURL, AStartProc,lExecutor, lFlowValue);
lFlowControl.FlowRunnerbyIndex[0].CurrentTask.PreemptMode := TTaskPreemptMode.omFirstProcess;
lFlowControl.FlowRunnerByIndex[0].CurrentTask.TaskMessages[0].ReceiverDeptID := ADept;//传入接收者的部门ID
lFlowControl.FlowRunnerByIndex[0].CurrentTask.TaskMessages[0].ReceiverPositionID := ARole; //传入接收者的岗位ID
lFlowControl.FlowRunnerByIndex[0].CurrentTask.TaskMessages[0].ReceiverID :=APerson; //传入接收者的人员ID
//流程实例数据保存到数据库
lFlowControl.FlowRunnerbyIndex[0].CurrentTask.SaveToDB;
finally
lFlowControl.Free;
lFlowValue.Free;
lBizURL.Free;
end;
end; |
|