以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  绑定控件模式,想在保存之前约束手机号不能为空,下面的语句为啥不管用呢  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=131203)

--  作者:xxfoxtable
--  发布时间:2019/2/20 10:42:00
--  绑定控件模式,想在保存之前约束手机号不能为空,下面的语句为啥不管用呢
        Dim cz As DataRow=DataTables("记录").sqlfind("手机号码=\'" & Tables("记录").current("手机号码") &"\' And _identify<>\'" & Tables("记录").current("_identify") &"\'")
        If cz IsNot Nothing
            msgbox("手机号码重复不能保存!")
            Return
        End If

--  作者:有点蓝
--  发布时间:2019/2/20 11:03:00
--  
代码在什么事件的?这个判断的是不能重复,也不是判断是否为空
--  作者:xxfoxtable
--  发布时间:2019/2/20 11:18:00
--  
在保存按钮下的代码,我写错了,是判断手机号不能重复,但没有效果,还是可以重复,也不提示
--  作者:有点蓝
--  发布时间:2019/2/20 11:32:00
--  
sqlfind是查已经保存了的记录的,如果这个表有其它记录还没有保存,并且有相同的手机号,这个是判断不了的。

如果按钮是针对当前行进行操作,确认其它行的记录已经保存。如果是要操作多行记录的,那就查2次吧,find一次,没有重复,再sqlfind一次

--  作者:xxfoxtable
--  发布时间:2019/2/20 11:44:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar

查一次就行,没有效果
--  作者:有点蓝
--  发布时间:2019/2/20 12:05:00
--  
Tables("表A").FinishEditing
Dim cz As DataRow=DataTables("表A").sqlfind("手机号码=\'" & Tables("表A").current("手机号码") & "\'")
If cz IsNot Nothing
    msgbox("手机号码重复不能保存!")
    Return
End If
DataTables("表A").save
msgbox("保存成功!")