以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  判断语句  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=103509)

--  作者:peibaomin
--  发布时间:2017/7/10 15:11:00
--  判断语句


Dim khm As  WinForm.TextBox=e.Form.Controls("kehuxingmingtext")
Dim sfzh As WinForm.TextBox = e.Form.Controls("shenfenzhenghaoTextBox")
If khm.text=Nothing Then
    msgbox("客户姓名不能为空!请验证.")
    khm.Select
Else
    If khm.text <> Nothing Then
       
        If ValidPIN(sfzh.text)=False Then
            msgbox("身份证号输入不合法!请验证.")
            sfzh .Select
        Else
            DataTables.Save
            Tables("客户资料").position = 0
            e.Form.Controls("kehuruku").Enabled=False
            e.Form.Controls("shujudaohang").Enabled= True
            e.Form.Controls("shujucaozuo").Enabled=True
            e.Form.Controls("quedingxiugai").Enabled= False
            e.Form.Controls("quedingxiugai").text="确定修改"
            e.Form.Controls("quxiaoxiugai").Enabled=False
            e.Form.Controls("xiugaishuju").Enabled=True
            e.Form.Controls("tianjiashuju").Enabled=True
        End If
    End If
End If

这句代码对吗?运行前后怎么不是想要的结果呀?

想实现:首先判断客户名不能为空,如非空值,再对非空值的身份证号码进行判断身份证号码合法则保存数据。也就是说身份证号码可以是空值不能为非法值入库。

 

 

 

 

 

 

 

[此贴子已经被作者于2017/7/10 15:16:29编辑过]

--  作者:有点甜
--  发布时间:2017/7/10 15:44:00
--  

Dim khm As  WinForm.TextBox=e.Form.Controls("kehuxingmingtext")
Dim sfzh As WinForm.TextBox = e.Form.Controls("shenfenzhenghaoTextBox")
If khm.text=Nothing Then
    msgbox("客户姓名不能为空!请验证.")
    khm.Select
    Return
End If

If khm.text <> Nothing Then
   
    If ValidPIN(sfzh.text)=False Then
        msgbox("身份证号输入不合法!请验证.")
        sfzh .Select
        Return
    Else
        DataTables.Save
        Tables("客户资料").position = 0
        e.Form.Controls("kehuruku").Enabled=False
        e.Form.Controls("shujudaohang").Enabled= True
        e.Form.Controls("shujucaozuo").Enabled=True
        e.Form.Controls("quedingxiugai").Enabled= False
        e.Form.Controls("quedingxiugai").text="确定修改"
        e.Form.Controls("quxiaoxiugai").Enabled=False
        e.Form.Controls("xiugaishuju").Enabled=True
        e.Form.Controls("tianjiashuju").Enabled=True
    End If
End If


--  作者:peibaomin
--  发布时间:2017/7/10 16:42:00
--  

这样如果身份证是空值的话无法保存数据!我想实现身份证空值是可以保存数据的!身份证为空值时不执行判断

如果再多一个判断(就是以上都符合条件的情况下判断表中的身份证号码数据不能重复)数据库中的身份证号码不能重复但可以是空值能实现吗?,应该在哪加一个判断呢?

[此贴子已经被作者于2017/7/10 16:51:31编辑过]

--  作者:有点甜
--  发布时间:2017/7/10 16:56:00
--  

Dim khm As  WinForm.TextBox=e.Form.Controls("kehuxingmingtext")
Dim sfzh As WinForm.TextBox = e.Form.Controls("shenfenzhenghaoTextBox")
If khm.text=Nothing Then
    msgbox("客户姓名不能为空!请验证.")
    khm.Select
    Return
End If

If sfzh.text <> Nothing Then
   
    If ValidPIN(sfzh.text)=False Then
        msgbox("身份证号输入不合法!请验证.")
        sfzh .Select
        Return
    End If
End If
DataTables.Save
Tables("客户资料").position = 0
e.Form.Controls("kehuruku").Enabled=False
e.Form.Controls("shujudaohang").Enabled= True
e.Form.Controls("shujucaozuo").Enabled=True
e.Form.Controls("quedingxiugai").Enabled= False
e.Form.Controls("quedingxiugai").text="确定修改"
e.Form.Controls("quxiaoxiugai").Enabled=False
e.Form.Controls("xiugaishuju").Enabled=True
e.Form.Controls("tianjiashuju").Enabled=True

 

[此贴子已经被作者于2017/7/10 17:43:40编辑过]

--  作者:peibaomin
--  发布时间:2017/7/10 17:04:00
--  

还是不可以身份证号码文本框是空值的时候还是判断是非法身份证不往下执行

 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:客户资料入库.table

[此贴子已经被作者于2017/7/10 17:21:10编辑过]

--  作者:有点甜
--  发布时间:2017/7/10 17:46:00
--  

Dim khm As  WinForm.TextBox=e.Form.Controls("kehuxingmingTextBox")
Dim sfzh As WinForm.TextBox = e.Form.Controls("shenfenzhenghaoTextBox")
If khm.text=Nothing Then
    msgbox("客户姓名不能为空!请验证.")
    khm.Select
    Return
End If

If sfzh.text <> Nothing Then
   
    If ValidPIN(sfzh.text)=False Then
        msgbox("身份证号输入不合法!请验证.")
        sfzh .Select
        Return
    End If
End If
DataTables.Save
Tables("客户资料").position = 0
e.Form.Controls("kehuruku").Enabled=False
e.Form.Controls("shujudaohang").Enabled= True
e.Form.Controls("shujucaozuo").Enabled=True
e.Form.Controls("quedingxiugai").Enabled= False
e.Form.Controls("quedingxiugai").text="确定修改"
e.Form.Controls("quxiaoxiugai").Enabled=False
e.Form.Controls("xiugaishuju").Enabled=True
e.Form.Controls("tianjiashuju").Enabled=True


--  作者:peibaomin
--  发布时间:2017/7/10 18:27:00
--  

如果再多一个判断(就是以上都符合条件的情况下判断表中的身份证号码数据不能重复)数据库中的身份证号码不能重复但可以是空值能实现吗?,应该在哪加一个判断呢?


--  作者:有点甜
--  发布时间:2017/7/10 18:33:00
--  

Dim khm As  WinForm.TextBox=e.Form.Controls("kehuxingmingTextBox")
Dim sfzh As WinForm.TextBox = e.Form.Controls("shenfenzhenghaoTextBox")
If khm.text=Nothing Then
    msgbox("客户姓名不能为空!请验证.")
    khm.Select
    Return
End If

If sfzh.text <> Nothing Then   
    If ValidPIN(sfzh.text)=False Then
        msgbox("身份证号输入不合法!请验证.")
        sfzh .Select
        Return
    End If
   
    Dim count As Integer = DataTables("客户资料").compute("count(_Identify)", "身份证号 = \'" & sfzh & "\'")  
    If count > 1 Then     
        msgbox("身份证号重复")
        sfzh .Select
        Return
    End If
End If
DataTables.Save
Tables("客户资料").position = 0
e.Form.Controls("kehuruku").Enabled=False
e.Form.Controls("shujudaohang").Enabled= True
e.Form.Controls("shujucaozuo").Enabled=True
e.Form.Controls("quedingxiugai").Enabled= False
e.Form.Controls("quedingxiugai").text="确定修改"
e.Form.Controls("quxiaoxiugai").Enabled=False
e.Form.Controls("xiugaishuju").Enabled=True
e.Form.Controls("tianjiashuju").Enabled=True


--  作者:peibaomin
--  发布时间:2017/7/10 19:19:00
--  

运行错误

 


图片点击可在新窗口打开查看此主题相关图片如下:569.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2017/7/10 20:15:00
--  
提示很明显了,要学会基本的出错判断。不能一出错看都不看只会提问题的

Dim count As Integer = DataTables("客户资料").compute("count(_Identify)", "身份证号 = \'" & sfzh.text & "\'")