起步软件技术论坛-X3

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

【结贴】关于批处理中遇到的问题**

[复制链接]
 楼主| 发表于 2008-5-29 14:22:57 | 显示全部楼层
在尚工的远程协助下问题解决了,代码如下,非常感谢!
procedure TMainForm.Button1Click(Sender: TObject);
var
  i: Integer;
  lTask: TTask;
  lTasks: TList;
begin
  //流转的任务列表
  lTasks := TList.Create;
  try
    for i:= FlowBroker1.FlowControl.TaskCount-1 downto 0 do
    begin
      lTask := FlowBroker1.FlowControl.TaskByIndex;
      lTasks.Clear;
      lTasks.Add(lTask);
      DataSetBrokerbmxmhz.DataSet.Locate('XMBS', ObjectHelper.ToString(lTask.BizDatas[0].BizDataKeys[0].Value), []);
      DataSetBrokeryj.DataSet.Locate('XMBS', ObjectHelper.ToString(lTask.BizDatas[0].BizDataKeys[0].Value), []);
      FlowBroker1.FlowControl.FlowOut(lTasks);
    end;
  finally
    lTasks.Free;
  end;
end;





var
  //true  表示正在流转任务
  //False 表示从主界面上点流转按钮进入的
  taskrunning: Boolean;

procedure TMainForm.FlowBroker1BeforeFlowOut(Sender: TObject; Command: TFlowOutCommand);
begin
  if not taskrunning then
  begin
    //从主界面上点流转按钮进入的
    //保证下面流转时候是被接收的流转
    taskrunning := True;

    Button1.Click;
    //放弃从主界面上点流转按钮的动作
    taskrunning := False;
    Command.Accept := False;
  end;
end;
回复 支持 反对

使用道具 举报

发表于 2008-5-29 14:35:45 | 显示全部楼层
问题主要原因是任务数据变化时候,业务数据没有跟着滚动,所以会出现问题,滚动一下业务数据就可以了。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-14 06:30 , Processed in 0.042238 second(s), 14 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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