起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: 巧克力味

【结贴】问一个DataNavigator的问题**

[复制链接]
 楼主| 发表于 2008-10-31 16:16:05 | 显示全部楼层

QQ

我的任务 下的 我的功能 下没有数据库,无法建立数据集策略!如图:

我的功能.png

1.64 KB, 下载次数: 199

回复 支持 反对

使用道具 举报

发表于 2008-10-31 16:21:46 | 显示全部楼层
哦,我这里是看业务模型协同系统\工作事务工作建议,看图

snap2.png

21.62 KB, 下载次数: 201

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-31 16:30:35 | 显示全部楼层
我按照12楼修改了,但是在待办任务里的详细 里 还是能够把处理人删除!
回复 支持 反对

使用道具 举报

发表于 2008-10-31 17:19:50 | 显示全部楼层
这个问题处理的话,有简单方法也有复杂方法:
1、看图
(删除按钮还可用,但是删除动作不执行)

snap12.png

25.06 KB, 下载次数: 177

回复 支持 反对

使用道具 举报

发表于 2008-10-31 17:20:08 | 显示全部楼层

snap13.png

20.81 KB, 下载次数: 178

回复 支持 反对

使用道具 举报

发表于 2008-10-31 17:24:30 | 显示全部楼层
用上面的方法不是很理想。

2、利用平台的消息机制(具体在论坛里搜索一下)。这种方法应该会比较理想
3、自己去改造【业务模型\协同系统\面板功能\我的功能\我的待办】中的DoTaskDelete吧。这种方法涉及面太广了,不建议去做。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-3 09:56:07 | 显示全部楼层
消息机制了解一点,但是怎么让它不能删除从数据集的数据就不清楚了啊!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-3 10:06:17 | 显示全部楼层
可以给我个例子吗?
回复 支持 反对

使用道具 举报

发表于 2008-11-3 10:49:27 | 显示全部楼层
楼主,经过研究测试,有一个更简单的方法来实现。
通过控制任务详细中的CanDelete。
修改【业务模型\协同系统\任务\任务中心信息\任务详细】中的
function TTaskFuncRunner.CanDelete: Boolean;
begin
  {这是我增加的处理代码,你根据你实际情况来实现。'DataSetDCLR'这个数据集是我那个多处理人表的数据集的Name
   if SysUtils.UpperCase(FBizDataSetAction.CurrentDataSource.DataSet.Name)
    = SysUtils.UpperCase('DataSetDCLR') then
    Result := False
  else}  
    Result := FBizDataSetAction.Enabled and
    (FBizDataSetAction.CurrentDataSource <> nil) and
    (FBizDataSetAction.CurrentDataSource.DataSet as TDataset).Candelete;
end;
-------------这样修改就可以了,其他地方都不用做处理。
回复 支持 反对

使用道具 举报

发表于 2008-11-3 11:13:02 | 显示全部楼层
楼主,搞定了吗?
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-26 09:35 , Processed in 0.042850 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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