以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  数据迁移问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=185348)

--  作者:jwt
--  发布时间:2023/2/17 17:28:00
--  数据迁移问题
有“总人事库”和“非集团统招人员”两个表,有个按钮,从总人事库移到非集团统招人员,其中,有个“状态”列需要做对应的修改,其它的数据都原封不动的移过去。代码如下。
If CurrentTable.Name = "总人事库" Then
        Dim Result As DialogResult
        Result = Messagebox.Show("确定将此数据迁移至【非统招数据库】 ? ", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.warning)
        If Result = DialogResult.Yes Then
            CurrentTable.Current("状态") = "非统招库"
            Dim dr As DataRow = DataTables("非集团统招人员").AddNew
            For Each dc As DataCol In DataTables("非集团统招人员").DataCols
                dr(dc.Name) = CurrentTable.Current(dc.Name)
            Next
            DataTables("非集团统招人员").Save()
            CurrentTable.Current.Delete()
            CurrentTable.Save()
            MessageBox.Show("已成功迁移数据 !", "提示")
        End If
    Else
        MessageBox.Show("此功能仅可应用于【总人事库】 !", "提示")
End If

但是运行后,“总人事库”表中最后一行数据的“状态”列,也会变成非统招库,他应该是不变化的。求解

--  作者:有点蓝
--  发布时间:2023/2/17 17:32:00
--  
        If Result = DialogResult.Yes Then
dim r as row = CurrentTable.Current
            Dim dr As DataRow = DataTables("非集团统招人员").AddNew
            For Each dc As DataCol In DataTables("非集团统招人员").DataCols
                dr(dc.Name) = r(dc.Name)
            Next
            dr("状态") = "非统招库"
            DataTables("非集团统招人员").Save()
            r.Delete()
            r.Save()
            MessageBox.Show("已成功迁移数据 !", "提示")
        End If

--  作者:jwt
--  发布时间:2023/2/17 18:43:00
--  
找到原因了,是我在全局表事件里有个代码不合适

[此贴子已经被作者于2023/2/17 19:29:35编辑过]