起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 160|回复: 8

【结贴】[请求]用户启动流程 连续5条不保存不流转

[复制链接]
发表于 2009-8-18 17:24:19 | 显示全部楼层 |阅读模式
用户启动流程 连续5条不保存不流转
结果现在有四条想流转下一步不行
以往 工作台一保存就会创建一条任务的 就可以进行下一步流转

现在四条不能流转是什么原因

另外:
我如何帮他这四条启动流程 代码如何写
回复

使用道具 举报

发表于 2009-8-18 17:32:18 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-18 17:45:57 | 显示全部楼层
那为什么保存了不会自动在工作台生成任务 反而只生成了一条作任务?
回复 支持 反对

使用道具 举报

发表于 2009-8-18 18:10:18 | 显示全部楼层
入口中一次添加了多条数据,然后一起保存,那么只会对当前数据产生流程任务,其他不会产生,如果想每条业务数据都产生任务,那么请按照2楼的代码启动流程
回复 支持 反对

使用道具 举报

发表于 2009-8-18 18:48:02 | 显示全部楼层
另外,还需要设置流程启动模式是“处理时”不是“流转时”等,可以参考 http://bbs.justep.com/forum.php?mod=viewthread&tid=6537
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-19 10:23:55 | 显示全部楼层
代码启动流程lFlowControl.StartupFlow(lBizURL, AStartProc, lExecutor, lFlowValue);出错 不知错在哪了?

procedure TCXJM.Button1Click(Sender: TObject);
Var
   AFlowUrl:string;
   ADept:string;
   ARole:string;
   APerson:string;
   AStartProc:string;
   AFlowID:string;
   ASubject:string;
   ADescription:string;
begin
   AFlowUrl :='Biz:\DMISXT\SQTB.FUNC';
   ADept :='FJPT_SLDJZZ';
   ARole := 'FJPT_ZDHZZ' ;
   APerson := 'PT_DDS_CXY' ;
   AStartProc :='Biz:\DMISXT\ECXTJGXMJHGLLC.PROC';
   AFlowID:=DataSetBroker1.DataSet.FieldByName('Inst_Id').AsString;
   ASubject:='申请填报:二次系统技改项目计划管理流程';
   ADescription:='二次系统技改项目计划管理流程';
   UserStartFlow(AFlowUrl,ADept,ARole,APerson,AStartProc,AFlowID,ASubject,ADescription);
end;

procedure TCXJM.UserStartFlow(AFlowUrl:string;ADept:string;ARole:string;APerson:string;AStartProc:string;AFlowID:string;ASubject:string;ADescription:string);
var
  lBizURL: TBizURL;
  lFlowValue: TFlowValue;
  lFlowControl: TFlowControl;
  lExecutor: TOrgURL;
begin
  lBizURL := TBizURL.Create;
  lFlowValue := TFlowValue.Create;
  lFlowControl := TFlowControl.Create(Self.Context);
  lExecutor := TOrgURL.Create(ADept, ARole, APerson);
  lBizURL.URL := AFlowUrl;
  try
    lFlowValue.IDs.Add(AFlowID); //流程ID
    lFlowValue.Subject := ASubject; //流程主题
    lFlowValue.Description := ADescription; //流程描述
    //启动流程实例
    lFlowControl.StartupFlow(lBizURL, AStartProc, lExecutor, lFlowValue);
    //流程实例数据保存到数据库
    lFlowControl.FlowRunnerbyIndex[0].CurrentTask.SaveToDB;
  finally
    lFlowControl.Free;
    lFlowValue.Free;
    lBizURL.Free;
  end;
end;
回复 支持 反对

使用道具 举报

发表于 2009-8-19 10:49:15 | 显示全部楼层
具体错误是什么呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-19 11:37:13 | 显示全部楼层
AFlowUrl :='Biz:\DMISXT\SQTB.FUNC';
AStartProc :='Biz:\DMISXT\ECXTJGXMJHGLLC.PROC';
这两个错了。 结贴。。。。。
  lcontextcurrent := TContextCurrent.Create(Context);
  try
    ADept := lcontextcurrent.OperatorPosition.DeptID;
    ARole := lcontextcurrent.OperatorPosition.PositionID;
    APerson := lcontextcurrent.OperatorPosition.PersonID;
  finally
    lcontextcurrent.Free;
  end;

   AFlowUrl :='Biz:\DMISXT\ECXTJGXMJHGLLC.PROC'; //Biz:\DMISXT\SQTB.FUNC
   AStartProc :='SQTB';
   AFlowID:=DataSetBroker1.DataSet.FieldByName('Inst_Id').AsString;
   ASubject:='二次系统技改项目计划管理流程';
   ADescription:='申请填报';
   UserStartFlow(AFlowUrl,ADept,ARole,APerson,AStartProc,AFlowID,ASubject,ADescription);
回复 支持 反对

使用道具 举报

发表于 2009-8-19 11:47:44 | 显示全部楼层
谢谢反馈
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-17 20:28 , Processed in 0.044771 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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