以下代码有一个问题,如果“得分”列中没有成绩分数(比赛开始前“得分”列是没有分数的),执行任何一个操作都会出现错误提示,请问代码如何修改?
Dim da As DataTable = DataTables("学生团体总分")
Dim da_source As DataTable =
DataTables("比赛得分")
da.DataRows.Clear
Dim dwa As List(Of String) =
da_source.GetUniqueValues ("队别 <> '教工组'", "单位" )
For Each dw As String In dwa
Dim ndr As DataRow =
da.AddNew
ndr("单位") = dw
ndr("总分") = da_source.Compute("sum(得分)", "单位 = '" & dw & "'")
Next
Dim dra As List(Of DataRow) =
da.Select("", "总分 desc")
dra(0)("名次") = 1
For i As Integer = 1 To dra.Count - 1
If dra(i)("总分") = dra(i-1)("总分") Then
dra(i)("名次") = dra(i-1)("名次")
Else
dra(i)("名次") = i+1
End If
Next
Tables("学生团体总分").Sort = "名次"
Dim db As DataTable = DataTables("教工团体总分")
Dim db_source As DataTable = DataTables("比赛得分")
db.DataRows.Clear
Dim dwb As List(Of String) =
db_source.GetUniqueValues ("队别 = '教工组'", "单位" )
For Each dw As String In dwb
Dim ndb As DataRow =
db.AddNew
ndb("单位") = dw
ndb("总分") = db_source.Compute("sum(得分)", "单位 = '" & dw & "'")
Next
Dim drb As List(Of DataRow) =
db.Select("", "总分 desc")
drb(0)("名次") = 1
For i As Integer = 1 To drb.Count - 1
If drb(i)("总分") = drb(i-1)("总分") Then
drb(i)("名次") = drb(i-1)("名次")
Else
drb(i)("名次") = i+1
End If
Next
Tables("教工团体总分").Sort = "名次"
此主题相关图片如下:截图02.jpg
