以文本方式查看主题

-  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=49835)

--  作者:737182811
--  发布时间:2014/4/24 18:17:00
--  [求助]见鬼了,为啥会这样?
两段代码在两个表中的表现完全不一样。
表1:  运行正常
表2: 生成的数据来自该表第1行,而不是选中的current行
表1代码

With Tables("任务追踪表")
    If .Current IsNot Nothing Then
        Dim r As Row = .current
        .AddNew()
        .current("任务主题") = r("任务主题")
        .current("责任部门") = r("责任部门")
        .current("任务内容") = r("任务内容")
        .current("责任部门") = r("责任部门")
        .current("执行人") = r("执行人")
        .current("关联单号") = r("任务单号")
        .current("任务类别") = r("任务类别")
    End If
End With

表2代码
Tables("质量成本台账").DataTable.Load(False)
If Tables("质量成本台账").current IsNot Nothing Then
    Dim r1 As Row = Tables("质量成本台账").current
    Tables("质量成本台账").AddNew()
    Dim r As Row = Tables("质量成本台账").current
    r("类别") = "索赔供应商"
    r("关联单号") = r1("单号")
    r("事由") = r1("事由")
End If





--  作者:737182811
--  发布时间:2014/4/24 18:19:00
--  
唯一的差别是:表2我使用了同表关联,表1没有。
补充一下:我用命令窗口来显示current行的某列数据,居然又是正常选中的。
[此贴子已经被作者于2014-4-24 18:22:35编辑过]

--  作者:737182811
--  发布时间:2014/4/24 18:26:00
--  
找到原因了,Tables("质量成本台账").DataTable.Load(False)
这句代码搞鬼,我决定删除了 。