以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 帮忙分析一下,问题出在哪? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=69275) |
-- 作者:q158242455 -- 发布时间:2015/6/2 15:16:00 -- 帮忙分析一下,问题出在哪? 在表"维修“中的datacolchanged 里 Select Case e.DataCol.name Case "结束时间" Dim dr As DataRow = DataTables("库").Find("售后 = \'" & e.OldValue & "\'") If e.DataRow.Isnull("结束时间")=False Then dr("售后") = "A" End If End Select 运行的时候说:调用目标发生异常! 帮忙!!!解决下!!
|
-- 作者:Bin -- 发布时间:2015/6/2 15:17:00 -- Select Case e.DataCol.name Case "结束时间" Dim dr As DataRow = DataTables("库").Find("售后 = \'" & e.OldValue & "\'") If e.DataRow.Isnull("结束时间")=False Then if dr isnot nothing then \'要判断一下是否找到DR 万一没找到行当然就报错了. dr("售后") = "A" end if End If End Select
|
-- 作者:q158242455 -- 发布时间:2015/6/2 15:26:00 -- dr("售后")=“A” 为什么 运行了再表"库" 的售后内没有A啊! |
-- 作者:q158242455 -- 发布时间:2015/6/2 15:42:00 -- 再帮个忙! 之前我加了你说的那个判断,运行是没有报警了!但是我运行了,表“库”中的“售后”内 为什么 没有显示A啊!!!!拜托! |
-- 作者:Bin -- 发布时间:2015/6/2 15:43:00 -- DataTables("库").Find("售后 = \'" & e.OldValue & "\'") 因为没有找到对应的行. E.OldValue 是修改前的值哦.
|
-- 作者:q158242455 -- 发布时间:2015/6/2 15:44:00 -- 那我只要怎么改呢? 我得怎么改? |
-- 作者:Bin -- 发布时间:2015/6/2 15:45:00 -- 不知道你想做什么,我也不知道怎么改 如果是要修改后的新值 就把OldValue 改为 NewValue 如果输入的值本身就没匹配的行,那么自然就没更新.
|
-- 作者:Bin -- 发布时间:2015/6/2 15:46:00 -- 而且.你 Case "结束时间" 判断了列名 那么这里的e.NewValue 就相当于 e.datarow("结束时间") 你确定你是要取这列的值吗? |
-- 作者:q158242455 -- 发布时间:2015/6/2 16:09:00 -- 我讲详细点! 比如:我有表"库"和表”维修“2个表!表”库“里有”编号“ " 售后 "还有其他列... 表"维修”中有“编号” “结束时间” 还有其他列.... 背景是:表“库”中的“编号”和维修中“编号”是关联的。 要求:如果表“售后”“结束时间”里有 数据 的话, 表“库”“售后“中显示字母A 请赐教!! 是不是要找”编号“里的值!进行操作?
[此贴子已经被作者于2015/6/2 16:11:18编辑过]
|
-- 作者:Bin -- 发布时间:2015/6/2 16:12:00 -- Select Case e.DataCol.name Case "结束时间" If e.DataRow.Isnull("结束时间")=False Then Dim dr As DataRow = DataTables("库").Find("编号 = \'" & e.datarow("编号") & "\'") if dr isnot nothing then \'要判断一下是否找到DR 万一没找到行当然就报错了. dr("售后") = "A" end if End If End Select
|