以下是引用红叶在2011-2-23 14:38:00的发言:
但是在删除明表行时,如果原"状态"为"部分已核销"时,不能准确的给出"状态"信息
你可以在订单明细的DataRowDeleting设置代码:
Dim pr As DataRow = e.DataRow.GetParentRow("订单")
If pr IsNot Nothing Then
Dim drs As List(of DataRow) = pr.GetChildRows("订单明细")
Dim cnt As Integer
For Each dr As DataRow In drs
If dr("核销标记") = True And dr("_Identify") <> e.DataRow("_Identify") Then
cnt = cnt +1
End If
Next
If cnt = drs.Count - 1 Then
pr("状态") = "全部已核销"
ElseIf cnt = 0 Then
pr("状态") = "全部未核销"
Else
pr("状态") = "部分已核销"
End If
End If