以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请教一个计算?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=29067)

--  作者:lyfxybc
--  发布时间:2013/2/26 21:15:00
--  请教一个计算?

请教一个计算?

有两列,“差值”和 “合格”,差值列为数值列,合格列为逻辑列,当数值列的值大于等于5,或者小于等于5时,逻辑列为true,代码如何写

[此贴子已经被作者于2013-2-27 5:57:03编辑过]

--  作者:狐狸爸爸
--  发布时间:2013/2/26 21:27:00
--  

逻辑列改为表达式列,表达式设置为:

 

IIF(某列 > 5,True,  False)


--  作者:lsy
--  发布时间:2013/2/26 21:30:00
--  

e.DataRow("合格") = e.DataRow("差值") > = 5

 

能不用表达式,尽量不用,这是我的体会。

 

[此贴子已经被作者于2013-2-26 21:31:56编辑过]

--  作者:程兴刚
--  发布时间:2013/2/26 21:47:00
--  
以下是引用lsy在2013-2-26 21:30:00的发言:

e.DataRow("合格") = e.DataRow("差值") > = 5

 

能不用表达式,尽量不用,这是我的体会。

 

[此贴子已经被作者于2013-2-26 21:31:56编辑过]

 

您这是什么语言的代码?

if e.Datacol.name = "差值"

    if e.DataRow.isnull("差值") = false

        e.DataRow("合格") = (e.DataRow("差值") - 5 = 0)

    end if

end if

 

注:楼主的题出的有问题,按照他的题,逻辑列永远等于true


--  作者:lsy
--  发布时间:2013/2/26 21:55:00
--  

呵呵,忘了加括号,让您误解了,不过结果是一样的,这正说明狐表的强大。

e.DataRow("合格") = (e.DataRow("差值") > = - 5 And e.DataRow("差值") < = 5)

 

可以实际验证的。

[此贴子已经被作者于2013-2-26 22:07:00编辑过]

--  作者:lyfxybc
--  发布时间:2013/2/26 21:59:00
--  
谢谢,就是在正负5之间为true, 根据代码已经解决,再次感谢
[此贴子已经被作者于2013-2-26 22:16:42编辑过]