Foxtable(狐表)用户栏目专家坐堂 → 通过临时列积分排名次


  共有4018人关注过本帖平板打印复制链接

主题:通过临时列积分排名次

美女呀,离线,留言给我吧!
采菊东篱下
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
通过临时列积分排名次  发帖心情 Post By:2020/7/6 20:40:00 [只看该作者]

对阵表窗口综合组保存按钮我写了这代码,
图片点击可在新窗口打开查看此主题相关图片如下:排名.png
图片点击可在新窗口打开查看
应红色标注出错,请教应怎么写?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:象棋排赛(2020706).foxdb

密码:888888
        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

        If di2 >= 2
            If DataTables("比赛积分").DataCols.Contains("辅助计算") = False Then
                DataTables("比赛积分").DataCols.add("辅助计算", Gettype(Integer))
            End If
            Dim drs1 As List(of DataRow)  = DataTables("比赛积分").SQLSelect("[棋赛名称] = '" & di1 & "' And [第几轮比赛] = '" & di2 & "' And [分组] = '" & Str & "'","","上轮止累计积分 Desc,曾交战对手累计积分 Desc")
            For Each dr1 As DataRow In drs1
                dr1("辅助计算") = dr1("上轮止累计积分") + dr1("曾交战对手累计积分")
            Next
            Dim bjs As List(Of String) = DataTables("比赛积分").SQLGetValues("姓名","[棋赛名称] = '" & di1 & "' And [第几轮比赛] = '" & di2 & "' And [分组] = '" & Str & "'","上轮止累计积分 Desc,曾交战对手累计积分 Desc")
            For Each bj As String In bjs
                Dim drs2 As List(Of DataRow) = DataTables("比赛积分").Select("[姓名] = " & bj, "辅助计算 DESC")
                For n As Integer = 0 To drs2.Count - 1 '遍历所有行
                    If n > 0 AndAlso drs2(n)("辅助计算") = drs2(n-1)("辅助计算") Then '如果总分和上一行相同
                        drs2(n)("名次") = drs2(n-1)("名次") '则排名等于上一行
                    Else
                        drs2(n)("名次") = n + 1 '设置排名
                    End If
                Next
            Next
        End If


 回到顶部
总数 31 1 2 3 4 下一页