以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  订单表某个操作,同时锁定订单明细表(对应于订单编号的))  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=19705)

--  作者:kevin
--  发布时间:2012/5/18 15:29:00
--  订单表某个操作,同时锁定订单明细表(对应于订单编号的))
 订单表  和  订单明细表  以 订单编号 关联着

订单表有一个"标记"的逻辑列,当标记列为TRUE时,则锁定明细表对应的明细,请问用代码如何做?

--  作者:狐狸爸爸
--  发布时间:2012/5/18 15:32:00
--  

参考这个事件:
 
http://www.foxtable.com/help/topics/0636.htm


 
For each dr As DataRow = e.DataRow.GetChildRows("订单明细")
   dr.Locked = True
Next
 


--  作者:kevin
--  发布时间:2012/5/18 15:36:00
--  
 狐爸,我仍然不明白怎么用呀.
当我在订单表,在订单编号为10001的行里面,将"标记"列打勾时,可以同时将对应应该订单编号的明细都锁定;

--  作者:狐狸爸爸
--  发布时间:2012/5/18 15:43:00
--  
如果这样,在DatacolChanged设置代码:
 
Select case  e.DataCol.Name
    Case “标记”
          For each dr As DataRow = e.DataRow.GetChildRows("订单明细")
               dr.Locked = e.Datarow("标记")
         Next
End Select

--  作者:kevin
--  发布时间:2012/5/18 18:00:00
--  
 狐爸,实在不好意思,我试了还是不行,
--  作者:小猪鑫鑫
--  发布时间:2012/5/18 19:42:00
--  
楼主:你的明细表是否没有_Locked这列啊,所以才锁不了
--  作者:狐狸爸爸
--  发布时间:2012/5/18 21:00:00
--  

这个代码是没有道理不行的。

如果不行,请自己设计好这两个表,输入几行测试数据传上来,我帮你看看怎么回事。

提示提问,最好是自己做好表传上来,做到这一点的话,你这个问题几分钟就解决了。


--  作者:rzq1211
--  发布时间:2012/5/19 9:51:00
--  
Select case  e.DataCol.Name
    Case “标记”
          For each dr As DataRow in e.DataRow.GetChildRows("订单明细")
               dr.Locked = e.Datarow("标记")
         Next
End Select