以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请教:通过明细表影响主表  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=23882)

--  作者:kevin
--  发布时间:2012/9/22 16:38:00
--  请教:通过明细表影响主表

当明细表的"审核"列全部为 TRUE 时.

主表 的 "审核" 列 TRYE

如果 明细表的 "审核"列同时有 TRUE和FALSE时,主表的"审核"列则为"FALSE

 

 


--  作者:lin_hailun
--  发布时间:2012/9/22 16:45:00
--  
 For Each pdr As DataRow In DataTables("主表").DataRows
    Dim drs As List(Of DataRow) = pdr.GetChildRows("子表")
    Dim flag As Boolean = True
    For Each dr As DataRow In drs
        If dr("审核") = False Then
            flag = False
            Exit For
        End If
    Next
    pdr("审核") = flag
Next
[此贴子已经被作者于2012-9-22 17:02:56编辑过]

--  作者:lin_hailun
--  发布时间:2012/9/22 16:50:00
--  
或者

For Each pdr As DataRow In DataTables("主表").DataRows
    Dim drs As List(Of DataRow) = pdr.GetChildRows("子表")
    pdr("审核") = True
    For Each dr As DataRow In drs
        If dr("审核") = False Then
            pdr("审核") = False
            Exit For
        End If
    Next
Next

--  作者:kevin
--  发布时间:2012/9/22 16:56:00
--  

谢谢您的帮助.

主表与子表以订单编号关联

 

当明细表"审核"存在TRUE与FALSE时.主表的"审核"列是FALSE

当明细表"审核"全部是FALSE时,主表的"审核"列也是FALSE

而当明细表"审核"全部是TRUE时,主表的"审核"列则为TRUE

 

所以,您的代码好像需要修改一下.谢谢您再次帮忙!


--  作者:lin_hailun
--  发布时间:2012/9/22 17:04:00
--  
 原帖已修改。

 你的需求可以这样理解,如果有一个是false,主表就是false;否则为true