Foxtable(狐表)用户栏目专家坐堂 → 随机红、黑方


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

主题:随机红、黑方

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


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
随机红、黑方  发帖心情 Post By:2020/6/16 17:09:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:象棋排赛202061605.foxdb

密码:888888
第2轮开始,对阵表没有随机生成红、黑方,我已经在比赛积分表安上轮积分排除不参加此轮比赛的人后,从高到低生成一列排序,我的公式不是很对,ia要减去当前逐行统计的不参加此轮比赛人个数,再排序,这样同赛、同轮次,同排序对应的编号就可作为随机红、黑方参数。
ElseIf di2 = 2 And cnt = 0 Then
    Dim drs2 As List(of DataRow) = DataTables("比赛积分").SQLSelect("[棋赛名称] = '" & di1 & "'And [第几轮比赛] = '" & a & "'","","积分 Desc")
    For ia As Integer = 0 To drs2.Count - 1
        dr = DataTables("比赛积分").AddNew
        Dim dts1 As DataRow = DataTables("基本信息").SQLFind("[棋赛名称] = '" & di1 & "'And [身份] = '参赛人' And [缺赛轮号] like '%" & di2 & "%' and [编号] = '" & drs2(ia)("编号") & "'")
        If dts1 IsNot Nothing  Then
            dr("排序") = Nothing
        Else
            dr("排序") = math.Ceiling((i2+1) \ 2) '待解,这里要减去缺赛人个数
        End If
        dr("棋赛名称") = di1
        dr("第几轮比赛") = di2
        dr("日期") = di3
        dr("编号") = drs2(ia)("编号")
        dr("姓名") = drs2(ia)("姓名")
        dr("上轮止累计积分") = drs2(ia)("积分")
        dr("曾交战对手累计积分") = DataTables("比赛积分").SQLCompute("SUM(积分)","[桌号] = " & drs2(ia)("桌号") & "And ([编号] <> '" & drs2(ia)("编号") & "'or [姓名] <> '" & drs2(ia)("姓名") & "')")
        i2 += 1
    Next
    DataTables("比赛积分").Save()
    DataTables("对阵表").DataRows.Clear
    Dim drs3 As List(of DataRow) = DataTables("比赛积分").SQLSelect("[棋赛名称] = '" & di1 & "'And [第几轮比赛] = '" & di2 & "'","","排序,上轮止累计积分 Desc,曾交战对手累计积分")
    For ib As Integer = 0 To drs3.Count - 1 Step 2
        If ib+1 <= drs3.Count - 1 '没有随机红、黑方
            Dim nr As DataRow = DataTables("对阵表").AddNew
            nr("桌号") = drs3(ib)("排序")
            nr("红方_编号") = drs3(ib)("编号")
            nr("红方_姓名") = drs3(ib)("姓名")
            nr("黑方_编号") = drs3(ib+1)("编号")
            nr("黑方_姓名") = drs3(ib+1)("姓名")
            nr("红方_上轮止累计积分") = drs3(ib)("上轮止累计积分")
            nr("红方_曾交战对手累计积分") = drs3(ib)("曾交战对手累计积分")
            nr("黑方_上轮止累计积分") = drs3(ib+1)("上轮止累计积分")
            nr("黑方_曾交战对手累计积分") = drs3(ib+1)("曾交战对手累计积分")
        End If
    Next

[此贴子已经被作者于2020/6/16 21:02:58编辑过]

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


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/16 17:32:00 [只看该作者]

这个意思?

ElseIf di2 = 2 And cnt = 0 Then
    Dim drs2 As List(of DataRow) = DataTables("比赛积分").SQLSelect("[棋赛名称] = '" & di1 & "'And [第几轮比赛] = '" & a & "'","","积分 Desc")
dim ii2 as integer = 1
    For ia As Integer = 0 To drs2.Count - 1
        dr = DataTables("比赛积分").AddNew
        Dim dts1 As DataRow = DataTables("基本信息").SQLFind("[棋赛名称] = '" & di1 & "'And [身份] = '参赛人' And [缺赛轮号] like '%" & di2 & "%' and [编号] = '" & drs2(ia)("编号") & "'")
        If dts1 IsNot Nothing  Then
            dr("排序") = Nothing
        Else
            dr("排序") = ii2 
ii2 += 1
        End If
        dr("棋赛名称") = di1
        dr("第几轮比赛") = di2
        dr("日期") = di3
        dr("编号") = drs2(ia)("编号")
        dr("姓名") = drs2(ia)("姓名")
        dr("上轮止累计积分") = drs2(ia)("积分")
        dr("曾交战对手累计积分") = DataTables("比赛积分").SQLCompute("SUM(积分)","[桌号] = " & drs2(ia)("桌号") & "And ([编号] <> '" & drs2(ia)("编号") & "'or [姓名] <> '" & drs2(ia)("姓名") & "')")
        i2 += 1
    Next

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


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/6/16 17:41:00 [只看该作者]

这是跳过了不参赛者重新排序吗?

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


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/6/16 18:09:00 [只看该作者]

表怎么被锁定了,无法解锁!

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


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/16 19:52:00 [只看该作者]


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


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/6/16 21:04:00 [只看该作者]

我都试过了无法解锁才请教你的,不知哪出问题了。

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


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/16 21:55:00 [只看该作者]

截图说明,什么地方被锁?

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


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/6/16 22:20:00 [只看该作者]

比赛积分表锁定了,无法解锁。

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


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/16 22:33:00 [只看该作者]

这里用法?http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=151139&page=2

dr.Locked  = True 自己写的神奇的代码自己不知道么?解锁行:http://www.foxtable.com/webhelp/topics/0111.htm

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


加好友 发短信
等级:八尾狐 帖子:1881 积分:10374 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2020/6/16 22:34:00 [只看该作者]

我想应该是对阵表窗口锁定按钮和解锁按钮中的代码出了问题,我用备份重新造了一下,按锁定按钮不能锁定,原选已锁定,按解锁按钮自然也无反应。

 回到顶部
总数 12 1 2 下一页