起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 333|回复: 21

【结】流程完成,和终止**

[复制链接]
发表于 2008-8-26 11:45:38 | 显示全部楼层 |阅读模式
在流程完成事件中写了,一段代码
现在如果在某一环节终止了,也同样会执行那段代码
现在不想在终止的时候执行,怎么实现
回复

使用道具 举报

发表于 2008-8-26 11:54:37 | 显示全部楼层
那个事件,写下吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-26 17:47:42 | 显示全部楼层
procedure TDZQC.FlowBroker1AfterFlowFinish(Sender: TObject; Command: TFlowFinishCommand);
begin
回复 支持 反对

使用道具 举报

发表于 2008-8-26 18:09:09 | 显示全部楼层
用流程的状态试试是否可以区分开(fsAborted, fsFinished)
if Command.FlowControl.Flow.State = TFlowState.fsFinished then
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-28 09:15:35 | 显示全部楼层
procedure TDZQC.FlowBroker1AfterFlowFinish(Sender: TObject; Command: TFlowFinishCommand);
begin
if Command.FlowControl.Flow.State = TFlowState.fsFinished then
begin
   dsb_dzqc.DataSet.Open;
   dsb_dzqc.DataSet.Edit;
   dsb_dzqc.DataSet.FieldByName('zt').AsString := '入档';
   dsb_dzqc.DataSet.ApplyUpdates;
end;
end;

这样写是不是只有完成的时候,才=\入档
终止,不会=入档
对吗
回复 支持 反对

使用道具 举报

发表于 2008-8-28 09:49:43 | 显示全部楼层
恩,应该是,你使用断点跟踪一下吧
回复 支持 反对

使用道具 举报

发表于 2008-8-28 09:51:55 | 显示全部楼层
这个你测试一下就知道了,你先做好测试看看,终止是否会触发你写的事件
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-28 09:52:29 | 显示全部楼层
结果:
终止后,也执行代码
回复 支持 反对

使用道具 举报

发表于 2008-8-28 10:13:27 | 显示全部楼层
知道了,点击中止按钮的时候是任务中止了,不是流程中止了,这个时候流程的状态是完成状态,所有在5楼的代码中判断一下如果是任务的状态是TTaskState.tsFinished就对字段赋值就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-28 10:31:31 | 显示全部楼层
[警告] 循环引用: "Biz:\WJGLXT\DZWJ\DZWJ1\DZWJQC.FUNC"-->"Biz:\WJGLXT\DZWJ\DZWJ1\DZWJXX.INFO"-->"Biz:\WJGLXT\DZWJ\DZWJ1\DZWJXX.INFO"
[错误]Biz:\WJGLXT\DZWJ\DZWJ1\DZWJQC.FUNC.DIR\DZQC.FORM.PAS(36, 48): Undeclared identifier "ttsFinished"
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-21 05:46 , Processed in 0.039178 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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