起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 533|回复: 24

【搞定】任务数据已经修改。**

[复制链接]
发表于 2007-10-15 11:32:33 | 显示全部楼层 |阅读模式
先打开库存信息,我出库后再到库存信息中查看,刷新后库存改变,但在窗口点右键报‘任务数据已经修改’错误。
回复

使用道具 举报

发表于 2007-10-15 11:50:01 | 显示全部楼层
从提示看,有人已经修改了任务相关的数据了,应该关闭这个任务,就正常了,你试试


存在这样的情况,应该是多个人处理了同一任务造成的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-15 12:29:15 | 显示全部楼层
是一个人在操作。任务不是自动关闭阿??流程都结束了,还有任务????
回复 支持 反对

使用道具 举报

发表于 2007-10-15 13:54:50 | 显示全部楼层
那我没有看明白,任务流转是会自动关闭的,除非自己去控制。请问1楼的描述,哪个是任务流转动作,看的有点晕,最好能配上图片加以说明,谢谢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-15 14:45:22 | 显示全部楼层
任务数据已修改是否是应该只报一次?刷新后就可以了,我这不是,报好几次
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-15 14:46:17 | 显示全部楼层
上个问题不用管了,看看这个吧。

Snap1.gif

4.79 KB, 下载次数: 212

回复 支持 反对

使用道具 举报

发表于 2007-10-15 14:58:18 | 显示全部楼层
怎么能不管呢?6楼的问题请重新开新贴
楼主,还是把1楼的问题搞清楚了,请回答我4楼问题,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-15 16:02:25 | 显示全部楼层
我已经解决了,是因为在流程结束后我写了个while循环,但在循环前没有写dataset.first,所以报错。
procedure TDZYHPLYCKCK.FlowBroker1AfterFlowOut(Sender: TObject; Command: TFlowOutCommand);
var
      strtemp,strbh,stri :string;
      i :integer;
begin
      //遍历申请信息中的低值易耗品
      DataSetBroker1.DataSet.First;
      while not DataSetBroker1.DataSet.Eof do
      begin
      strtemp:=DataSetBroker1.DataSet.FieldByName('SQBH').AsString;
      strbh:=DataSetBroker1.DataSet.FieldByName('SBBH').AsString;
      //汇总申请中当前设备编号的使用信息数量
      DataSetBroker2.DataSet.Filter:='JSJBH = ''' + strbh + ''' and ZBZJ='''+strtemp+'''';
      DataSetBroker2.DataSet.Filtered:=true;
      i:=0;
      DataSetBroker2.DataSet.First;
      while not DataSetBroker2.DataSet.Eof do
      begin
      stri:=DataSetBroker2.DataSet.FieldByName('SBSL').AsString;

      if   DataSetBroker2.DataSet.FieldByName('SBSL').AsString<>'' then
      i:=i+sysutils.StrToInt(stri);
      //jsDialogs.ShowMsg(sysutils.IntToStr(i), '系统提示');
      DataSetBroker2.DataSet.Next;
      end;
      //先查出库存表中的当前编号信息,再减去已分出去的数量,
      DataSetBroker4.DataSet.Filter:='SPBH = ''' + strbh + '''';
      DataSetBroker4.DataSet.Filtered:=true;
      DataSetBroker4.DataSet.Edit;
      i:=sysutils.StrToInt(DataSetBroker4.DataSet.FieldByName('KC').AsString)-i;
      DataSetBroker4.DataSet.FieldByName('KC').AsString:=sysutils.IntToStr(i);
      //jsDialogs.ShowMsg(sysutils.IntToStr(i), '系统提示');
      DataSetBroker4.DataSet.Post;
      //DataSetBroker4.DataSet.ApplyUpdates;
       //jsDialogs.ShowMsg('更新成功', '系统提示');
      //DataSetBroker4.DataSet.Filter:='';
      //DataSetBroker4.DataSet.Filtered:=true;
      DataSetBroker2.DataSet.Filter:='';
      DataSetBroker2.DataSet.Filtered:=true;
      DataSetBroker1.DataSet.Next;
      end;
      DataSetBroker4.DataSet.ApplyUpdates;
end;
回复 支持 反对

使用道具 举报

发表于 2007-10-15 17:00:30 | 显示全部楼层
不是吧,这应该是没有关系的,
最多就是处理数据没有达到你实际的要求,也不会报出“任务数据已经修改’”这个提示,难道你修改了任务数据了?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-15 17:21:51 | 显示全部楼层
没有修改任务数据,确实是,我修改后就不报错了,没加dataset.first前只修改当前记录以后的记录,加上后就都修改了。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-6-29 03:01 , Processed in 0.103858 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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