以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]求删除并还原上次变动的代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=5937)

--  作者:舜风
--  发布时间:2010/2/3 21:16:00
--  [求助]求删除并还原上次变动的代码

图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看


当删除上图表二[信息变动表]中的最后一条信息的同时,将表一[基础信息表]中对应的“王菲”信息还原到表二[信息变动表]]中上一条“职务变动”时的信息。

求此代码 ,谢谢


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table






[此贴子已经被作者于2010-2-3 21:34:03编辑过]

--  作者:czy
--  发布时间:2010/2/3 22:11:00
--  
不知我理解了没有,应该是比较简单的事。

Dim dr As DataRow = DataTables("信息变动").Find("Id = \'1\'","聘任时间 Desc",1)
Dim dr1 As DataRow = DataTables("信息变动").Datarows(Tables("信息变动").Position)
Dim pr As DataRow = dr.GetParentrow("基础信息")
pr("职称") = dr1("职称")
Delete当前行

--  作者:czy
--  发布时间:2010/2/3 22:35:00
--  
楼上代码中Find方法的条件忘了改,上面只是测试用的。
--  作者:舜风
--  发布时间:2010/2/3 22:37:00
--  
C版没有理解我的意思

1、关联表中关联列ID

2、表二中的内容可以说是表一的副本(其实是表一的人事信息变动(或叫信息异动)记录表)

3、当删除表二中“王菲”最后的一次变动记录,此时可为Current(也就是行号为3的记录),与此同时将表二中“王菲”上一次变动记录信息(也就是行号为2的记录)覆盖表一中“王菲”的对应信息

目的是:把误操作恢信息复原到上一次真实的信息——也就是我们操作数据时的还原功能 CTRL+C
[此贴子已经被作者于2010-2-3 22:40:17编辑过]

--  作者:czy
--  发布时间:2010/2/3 22:41:00
--  
好象没错吧,这就是恢复啊(将同Id倒数第二条记录中的相关数据写入到父行中)。

pr("职称") = dr1("职称")
……
--  作者:czy
--  发布时间:2010/2/3 22:45:00
--  
测试了下,没看出那里不对,或许我真的没理解。

With Tables("信息变动")
    If .Current IsNot Nothing Then
        Dim dr As DataRow = DataTables("信息变动").Find("Id = \'" & .Current("Id") & "\'","聘任时间 Desc",1)
        Dim dr1 As DataRow = DataTables("信息变动").Datarows(.Position)
        Dim pr As DataRow = dr.GetParentrow("基础信息")
        pr("职称") = dr1("职称")
        .Current.Delete
    End If
End With

--  作者:舜风
--  发布时间:2010/2/3 23:24:00
--  
我明白C版的意思

可我却还没表达清楚图片点击可在新窗口打开查看

我是说:如何能直接操作窗口表二中的当前选择行(窗口表二绑定的表是[基础信息.信息变动] 非 Tables("信息变动")),所以用以上的代码操作窗口表二所见的当前行,其实并非是Tables("信息变动")中的当前行

不知是否能明白了?
[此贴子已经被作者于2010-2-3 23:28:30编辑过]

--  作者:舜风
--  发布时间:2010/2/3 23:47:00
--  
帮助里好像找不到关于自定义窗口中“关联表”操作的内容图片点击可在新窗口打开查看

而系统窗口列表中的“关联表”表却能做当前行的操作——郁闷
[此贴子已经被作者于2010-2-3 23:50:35编辑过]

--  作者:e-png
--  发布时间:2010/2/4 1:22:00
--  
 好难懂哦,最好贴出你删除还原后截图来看看。