起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: xhsoft

【结贴】流程问题(执行者)**

[复制链接]
 楼主| 发表于 2009-3-24 14:58:47 | 显示全部楼层
在在dddddd
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 15:05:52 | 显示全部楼层
d
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 15:19:52 | 显示全部楼层
d
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 16:37:02 | 显示全部楼层
f
回复 支持 反对

使用道具 举报

发表于 2009-3-24 16:49:52 | 显示全部楼层
楼主,你按我说的做了吗?碰到什么问题?
回复 支持 反对

使用道具 举报

发表于 2009-3-24 16:50:31 | 显示全部楼层
抱歉,最近事情比较多,回复不是很及时,但请楼主别老顶帖子。你只要提问了,我们会处理的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 16:58:06 | 显示全部楼层
判断该流程实例有多少个任务(这里的任务不光光是本环节的即审核问题1环节的,还有本环节上面的任务,你这里就是解决问


这里说的,怎么写呢


我也是比较着急呀
回复 支持 反对

使用道具 举报

发表于 2009-3-24 17:56:33 | 显示全部楼层
27楼给你的连接你看懂了么?
如何取当前流程实例的所有任务就是连接2楼中的部分代码,如果取某个环节的任务就判断一下任务的环节是不是你想要的,如果是想要的就添加到一个列表中就可以了,如下:
var lTasks :TList;
    lTask :TTask;
   I :integer;
   s : string;
begin
   lTasks :=TList.Create;
   try
   for i:=0 to  FlowBroker1.FlowControl.TaskCount-1 do
   begin
     lTask :=FlowBroker1.FlowControl.TaskByIndex;
     if lTask.ProcUnitID ='环节id' then
     lTasks.Add(lTask);
   end;
   finally
     lTasks.Free;
   end;
end;

lTasks就是 环节id 的所有任务
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 18:24:56 | 显示全部楼层
审核问题1中放一个 FlowBroker,然后在beforeFlowout事件中,判断该流程实例有多少个任务(这里的任务不光光是本环节的即审核问题1环节的,还有本环节上面的任务,你这里就是解决问题环节),看他们的任务状态,如果有超过1个任务的状态是待办的,那你就要代码控制不能让他往下流转(command.accept:=false),给出一个提示(等待别的任务之类的),同时要修改该任务和任务消息的状态为已完成;如果只有一个任务是待办了,那就按正常模式流转就可以了,但是为了任务数据的完整性,要在afterflowout中把本环节的其他任务的下一条任务字段的值置一下(与最后这个任务的下一条任务字段值一样就可以了)


这段请问题用代码怎么写出来,
你这里一段,那里一段,我看不懂
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-25 07:55:58 | 显示全部楼层
判断该流程实例有多少个任务

应该说是本环节和上环节有多少个任务吧
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-24 00:52 , Processed in 0.040370 second(s), 13 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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