以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]请问这个代码如何写?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=47105)

--  作者:jimmyhwang
--  发布时间:2014/3/4 16:27:00
--  [求助]请问这个代码如何写?

如下图。 combobox 要进行validating的操作, table中“第一列”的值都必须一致。 比如现在是2,3,5行的值已经有了。现在我要填入第4行的值。只能和第一列其他行的值一致,如果不一致的话就提示“必须一致!”,并且光标返回到combobox。 我不知道如何取到table中J02这个值? 请教一下各位~谢谢


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20140304161829.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2014-3-4 16:53:37编辑过]

--  作者:lsy
--  发布时间:2014/3/4 16:36:00
--  
adidating操作?
--  作者:jimmyhwang
--  发布时间:2014/3/4 16:53:00
--  
validating事件啦,不好意思。
[此贴子已经被作者于2014-3-4 16:54:07编辑过]

--  作者:lsy
--  发布时间:2014/3/4 17:09:00
--  
If e.Sender.Text > "" Then
    Dim dr As DataRow = DataTables("表A").Find("第一列 = \'" & e.Sender.Text & "\'")
    If dr Is Nothing Then
        MessageBox.Show("必须一致!")
        e.Cancel = True
    Else
        e.Form.Controls("Table1").Table.Current("第一列") = e.Sender.Text
    End If   
End If

--  作者:e-png
--  发布时间:2014/3/4 17:55:00
--  
如果绑定到第一列了,直接默认一个值就是了。
--  作者:jimmyhwang
--  发布时间:2014/3/5 12:16:00
--  

一下是我的实际在做的。我套用进去。

我增加了个条件,

Dim ddbh As String = e.Form.controls("ddbhtextbox").text
If e.Sender.Text > "" Then
    Dim dr As DataRow = DataTables("小包发货单").Find( " 订单编号 = \'" & ddbh & "\'"  And " 仓位信息 = \'" & e.Sender.Text & "\'",0)
    If dr IsNot Nothing Then
        e.Form.Controls("Table1").Table.Current("仓位信息") =  dr("仓位信息")
        MessageBox.Show("请和同订单的其他商品放一起!")
    Else
        e.Form.Controls("Table1").Table.Current("仓位信息") =  e.Sender.Text
    End If
End If

 

结果提示出错。为啥会要求转换成long?


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20140305121405.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2014-3-5 12:17:03编辑过]

--  作者:lsy
--  发布时间:2014/3/5 13:06:00
--  
订单编号列,是数值类型的吧。
--  作者:jimmyhwang
--  发布时间:2014/3/5 13:33:00
--  
不是哦。是字母加数值的字符串类型。
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20140305132936.jpg
图片点击可在新窗口打开查看

--  作者:lsy
--  发布时间:2014/3/5 13:41:00
--  
不看例子,真看不出问题何在。
--  作者:jimmyhwang
--  发布时间:2014/3/5 15:49:00
--  

上了个小例子

先说一下validating事件功能。 现在有个仓位J01~J05, 产品编号 A000000001~D000000001, 小包发货单里某些订单编号对应已经填入了一些仓位信息。只要求订单编号相同的仓位信息相同。如果不相同就提示“不一致”,并自动返回相同订单编号里已经有的仓位信息。如相同订单编号里一个仓位信息也没有,就按照所选的录入即可。

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table


图片点击可在新窗口打开查看此主题相关图片如下:入仓要求.jpg
图片点击可在新窗口打开查看