以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  跨表统计  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=192268)

--  作者:13775189031
--  发布时间:2024/6/7 14:37:00
--  跨表统计
请教老师:父表“预算清单”,子表“外购件茨沟明细表”
想实现,子表中所有行“到货数量”大于等于“数量”,且“到货数量”大于0的情况下,自动统计能够在父表中的“"当前进展_完成"”自动勾选,只要有一行不满足要求,就不自动勾选
请看看下面的代码有什么问题
Select Case e.DataCol.name
    Case "预算编号"
        If e.DataRow.IsNull("预算编号") Then
            DataTables("外购件采购明细表").DeleteFor("预算编号=\'" & e.DataRow("预算编号") & "\'")
            e.DataRow("当前进展_完成") = False
        Else
            If e.DataRow.GetChildRows("外购件采购明细表").Count > 0
                Dim cnt As Integer = DataTables("外购件采购明细表").Compute("count(预算编号)","预算编号=\'" & e.NewValue  & "\' and (到货数量 = 数量 Or 到货数量 > 数量 or 到货数量 > 0)")
                e.DataRow("当前进展_完成") = (cnt=0)
            End If
        End If
End Select

--  作者:有点蓝
--  发布时间:2024/6/7 15:27:00
--  
Dim cnt As Integer = DataTables("外购件采购明细表").Compute("count(预算编号)","预算编号=\'" & e.NewValue  & "\' and (到货数量 < 数量  or 到货数量 <= 0)")
--  作者:13775189031
--  发布时间:2024/6/8 11:02:00
--  
谢谢