起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 311|回复: 12

【搞定】功能之间关联不上**

[复制链接]
发表于 2007-5-9 11:23:34 | 显示全部楼层 |阅读模式
两个功能通过业务元素关联,但按说明设置后,运行功能没有关联信息。

其中一个功能使用了动态数据集,就是一个数据集通过代码来改变所代理的数据表,我想问一下这种方式和业务的关联有没有影响?谢谢

之前也做过功能之间的关联,是可以正常运行的,但用的都是一个数据集代理一个数据表的。
回复

使用道具 举报

发表于 2007-5-9 11:59:55 | 显示全部楼层
只要保证使用的数据集是TSQlDataSet类型就可以了

建议从以下几个方面查找原因:
1、数据集中的字段是否引用了元素(在信息中重载字段,有可能会丢失元素的引用)
2、关联的功能是否分配了权限
3、相关对象是否没有迁入、刷新缓存

也可以在客户端使用对象查看器看一下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-9 13:36:20 | 显示全部楼层
建议从以下几个方面查找原因:
1、数据集中的字段是否引用了元素(在信息中重载字段,有可能会丢失元素的引用)

如果 丢失了元素 ,有什么解决方法吗?可不可以在信息重载字段时用代码把元素加到字段上

都已经编译、重新编译,迁入、迁出、刷新缓存好多次了

检查过了,两个功能都赋了权限了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-9 15:30:57 | 显示全部楼层
顶一下
回复 支持 反对

使用道具 举报

发表于 2007-5-9 15:49:04 | 显示全部楼层
1、可以在重载字段时重新定义引用元素

2、你也可以用对象查看器看一下当前环境各对象的属性定义
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-10 00:09:38 | 显示全部楼层
动态数据集如何在重载时从新定义引用元素阿
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-10 00:56:50 | 显示全部楼层
请帮忙看看,这个有错吗

1.jpg

157.74 KB, 下载次数: 93

回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-10 01:00:48 | 显示全部楼层
我跟踪了一下,在运行主功能时,系统关联信息中的这个函数没有运行,不知道什么原因:
function TRELEVANCYINFO.GetRelevancyGroup(const ID: string): TRelevancyGroupRec;
begin
  DataSetRelevancyGroup.Open;
  if not DataSetRelevancyGroup.FindKey([ID]) then
    raise Exception.Create('关联组不存在:' + ID);

  Result.ID := ID;
  Result.ParentID := DataSetRelevancyGroup.FieldByName('FPARENTID').AsString;
  Result.DisplayName := DataSetRelevancyGroup.FieldByName('FDISPLAYNAME').AsString;
  Result.IconURL := DataSetRelevancyGroup.FieldByName('FICONURL').AsString;
  Result.Sequence := DataSetRelevancyGroup.FieldByName('FSEQUENCE').AsInteger;
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-10 09:29:38 | 显示全部楼层
顶一下
回复 支持 反对

使用道具 举报

发表于 2007-5-10 09:30:51 | 显示全部楼层
楼主,你要用对象查看器看一下你的主功能中用到的字段是否引用了元素。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-10 03:44 , Processed in 0.039701 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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