我在DataWindow中有一个复选框,可以选中和取消选中它。 db中的默认值为0.检查后,db值更新为1,取消选中后,该值再次更新为0。
但是,我想只在数据库值为0时更新数据库。如果数据库已经为1,那么我不希望用户能够将其更改为0.所以请告诉我怎么能我这样做? 以下是我的DataWindow中的复选框列代码:
column=(type=decimal(0) update=yes updatewhereclause=yes name=ok dbname="table.ok" values="1/0" )
答案 0 :(得分:2)
您可以保护该复选框以防止取消选中该复选框:在复选框的general / protect
字段中:
if(ok = 1, 1, 0)
选中复选框后,它会受到保护(您仍然需要将数据更新到基础)。 在下一次检索时,您可以看到该复选框已受到保护。
您可能必须使用Pointer
的类似表达式来显示该字段已被阻止,例如使用NoPointer!
光标。
答案 1 :(得分:0)
尝试使用:
if( upper(ok) = 'OFF', 1, 0)
或相反:
if(upper(ok) = 'ON', 1, 0)
取决于您如何在复选框的属性中设置打开/关闭值。
注意,我正在使用PowerBuilder 2017