Foxtable(狐表)用户栏目专家坐堂 → 成绩排名


  共有2186人关注过本帖树形打印复制链接

主题:成绩排名

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


加好友 发短信
等级:二尾狐 帖子:530 积分:4613 威望:0 精华:0 注册:2018/3/24 18:04:00
成绩排名  发帖心情 Post By:2018/10/25 15:02:00 [显示全部帖子]

成绩排名的代码如下:
If MainTable.name = "排名" Then
    Dim bjs As List(Of String) = DataTables("排名").GetValues("班级") '获得所有班级名称,保存在集合中
    For Each bj As String In bjs
        '获得该班级的全部行,按语文_分数降序排序
        Dim drs As List(Of DataRow) = DataTables("排名").Select("[班级] = " & bj, "语文_分数 DESC")
        MessageBox.Show(1)
        For n As Integer = 0 To drs.Count - 1 '遍历所有行
            If n > 0 AndAlso drs(n)("语文_分数") = drs(n-1)("语文_分数") Then '如果语文_分数和上一行相同
                drs(n)("语文_排名") = drs(n-1)("语文_排名") '则排名等于上一行
            Else
                drs(n)("语文_排名") = n + 1 '设置排名
            End If
        Next
    Next
End If

报错如下:
.NET Framework 版本:2.0.50727.5420
Foxtable 版本:2018.10.9.1
错误所在事件:项目,MainTableChanged
详细错误信息:
语法错误:“=”运算符后缺少操作数。


图片点击可在新窗口打开查看此主题相关图片如下:表结构.png
图片点击可在新窗口打开查看




[此贴子已经被作者于2018/10/25 15:07:28编辑过]

 回到顶部
美女呀,离线,留言给我吧!
lfz123
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:530 积分:4613 威望:0 精华:0 注册:2018/3/24 18:04:00
成绩排名结果有错误  发帖心情 Post By:2018/10/25 16:30:00 [显示全部帖子]

排名不是想要的结果

图片点击可在新窗口打开查看此主题相关图片如下:结果出错.png
图片点击可在新窗口打开查看
代码如下:
If MainTable.name = "排名" Then '语文成绩排名
    Dim bjs As List(Of String) = DataTables("排名").GetValues("班级") '获得所有班级名称,保存在集合中
    For Each bj As String In bjs
        '获得该班级的全部行,按语文_分数降序排序
        Dim drs As List(Of DataRow) = DataTables("排名").Select("[班级] = '" & bj & "'", "语文_分数 DESC")
        For n As Integer = 0 To drs.Count - 1 '遍历所有行
            If n > 0 AndAlso drs(n)("语文_分数") = drs(n-1)("语文_分数") Then '如果语文_分数和上一行相同
                drs(n)("语文_排名") = drs(n-1)("语文_排名") '则排名等于上一行
            Else
                drs(n)("语文_排名") = n + 1 '设置排名
            End If
        Next
    Next
End If



 回到顶部