起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 249|回复: 4

【结贴】代码发通知的问题

[复制链接]
发表于 2009-10-26 17:00:56 | 显示全部楼层 |阅读模式
用如下代码发通知:
lTask := TTask.Create;
       lTaskBizData:=TTaskBizData.Create;
       lTaskBizDataRec:=TTaskBizDataRec.Create;
      try
  lTaskBizDatarec.BizField:='iz:\KHXT\KHSJK.DATABASE\ZGPJB.Table\BH.Field';
  lTaskBizDataRec.Value:=DsbZGPJ.DataSet.FieldByName('BH').AsString;
  lTaskBizData.BizDataKeys.Add(lTaskBizDataRec);
  lOrgURl := TOrgURL.Create('','',DsbZGPJ.DataSet.FieldByName('khry').AsString);
    lTask.Subject:='定性考核结果通知' ;
  lTask.Kind:='ftkNotify'; //任务类型为通知
  lTask.TaskType:='INFORMATION3';
  lTask.TaskTypeName:='通知';
  //下面这句话是把那个功能以通知的方式发出去
   lTask.FuncURL:='Biz:\KHXT\FUNC\ZGPJGXPJFFK.Func';
   lTask.BizDatas.Add(lTaskBizData);
   lTask.TaskMessages.AddTaskMessage(nil, lOrgURl, TTaskmessagestate.tmsSend, 0, False);
      //添加到任务消息列表里
      Flow.FlowEngine.SaveTask(lTask);   //保存任务
   finally
    lTask .Free;
    end;
    dialogs.ShowMessage('已发送!');

初始化运行设断点跟踪发现:DsbZGPJ.DataSet.FieldByName('BH').AsString;的值,和通知窗体打开之后,关联DsbZGPJ数据集的BH字段的dataEdit中的值不同,也就是说,不是指向DsbZGPJ数据集的同一条记录,可能是怎么回事?
回复

使用道具 举报

发表于 2009-10-26 17:19:06 | 显示全部楼层
不相同,那分别都是什么呢?
是否是任务关联配置的有问题呢?
回复 支持 反对

使用道具 举报

发表于 2009-10-26 18:17:45 | 显示全部楼层
通知窗体打开的同时数据集再次打开,所以在发通知之前需要先定位到相应的记录呀。最好是在通知窗体打开的时候对DsbZGPJ数据集做一下数据过滤。可以在通知窗体中设置一个变量来保存过滤内容。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-26 21:26:43 | 显示全部楼层
现在的情况是,在发通知之前,DsbZGPJ已经定位到了相应的记录。这句话为证:DsbZGPJ.DataSet.FieldByName('BH').AsString; 我打印出来看过的,是对的。
但是我不知道如何实现:在通知窗体打开的时候对DsbZGPJ数据集进行过滤。发通知时“BH”的值怎么传给通知窗体呢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-28 08:37:59 | 显示全部楼层
现在对代码稍加修改,就定位到了相应记录。
前面的几句写成这样,后面的没变,就行了。
bh:=DsbZGPJ.DataSet.FieldByName('bh').AsString;
Tsqldataset(DsbZGPJ.DataSet).UserFilter:='bh='''+bh+'''';
lTask := TTask.Create;
       lTaskBizData:=TTaskBizData.Create;
       lTaskBizDataRec:=TTaskBizDataRec.Create;
      try
  lTaskBizDatarec.BizField:='biz:\KHXT\KHSJK.DATABASE\ZGPJB.Table\BH.Field';
  lTaskBizDataRec.Value:=bh;

结贴吧,谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-15 02:39 , Processed in 0.038282 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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