Foxtable(狐表)用户栏目专家坐堂 → [求助] 禁止不同发货地址使用相同箱号


  共有2359人关注过本帖树形打印复制链接

主题:[求助] 禁止不同发货地址使用相同箱号

帅哥哟,离线,有人找我吗?
sanny
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:799 积分:5921 威望:0 精华:0 注册:2018/11/3 8:24:00
[求助] 禁止不同发货地址使用相同箱号  发帖心情 Post By:2020/4/28 18:27:00 [只看该作者]

老师,请问一下如何禁止当前窗口表中的不同发货地址使用相同箱号。

 

比如一个箱号中只能是相同地址的,不同地址的就出现提示 “不同发货地址不能使用相同箱号

 

谢谢了。


 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:799 积分:5921 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2020/4/28 18:27:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:禁止不同地址用相同箱号.foxdb


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107873 积分:548728 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/28 20:23:00 [只看该作者]

DataColChanging事件

If e.DataCol.Name = "箱号" Then
    Dim dr As DataRow = e.DataTable.Find("箱号 = '" & e.NewValue & "' and 发货地址 <> '" & e.DataRow("发货地址") & "'")
    If dr IsNot Nothing Then
        MessageBox.Show("不同发货地址不能使用相同箱号!")
        e.Cancel = True
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
sanny
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:799 积分:5921 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2020/4/28 22:20:00 [只看该作者]

谢谢老师,还有个问题就是,当这个表中有很多记录,但窗口表中只显示需要的记录时,我只想针对当前窗口中的记录对这个规则有效。也就是说这个大表有箱号1时,窗口表中发其它地方的箱号也可以是1。 目前是不能重复的。谢谢。

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107873 积分:548728 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/28 22:33:00 [只看该作者]

方法1、把窗口表改为sqltable

2、加上窗口表的筛选条件
dim filter as string = Tables("窗口表").filter
if filter > "" then filter =filter & " and "
Dim dr As DataRow = e.DataTable.Find(filter & "箱号 = '" & e.NewValue & "' and 发货地址 <> '" & e.DataRow("发货地址") & "'" )

 回到顶部