起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: borham-zqf

【结帖】查找属性定义中的数据集刷新问题**

[复制链接]
 楼主| 发表于 2008-1-22 15:13:42 | 显示全部楼层
1、数据集B的字段1里定义了查找属性。引用数据集A作为业务数据查找。
2、数据集A的过滤条件为:某个字段等于业务参数。该业务参数的值为数据集C的某个字段值。
3、我在数据集B的字段1.OnEnter事件处取得数据集C的某个字段值,然后赋值给业务参数。

运行该功能后,给数据集C的字段赋值,然后第一次编辑数据集B的字段1,可以下拉得到需要的数据。当改变数据集C的字段值,再次编辑数据集B的字段1,下拉内容不变。
回复 支持 反对

使用道具 举报

发表于 2008-1-22 15:24:30 | 显示全部楼层
楼主,最好设置断点跟踪一下,有可能是在哪个环节赋值或取值没有成功
回复 支持 反对

使用道具 举报

发表于 2008-1-22 15:29:54 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-22 15:33:01 | 显示全部楼层
从Justep的实现机制而言,对于查找属性中的数据集打开或刷新,不是我们所能控制的。所以从代码角度,我们就显得无能为力了。你同意我这个观点吗?
我们所能做的就是给业务参数赋值,这段代码我用断点跟踪过了,每次取数据集C的值都是正确的,然后赋值给业务参数也是正确的,因为我随后又把该业务参数值赋值给另外一个临时字段。我还是认为是软件的Bug.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-22 15:39:12 | 显示全部楼层
另外:
  我在信息打开时就打开数据集A。在代码中给业务参数赋值,然后去刷新A,A的内容还是不变,这是为什么?
回复 支持 反对

使用道具 举报

发表于 2008-1-22 15:42:22 | 显示全部楼层
楼主,代码刷新查找数据的方法在楼上已经给了。
出于效率的考虑,我们没有自动去刷新查找数据,所以需要楼主在自己认为合适的时机去处理一下。

我个人这应该是设计理念的问题,不算bug。

楼主把你做的资源打包发上来吧(要完整的资源),我帮你找一下原因。
顺便告诉我你的版本号
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-22 15:52:43 | 显示全部楼层
我找到部分答案:
在给参数赋值后,需要手动清空查找列表的内容如:DataSetB.LookupDatas.Clear; 这就说明Justep判断列表有内容就不去刷新列表,而不去比较列表的内容发生变化否。
回复 支持 反对

使用道具 举报

发表于 2008-1-22 17:13:26 | 显示全部楼层
楼主,直接刷新查找数据也可以啊。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-23 09:11:52 | 显示全部楼层
我还是没有搞懂怎么直接刷新查找数据?
回复 支持 反对

使用道具 举报

发表于 2008-1-23 09:15:44 | 显示全部楼层
最初由 jiahaiminghr 发布
[B]楼主,请尝试:
1、刷新数据集A
2、刷新B的查找数据
DataSetB.GetLookupData('字段1').Refresh; [/B]



DataSetB.GetLookupData('字段1').Refresh;
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-7 00:33 , Processed in 0.040462 second(s), 12 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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