起步软件技术论坛-X3

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

在ShowModal的窗体里如何走流程**

[复制链接]
 楼主| 发表于 2007-6-13 18:31:27 | 显示全部楼层
对阿 难道 用别的吗 只是每步的ID不同
都用的lFlowControl.StartupFlow阿
回复 支持 反对

使用道具 举报

发表于 2007-6-13 19:44:27 | 显示全部楼层
流转应该用
TFlowControl.FlowOut
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-14 08:32:21 | 显示全部楼层
对阿 都是用 Startupflow 难道用别的吗? 不知道啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-14 08:36:00 | 显示全部楼层
发错了 在流程的第二步就应该用 TFlowControl.FlowOut 了吗?具体的写法就是这个嘛?
回复 支持 反对

使用道具 举报

发表于 2007-6-14 08:54:54 | 显示全部楼层
代码流转任务
1  FlowBroker.FlowControl.FlowOut(nil)
2  FlowAction1.Execute

关于标准流程动作FlowAction
在流程窗体上放置TActionList,增加流程动作TFlowAction
设置动作ID:流转、回退、转发、终止任务、中止流程
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-14 09:10:52 | 显示全部楼层
用了标准流程动作FlowAction 可以流转了 谢谢
但是还有个问题 就是接收人也会出现提交任务 是不是我的代码还是有问题啊 我发上来
请帮我看一下把
回复 支持 反对

使用道具 举报

发表于 2007-6-14 09:15:09 | 显示全部楼层
那不对,应该是发送者有提交任务,接受者是待办任务
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-14 09:27:26 | 显示全部楼层
procedure TSHOWFORM.StartFlow(ProcFunc: String);
var
  lBizURL: TBizURL;
  lFlowValue: TFlowValue;
  lFlowControl: TFlowControl;
  lExecutor: TOrgURL;
  lList: TList;

  cPersonID: string;                                                            //当前操作者ID
  cPositionMemberID: string;                                                    //当前操作者岗位ID
  cDeptID: string;                                                              //当前操作者部门ID

  lContextCurrent: Business.Model.TContextCurrent;
begin
  lContextCurrent := Business.Model.TContextCurrent.Create(Self.Context);
  cPersonID := lContextCurrent.Operator.ID;
  cPositionMemberID := lContextCurrent.PositionMember.ID;
  cDeptID := lContextCurrent.Dept.ID;
  lContextCurrent.Free;

  lList := TList.Create;
  lBizURL := TBizURL.Create;
  lFlowValue := TFlowValue.Create;
  lFlowControl := TFlowControl.Create(Self.Context);

  try
    lBizURL.URL := 'Biz:\SJZPXZXXTGLXXXT\PROC\JSFASHGL.Proc';                   //流程路径
    lFlowValue.IDs.Add(Business.System.JSCommon.CreateGUIDStr);                        //流程ID
    lFlowValue.Subject := FuncBroker1.Func.DisplayName;                                             //流程主题
    lFlowValue.Description := '';                                              //流程描述
    //lExecutor := TOrgURL.Create(cDeptID, cPositionMemberID, cPersonID);       //传入发起者的部门、岗位、人员
    lFlowValue.StartupTo := lExecutor;
    lFlowControl.StartupFlow(lBizURL, ProcFunc, lExecutor, lFlowValue);
  finally
    lFlowControl.Free;
    lFlowValue.Free;
    lBizURL.Free;
    lList.Free;
    lExecutor.Free;
  end;
end;

procedure TSHOWFORM.SB1_OKClick(Sender: TObject);                               //确定
var
  ProcFunc: String;                                                             //当前流程名称ID
begin
   StartFlow(ProcFunc);   
end;

请帮我看一下
回复 支持 反对

使用道具 举报

发表于 2007-6-14 09:34:21 | 显示全部楼层
36楼不是说用Flowaction流转了吗?怎么还用启动流程实例的方法呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-14 09:51:17 | 显示全部楼层
恩 好了 只需要在功能上重载就可以使用流程的标准动作了 是马?
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-13 15:52 , Processed in 0.037314 second(s), 13 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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