Foxtable(狐表)用户栏目专家坐堂 → 监考排考


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

主题:监考排考

帅哥哟,离线,有人找我吗?
lin_hailun
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/28 9:04:00 [显示全部帖子]

 楼主,看了下你的代码,猜不透你代码要实现的逻辑。

 对于生成的 准考证号、考试、座位号、随机值,你是怎样计划的?比如说说 你要达到哪种需求。

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/28 9:25:00 [显示全部帖子]

再问一下,考室、座位号 与 班级 有没有关系,还有就是 随机值 怎么取?
[此贴子已经被作者于2012-9-28 9:25:30编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/28 9:43:00 [显示全部帖子]

 其实我想问的是,考室号、座位号,跟班级号有没有什么特别的关系。比如,同一班的学生,座位号不连续.....

 还有就是,最后一列随机数,是必要的吗?
[此贴子已经被作者于2012-9-28 9:43:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lin_hailun
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/28 10:32:00 [显示全部帖子]

 下面的代码应该可以,两次随机……

If Forms("排考室考号").Controls("NumericComboBox1").Value <= 0 Then
    MessageBox.Show("考室不能小等于零值!","中止操作",MessageBoxButtons.OK,MessageBoxIcon.Exclamation)
Else
    DataTables("排考室考号").DataRows.Clear()
    Dim f As New Filler
    f.SourceTable = DataTables("成绩表")
    f.SourceCols = "班级,姓名,学号"
    f.DataTable = DataTables("排考室考号")
    f.DataCols = "班级,姓名,准考证号"
    f.ExcludeExistValue = True
    f.Fill  

    For Each r As Row In CurrentTable.Rows
        r("随机值") = Rand.Next(10000)
    Next
    CurrentTable.Sort = "随机值"

    Dim rooms As Integer = e.Form.Controls("NumericComboBox1").Value
    For Each r As Row In CurrentTable.Rows
        r("准考证号") = "078309" & r("准考证号")
        r("考室") = Format(Rand.Next(rooms) + 1, "00")
        Dim seat = CurrentTable.Compute("Max(座位号)", "考室 = '" & r("考室") & "'") + 1
        r("座位号") = Format(seat, "000")
    Next
    CurrentTable.Sort = "考室, 座位号"
End If

 回到顶部