以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]AddNew是怎么回事呢 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=34445) |
-- 作者:ifastudy -- 发布时间:2013/6/7 17:20:00 -- [求助]AddNew是怎么回事呢 我选择一个副表A的一行,然后用它的值作为过另一个副表B的筛选条件.这样B的值随A中的选择的行而变化,也就是模拟了关联表. 现在出现了这样的问题.当我向B增加行时,增加一行没有问题,后面再增加的就是空白行. 已经遇到过两次了,是什么原因呢? A表 CurrentChanged代码: Dim SelRow = Tables("裁剪完工统计_Table1").Current If SelRow IsNot Nothing
Tables("裁剪完工统计_Table2").Filter = "[节点名]=\'" & SelRow("节点名") & "\' and [订单编号]=\'" & SelRow("订单编号") & "\'" End If B表增加行(转为完工单)代码: Dim SelRow As Row = Tables(e.Form.Name & "_Table1").Current If SelRow Is Nothing Return End If Dim NewRow As Row = Tables(e.Form.Name & "_Table2").AddNew() NewRow("订单编号")=SelRow("订单编号") NewRow("节点名")=SelRow("节点名") NewRow("已完工码63S")=SelRow("未完工码63S") NewRow("已完工码66M")=SelRow("未完工码66M") NewRow("已完工码70L")=SelRow("未完工码70L") NewRow("已完工码73XL")=SelRow("未完工码73XL") NewRow("已完工码76XXL")=SelRow("未完工码76XXL") NewRow("已完工码80XXXL")=SelRow("未完工码80XXXL") NewRow("已完工码83")=SelRow("未完工码83") NewRow("已完工码86")=SelRow("未完工码86") NewRow("已完工码90")=SelRow("未完工码90") NewRow("记录日期")=Date.Today |
-- 作者:ifastudy -- 发布时间:2013/6/7 17:30:00 -- 把 NewRow 由Row换成DataRow就可以了,但不明白原因 |
-- 作者:狐狸爸爸 -- 发布时间:2013/6/7 17:45:00 -- 说明第二次增加行的时候,Tables(e.Form.Name & "_Table1")的当前行并没有数据,第二次增加行之前,你可以看看这个表的当前是不是真的有数据 |
-- 作者:ifastudy -- 发布时间:2013/6/7 20:01:00 -- 当前行是有值的,我用messagebox显示过,它把值总赋给第一个增加的行,后面增加的行是空白。我看帮助说AddNEW返回增加的第一行,这个说得通。但为什么DataTables的addnew可以呢 |