起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 1184|回复: 0

如何代码创建子流程实例并指定执行者

[复制链接]
发表于 2005-9-10 15:38:25 | 显示全部楼层 |阅读模式
var
  I            : Integer;
  lSubFlowInfo : TSubFlowInfo;
  lGUID        : String;
  lFlowTask    : TFlowTask;
  lOrgURL      : TOrgURL;
  PersonList   : TStringList;
  sDeptID    : String;
  sPosiID    : String;
  sPersID    : String;
begin
  DataSetJCXM.DataSet.First;
  while not DataSetJCXM.DataSet.Eof do
  begin
    lGUID := JSCommon.CreateGUIDStr;  //创建子流程GUID
    lSubFlowInfo := Command.SubFlowInfos.Add; //启动子流程实例
    lSubFlowInfo.FlowValue.IDs.Add(DataSetJCXM.DataSet.FieldbyName('HTJCXMBH').AsString);  //给子流程的实例传值
    lSubFlowInfo.FlowValue.Subject :='子流程主题';   //赋子流程主题
    lSubFlowInfo.EntryFlowTasks.Assign(Command.EntryFlowTasks);
    lFlowTask := lSubFlowInfo.EntryFlowTasks.FindFlowTask('XMJC');//根据任务环节查找任务
      if lFlowTask <> nil then
      begin
        lFlowTask.Executors.Clear;
           //删除缺省执行者
        sPersID := DataSetJCXM.DataSet.FieldbyName('RYID').AsString;

        GetPinfo(sPersID,sDeptID,sPosiID);

        lFlowTask.Executors.Add(sDeptID,sPosiID,sPersID);
      end;
      DataSetJCXM.DataSet.Next;
    end;
end;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-12-22 19:11 , Processed in 0.043277 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表