以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 遍历勾选的行,分配数据后新增分配记录不正常(已解决)! (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=132066) |
-- 作者:lunengcheng -- 发布时间:2019/3/13 10:27:00 -- 遍历勾选的行,分配数据后新增分配记录不正常(已解决)! 各位老师前辈,请教一个问题,我又一个主表,现在选中主表中的行后,将这些行分配给需要的人,分配的过程其实就是更改相关的字段,然后我希望没更改一行的同时,在分配记录表里面新增一条记录,记录当前行的信息,我设置了下面的代码: \'\'判断是否选中数据 Dim t As Table = Tables("学员开发_Table1") Dim d As Table = Tables("学员开发数据分配_Table1") Dim count = t.Compute("count(select)", "Select = true") If count = 0 Then MessageBox.show("未选中任何数据行, 请选中数据行后再操作!") Else Dim jszt As String = e.Form.Controls("接收状态").value Dim fgs As String = e.Form.Controls("分配到分公司").value Dim bm As String = e.Form.Controls("分配到部门").value Dim fz As String = e.Form.Controls("分配到分组").value Dim ry As String = e.Form.Controls("分配到人员").value Dim zh As String = e.Form.Controls("分配到账号").value For i As Integer = t.Rows.count-1 To 0 Step -1 Dim r = t.Rows(i) If r("Select")=True Then \'count += 1 r("接收状态")= jszt r("分配到分公司")= fgs r("分配到部门")= bm r("分配到分组")= fz r("分配到人员")= ry r("创建人")= zh r("分配人姓名")= User_Name r("分配时间")= Date.Now r.Save Dim dr As DataRow dr = DataTables("学员开发数据分配_Table1").AddNew() dr("分配状态") = r("分配状态") dr("分配到分公司") = fgs dr("分配到部门") = bm dr("分配到分组") = fz dr("分配到人员") = ry dr("分配人姓名") = User_Name dr("分配时间") = Date.Today dr("前次创建人") = r("创建人") dr("前次创建时间") = r("创建时间") dr("前次编辑人") = r("编辑人") dr("前次编辑时间") = r("编辑时间") End If Next End If 上面这段代码,如果红色部分的代码放在蓝色的End If之前,则新增的分配记录是正常的,但是主表选中的行就没法正常分配,也就是更改相关的字段,如果放在蓝色的End If后面,主表选中的行可以正常分配,但是会新增很多条分配记录,而不是一对一新增,弄了两天,不知道问题在上面地方,希望老师前辈们指点一下,多谢了! [此贴子已经被作者于2019/3/13 11:16:36编辑过]
|
-- 作者:有点甜 -- 发布时间:2019/3/13 10:34:00 -- 1、你把select列勾选了没有?必须勾选才行的e
2、代码看不错问题,上传具体实例测试。 |
-- 作者:lunengcheng -- 发布时间:2019/3/13 11:18:00 -- 已经解决,分享一下,把主记录字段修改和记录表新增都分开放在下面if代码里面,前面的是一起放在一个里面,会导致混乱! If r("Select")=True Then 代码 End IF
[此贴子已经被作者于2019/3/13 11:19:17编辑过]
|