起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 149|回复: 6

【结贴】代码控制子流程创建,如要在弹出流转窗体时就代码添加执行者,怎么做**

[复制链接]
发表于 2008-6-19 10:22:19 | 显示全部楼层 |阅读模式
代码控制子流程创建,如要在弹出流转窗体时就代码添加执行者,怎么做。在哪个流程事件中处理?
回复

使用道具 举报

发表于 2008-6-19 10:27:01 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 10:38:11 | 显示全部楼层
不是一个,23968添加执行者是在弹出流转窗体后,再点确定后执行的,我现在要在弹出流转窗体前就添加执行者
回复 支持 反对

使用道具 举报

发表于 2008-6-19 10:51:03 | 显示全部楼层
if lFlowTask <> nil then
      begin
        lFlowTask.Executors.Clear;
           //删除缺省执行者
        sPersID := Command.FlowControl.Executor.PersonID;
        sDeptID:=Command.FlowControl.Executor.DeptID;
        sPosiID:=Command.FlowControl.Executor.PositionID;
        lFlowTask.Executors.Add(sDeptID,sPosiID,sPersID);
      end;


把上面的3个ID换成具体的人员成员对应的ID后不行么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 11:19:38 | 显示全部楼层
转换是成功的,但在flowout时会报错out of index0,论坛中说是BUG
能不能不管哪个帖子,只解决在弹出流转窗体时就代码添加执行者的问题
回复 支持 反对

使用道具 举报

发表于 2008-6-19 11:34:06 | 显示全部楼层
楼主,试试这个:
procedure TMAINFORM.FlowBroker1CreateFlowOutFlowTasks(Sender: TObject; Command: TFlowOutCommand);
var
  lSubFlowTask,lFlowTask: TFlowTask;
  lOrgSytem: TOrgSystem;
begin
  lFlowTask := Command.FlowTasks.FindFlowTask('ZLC');
  lSubFlowTask := lFlowTask.Children.FindFlowTask('ZLCRKGN');
  lOrgSytem := TOrgSystem.Create;
  try
     lSubFlowTask.AllowExecutors.Clear;
      if Assigned(lSubFlowTask) then
        lOrgSytem.GetOrgURLsByOrgExpr('OrgKey('+'BM1'+','+'GW1'+','+ 'ZS'+')',lSubFlowTask.AllowExecutors);
  finally
    lOrgSytem.Free;
  end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-19 12:36:41 | 显示全部楼层
好,结,多谢
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 00:22 , Processed in 0.036953 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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