以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  有请贺总关注一下系统越来越慢的问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=67630)

--  作者:gaoqr
--  发布时间:2015/4/28 7:50:00
--  有请贺总关注一下系统越来越慢的问题

If dr1("配合量") <> 0 And dr1.IsNull("市场价") Then

    dr1("市场金额") = dr1("金额")

End If


市场价 是数值列。上面的代码无效。


应该怎样修改?谢谢!

[此贴子已经被作者于2015/4/28 11:29:56编辑过]

--  作者:Bin
--  发布时间:2015/4/28 8:42:00
--  
呵呵.肯定有效的.除非里面有0值.  你的代码判断逻辑是

配合量 不等于0  并且 市场价是空  两个条件都成立时触发

你看看是不是你逻辑搞错了

--  作者:foxor
--  发布时间:2015/4/28 8:44:00
--  
Sorry,我看错了
[此贴子已经被作者于2015/4/28 8:46:39编辑过]

--  作者:gaoqr
--  发布时间:2015/4/28 9:22:00
--  
是有 0 ,因为如果是甲方供应材料,金额为零。

那这种情况应该怎样修改?

谢谢!

--  作者:Bin
--  发布时间:2015/4/28 9:29:00
--  
If dr1("配合量") <> 0 And (dr1.IsNull("市场价") orelse dr1("市场价")=0) Then
--  作者:gaoqr
--  发布时间:2015/4/28 9:46:00
--  

           If dr1("PJ") = 0 And dr1.IsNull("市场价") Then  \'\'计算市场金额
                dr1("市场金额") = dr1("金额")
            End If

            If dr1("PJ") = 0 And dr1("市场价") IsNot Nothing Then
                dr1("市场金额") = dr1("定额用量") * dr1("市场价")
            End If

            If dr1("配合量") <> 0 And dr1.IsNull("市场价") Then
                dr1("市场金额") = dr1("金额")

            End If

            If dr1("配合量") <> 0 And dr1("市场价") IsNot Nothing Then
                dr1("市场金额") =dr1("定额用量") * dr1("配合量") * dr1("市场价")
            End If

 

 

也就是下图2、6、10、11序号行没有计算。

 

 



此主题相关图片如下:2015-04-28_094649.png
按此在新窗口浏览图片

 

 

市场价填入 0 时,计算正确。

[此贴子已经被作者于2015/4/28 9:47:36编辑过]

--  作者:Bin
--  发布时间:2015/4/28 9:46:00
--  
看5楼
--  作者:gaoqr
--  发布时间:2015/4/28 9:48:00
--  

结果是一样的

 


--  作者:Bin
--  发布时间:2015/4/28 9:50:00
--  
不可能,你每个条件分别弹出调试一下看看那个条件不成立

搞不定请上例子

--  作者:客人
--  发布时间:2015/4/28 10:07:00
--  

Bin 版主,你好!

我是否可以把整个文件传给你,也直接帮我解决越来越慢的问题

 

情况是这样的:

1326有一个备份文件,加载1项定额,2秒内完毕。

2410的文件加载同一项定额48秒才完毕。

3、我使用326的备份文件,重新导入修改过的表,复制公式、窗口、菜单等,

再加载同一项定额,用时接近4秒。

4410的文件使用到现在,再加载同一项定额,用时接近36秒。