Foxtable(狐表)用户栏目专家坐堂 → 为何不是覆盖


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

主题:为何不是覆盖

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/10 21:42:00 [显示全部帖子]

Dim tb As Table = Tables("任课情况_table1")
Dim rs As List(of Row) = Tables("任课情况_table1").GetCheckedRows
Dim mm As String
If rs.Count > 0 Then '如果存在符合条件的行
    Dim t3 As String = e.Form.Controls("textbox3").text
    If t3 > ""
        mm = t3
    Else
        mm = "888"
    End If
    messagebox.show("你为班主任统一设置的初始密码为:  " & t3 & "  请记住并要求班主任自已修改","提示",MessageBoxButtons.OK)
    Dim r1 As DataRow
    For Each r As Row In tb.getcheckedrows
        If r("班主任") > ""
            r1 = DataTables("用户").sqlFind("group = '" & r("学校名称").trim() & "'' And 班级 = '" & r("班级").trim() & "'")
            If r1 Is Nothing Then r1 = DataTables("用户").AddNew()
            r1("name") = r("班主任")
            r1("password")= mm
            r1("group") = r("学校名称").trim()
            r1("角色") = "班主任"
            r1("姓名")= r("班主任")
            r1("是否可用") = True
            r1("班级") = r("班级").trim()

            r1.Save 'sqlfind的行,要马上保存
        End If
        r.Checked = False
    Next
    If DataTables("用户").HasChanges
        DataTables("用户").save()    '这段可以不写
    End If
Else
    messagebox.show("请注意,你没有勾选要设置帐号的班主任记录","提示",MessageBoxButtons.OK)
End If


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 1:56:00 [显示全部帖子]

以下是引用刘林在2017/5/10 21:47:00的发言:
还是一个效果呢

 

做个例子发上来测试。


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 14:19:00 [显示全部帖子]

 请贴出开发者密码,否者无法测试。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 15:16:00 [显示全部帖子]

 测试,并没有问题。

 

1、你用sqlFind查询的行,修改后,数据是修改在数据库那里的,你可以直接去数据库查看;

 

     或者是重新load表格;

 

     或者是,你用find查找,找不到再用sqlfind查找。

 

2、如果是重复添加行的问题,说明条件 "group = '" & r("学校名称").trim() & "'' And 班级 = '" & r("班级").trim() & "'" 有问题,当学校名称、班级为空的时候,要用is null查找,空字符串找不到对应的行。


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 16:22:00 [显示全部帖子]

 

[此贴子已经被作者于2017/5/11 16:29:28编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 16:39:00 [显示全部帖子]

汗,小问题,改一下代码

 

Dim r1 As DataRow = DataTables("用户").sqlFind("[group] = '" & r("学校名称").trim() & "' And 班级 = '" & r("班级").trim() & "'")


 

group是关键字,尽量不要用这个做列名。原来代码那里多写了单引号''

[此贴子已经被作者于2017/5/11 16:39:33编辑过]

 回到顶部