起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 1027|回复: 36

【结贴】区分活动环节

[复制链接]
发表于 2009-12-4 18:13:40 | 显示全部楼层 |阅读模式
Command.AllowFlowTasks
我根据什么条件来区分后面的两个活动环节呢?
回复

使用道具 举报

 楼主| 发表于 2009-12-4 21:43:02 | 显示全部楼层
lFlowTask:= Command.AllowFlowTasks.FindFlowTask('WGZXCLJH');
    lFlowTask.Executors.Clear;
    for i:=0 to store.count-1 do
    begin
      lOrgURL := TOrgURL.Create('JHB','JHBBZ',store);
      lFlowTask.Executors.Add(lOrgURL);
    end;
    lFlowTask.Subject := lFlowTask.ProcUnit.DisplayName + ' ' +gsmc+'编号为'+jhbm+'的计划';
   
    lFlowTask:=Command.AllowFlowTasks.FindFlowTask('JHDY');
    lFlowTask.Subject:= lFlowTask.ProcUnit.DisplayName + ' ' +gsmc+'编号为'+jhbm+'的计划';

    or环节后面跟了两个活动环节,wgzxcljh和jhdy  执行完程序后  wgzxcljh的流程主题被修改了  但是人员没有添加进去  该环节没有被选中
    jhdy这个活动环节的流程主题没有被修改  处于选中状态


    请问下为什么第一个添加的人员没有被添加上   第二个修改的流程主题没被修改呢?
    谢谢了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-4 21:44:09 | 显示全部楼层
store是一个TStringList里面存放了人员的ID
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-4 21:59:55 | 显示全部楼层
测试发现  如果让wgzxcljh为选中环节的时候  人员就出现了
如何让or环节后面的两个环节同时为选中环节呢?
回复 支持 反对

使用道具 举报

发表于 2009-12-5 09:23:07 | 显示全部楼层
2楼的代码中,没看到你 对lFlowTask:=Command.AllowFlowTasks.FindFlowTask('JHDY');这个任务赋执行者呀。按下面的方法试试,流转时是否按你需要的方式产生了相关任务。

lFlowTask:= Command.AllowFlowTasks.FindFlowTask('WGZXCLJH');
    lFlowTask.Executors.Clear;
    for i:=0 to store.count-1 do
    begin
      lOrgURL := TOrgURL.Create('JHB','JHBBZ',store);
      lFlowTask.Executors.Add(lOrgURL);
    end;
    lFlowTask.Subject := lFlowTask.ProcUnit.DisplayName + ' ' +gsmc+'编号为'+jhbm+'的计划';
   
    lFlowTask:=Command.AllowFlowTasks.FindFlowTask('JHDY');
    for i:=0 to store.count-1 do
    begin
      lOrgURL := TOrgURL.Create('JHB','JHBBZ',store);
      lFlowTask.Executors.Add(lOrgURL);
    end;
    lFlowTask.Subject:= lFlowTask.ProcUnit.DisplayName + ' ' +gsmc+'编号为'+jhbm+'的计划';
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-5 09:40:03 | 显示全部楼层
第二个设置了缺省执行者表达式
所以直接就有人员
如何同时选择or环节后面的两个活动环节啊?
回复 支持 反对

使用道具 举报

发表于 2009-12-5 10:33:19 | 显示全部楼层
那现在 流转后只产生一个任务还是产生两个任务?

2楼改流程主题时参考下面的代码试试
procedure TMainForm.FlowBroker1CreateFlowOutFlowTasks(Sender: TObject; Command: TFlowOutCommand);
var
  i : Integer;
  lFlowTask: TFlowTask;
begin
  for i := 0 to Command.AllowFlowTasks.Count -1 do
  begin
    lFlowTask := Command.AllowFlowTasks;
    lFlowTask.Subject := lFlowTask.ProcUnit.DisplayName + ' ' + SysUtils.IntToStr(i);
  end;
  for i := 0 to Command.FlowTasks.Count -1 do
  begin
    lFlowTask := Command.FlowTasks;
    lFlowTask.Subject := lFlowTask.ProcUnit.DisplayName + ' ' + SysUtils.IntToStr(i);
  end;

end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-5 15:12:15 | 显示全部楼层
改为七楼的程序还是只有一个被选中
回复 支持 反对

使用道具 举报

发表于 2009-12-5 18:43:16 | 显示全部楼层
7楼修改的是任务主题,没有设置环节的执行者,
至于选中,需要设置任务的接受者,代码测试有点问题,周一给你回话吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-7 09:20:23 | 显示全部楼层
如何同时选中两个后续的活动环节啊?
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-13 15:04 , Processed in 0.048288 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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