起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 439|回复: 10

【搞定】死循环的问题**

[复制链接]
发表于 2007-5-22 11:36:02 | 显示全部楼层 |阅读模式
代码如下:
if (DataSetZGZJHMXB.FieldByName('QZ').AsFloat < 0) or (DataSetZGZJHMXB.FieldByName('QZ').AsFloat > 1) then
     begin
         Dialogs.ShowMessage('权重只能在0-1之间,请检查!');
         SysUtils.Abort;
     end;
     if DataSetZGZJHMXB.FieldByName('ZQZ').AsFloat > 1 then
     begin
         Dialogs.ShowMessage('权重之和不能大于1,请检查您的输入是否正确!');
         SysUtils.Abort;
     end;
问题:我在数据集里面加了一个统计字段,统计权重(权重为浮点数)之和。为什么在上面的代码里判断权重之和会弹出下面的错误提示!
问题展现方法:当我新增1条或更多条记录时,权重之和大于1,然后我修改权重,使权重之和为一,保存成功,流转到B的时候,打开弹出错误提示!请问怎么解决!

aa.jpg

184.83 KB, 下载次数: 144

回复

使用道具 举报

 楼主| 发表于 2007-5-22 11:37:58 | 显示全部楼层
急!请求帮忙!上面的代码是写在BeforeApplyUpdates事件里的
回复 支持 反对

使用道具 举报

发表于 2007-5-22 14:49:11 | 显示全部楼层
当我新增1条或更多条记录时,权重之和大于1,然后我修改权重,使权重之和为一,保存成功,
没有理解你说的意思?
既然定义了统计字段,那么统计字段会根据实际的值,去做相应的变化,为啥还要修改为1呢?难道你想让该统计字段的值始终为1吗?

请说说你实际的需求,结合你的需求,我们再来看你的问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 15:04:50 | 显示全部楼层
其实我填写的的是目标管理卡,权重为考核系数,考核系数必须为1,也不能小于1。
回复 支持 反对

使用道具 举报

发表于 2007-5-22 15:41:12 | 显示全部楼层
考核系数必须为1,也不能小于1?这怎么理解,必须1,那就是1,怎么又不能小于1呢?如果只能为1,那么你设置一个 表达式计算字段, 定义表达式为1,这样就可以了,也不用那些判断了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 15:54:54 | 显示全部楼层
我的意思是,考核系数理论上是1,但是我不知道用户将要填写多少条记录,所以我只能控制考核系数大于1时做提示不能大于1,小于1的话就不做任何判断!
我所要解决的问题是:当我新增1条或更多条记录时,如果权重之和大于1,提示用户不能大于1,只能小于等于1,用户修改之后可以成功保存到数据库,但是流程流转到下一环节的执行者打开时弹出了1楼的错误提示框!
回复 支持 反对

使用道具 举报

发表于 2007-5-22 16:00:32 | 显示全部楼层
嗯,那你不应该在 BeforeApplyUpdates 这个事件上做,

如果你是用数据导航条来保存数据的,那么在数据导航条的 BeforeAction 来在处理。
如果不知道如何写,请以“BeforeAction”在bbs上搜索,有许多相关的代码

如果是自己用按钮来提交,那么直接在按钮上判断,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 16:01:15 | 显示全部楼层
如:  第一条记录(权重)                      修改后的记录
            0.2                                                                      不做修改
            0.2                                                                      不做修改
            0.3                                                                         0.2
                        0.2                                                                      不做修改
            0.2                                                                      不做修改
        权重之和1.1 (提示用户)                                      权重之和1.0(保存成功)
回复 支持 反对

使用道具 举报

发表于 2007-5-22 16:02:30 | 显示全部楼层
看7楼
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 16:03:21 | 显示全部楼层
问题解决!!结帖!
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

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

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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