此主题相关图片如下:qq图片20200708204218.png

此主题相关图片如下:qq图片20200708204313.png

密码:888888 对阵表窗口中的综合组保存代码遇到第3轮0桌数据,综合组表数据是正确的,但保存到比赛积表分,0桌的积分和桌号都不是综合表上的数据,全乱了,请教如何补漏这洞?
Dim qsmc As WinForm.ComboBox = e.Form.Controls("棋赛名称")
Dim di1 As String = qsmc.Value
Dim m As WinForm.TextBox = e.Form.Controls("第几轮")
Dim di2 As String = m.Value
Dim bsrq As WinForm.DateTimePicker = e.Form.Controls("rq")
Dim di3 As Date = bsrq.Value
Dim fz As WinForm.ComboBox = e.Form.Controls("fenzhu")
Dim Str As String = fz.Value
For Each nr As Row In Tables("综合组").Rows
Dim dr1 As DataRow = DataTables("比赛积分").SQLfind("[棋赛名称] = '" & di1 & "' And [第几轮比赛] = '" & di2 & "' And [分组] = '" & Str & "' And [编号] = '" & nr("红方_编号") & "'")
If dr1 IsNot Nothing Then
If di3 <> Nothing Then
dr1("日期") = di3
End If
dr1("桌号") = nr("桌号")
dr1("红黑方") = "红方"
dr1("积分") = nr("当前局成绩_红方")
If di2 >= 2 Then
dr1("本轮止累计积分") = dr1("上轮止累计积分") + dr1("积分")
dr1("本次止曾交战对手累计积分") = dr1("曾交战对手累计积分") + DataTables("比赛积分").SQLCompute("SUM(上轮止累计积分)","[棋赛名称] = '" & di1 & "'And [第几轮比赛] = '" & di2 & "' And [分组] = '" & Str & "' And [排序] = " & dr1("排序") & " And [编号] <> '" & dr1("编号") & "'And [姓名] <> '" & dr1("姓名") & "'")
End If
dr1.Save
End If
Dim dr2 As DataRow = DataTables("比赛积分").SQLfind("[棋赛名称] = '" & di1 & "' And [第几轮比赛] = '" & di2 & "' And [分组] = '" & Str & "' And [编号]='" & nr("黑方_编号") & "'")
If dr2 IsNot Nothing Then
If di3 <> Nothing Then
dr2("日期") = di3
End If
dr2("桌号") = nr("桌号")
dr2("红黑方") = "黑方"
dr2("积分") = nr("当前局成绩_黑方")
If di2 >= 2 Then
dr2("本轮止累计积分") = dr2("上轮止累计积分") + dr2("积分")
dr2("本次止曾交战对手累计积分") = dr2("曾交战对手累计积分") + DataTables("比赛积分").SQLCompute("SUM(上轮止累计积分)","[棋赛名称] = '" & di1 & "'And [第几轮比赛] = '" & di2 & "' And [分组] = '" & Str & "' And [排序] = " & dr2("排序") & " And [编号] <> '" & dr2("编号") & "' And [姓名] <> '" & dr2("姓名") & "'")
End If
dr2.Save
End If
Next
Dim drs As List(of DataRow) = DataTables("比赛积分").SQLSelect("[棋赛名称] = '" & di1 & "'And [第几轮比赛] = '" & di2 & "' And [分组] = '" & Str & "'","","本轮止累计积分 Desc,本次止曾交战对手累计积分 Desc")
Dim i1 As Integer = 1
For n As Integer = 0 To drs.Count - 1 '遍历所有行
If n > 0 AndAlso drs(n)("本轮止累计积分") = drs(n-1)("本轮止累计积分") AndAlso drs(n)("本次止曾交战对手累计积分") = drs(n-1)("本次止曾交战对手累计积分") Then
drs(n)("名次") = drs(n-1)("名次")
Else
drs(n)("名次") = i1
i1 + = 1
End If
Next
DataTables("比赛积分").SQLUpdate(drs)
DataTables("比赛积分").load