以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]有一些关联的问题不懂,求大神解答!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=83665)

--  作者:伐斯洛
--  发布时间:2016/4/14 10:50:00
--  [求助]有一些关联的问题不懂,求大神解答!
关联表的作用知识引用和统计么?
我现在有表A和表B两个表,着两个表都有身份证号列,现在在单独的表中设置身份证号列禁止重复是可以做到,
如果我想让表A已录入过的身份证号,在表B上也体现为禁止重复不能输入,
并且可以像关联表一样显示出与表A重复的项的具体信息,我应该如何做??

--  作者:大红袍
--  发布时间:2016/4/14 10:53:00
--  

DataColChanging事件

 

If e.DataCol.Name = "身份证" AndAlso e.NewValue <> Nothing Then

    Dim fdr As DataRow = DataTables("表A").Find("身份证 = \'" & e.NewValue & "\'")

    If fdr IsNot Nothing Then

        msgbox("表a已存在相同身份证")

        e.Cancel = true

    End If

End If


--  作者:伐斯洛
--  发布时间:2016/4/14 11:42:00
--  
这是代码么?我是初学者,还没有开始阅读代码部分的帮助文件,不用代码不可以吗?


--  作者:大红袍
--  发布时间:2016/4/14 11:45:00
--  

 不用代码不行。

 

http://www.foxtable.com/help/topics/1445.htm

 


--  作者:伐斯洛
--  发布时间:2016/4/14 11:46:00
--  
收到
--  作者:伐斯洛
--  发布时间:2016/4/14 14:16:00
--  
试了一中午了,不行啊,求版主解释详细一点,求教会!!
用版主给的代码已经可以实现想要的功能了,这我自己应该如何运用这段代码呢?
还有如果想在MGSBOX直接体现出表A重复的身份证号的名字应该如何做?
[此贴子已经被作者于2016/4/14 14:20:19编辑过]

--  作者:大红袍
--  发布时间:2016/4/14 14:19:00
--  

 表事件,DataColChanging事件。不会做,请重新学习

 

 http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187

 


--  作者:伐斯洛
--  发布时间:2016/4/14 14:22:00
--  
这个已经实现了,版主请看看刚刚编辑的问题图片点击可在新窗口打开查看图片点击可在新窗口打开查看
--  作者:伐斯洛
--  发布时间:2016/4/14 14:26:00
--  
用版主给的代码已经可以实现想要的功能了,这我自己应该如何运用这段代码呢?
还有如果想在MGSBOX直接体现出表A重复的身份证号的名字应该如何做?
如果想要关联多个表格应该修改代码的哪一段?比如关联表C 表D 表E?

--  作者:大红袍
--  发布时间:2016/4/14 15:01:00
--  

如何运用这段代码?你写到DataColChanging事件不就行了?

 

If e.DataCol.Name = "身份证" AndAlso e.NewValue <> Nothing Then

    Dim fdr As DataRow = DataTables("表A").Find("身份证 = \'" & e.NewValue & "\'")

    If fdr IsNot Nothing Then

        msgbox("表a已存在相同身份证(" & fdr("姓名") & ")")

        e.Cancel = true

    End If

End If