Foxtable(狐表)用户栏目专家坐堂 → [原创请教:]如何将每列的最新数据获取出来,形成一个最新的列表


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

主题:[原创请教:]如何将每列的最新数据获取出来,形成一个最新的列表

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/8/2 11:37:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:由变动情况表生成最新情况表的设计方法求助.table


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


加好友 发短信
等级:小狐 帖子:324 积分:2698 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2013/8/2 11:50:00 [只看该作者]

谢ISY,你讲得很对:

1、我原先是想把人员信息,一分为二。一个记录相对固定不变的信息(《人员固定信息表》),另一个记录有可能变动的信息(《人员变动信息表》)

2、《人员变动信息表》,如你所说,主要作用是跟踪详细的变动过程,便于查询过去的情况(这个历史记录应该非常重要)。

3、但又时常需要提供某个人最新的情况,所以又希望能从《人员变动信息表》中取得此人的最新情况,形成一条此人的最新记录。

 

想问一下ISY,你提供的思路,是不是使用Datacolchange事件来实现?


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


加好友 发短信
等级:小狐 帖子:324 积分:2698 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2013/8/2 12:00:00 [只看该作者]

非常感谢ISY。

现在有个问题,如果我对历史信息做了更正,那《人员信息表》的最新信息又变成了修改后的历史信息了。这个问题如何解决,请ISY再指教。

 


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


加好友 发短信
等级:小狐 帖子:324 积分:2698 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2013/8/2 12:04:00 [只看该作者]

能不能做个“刷新”按钮或菜单,能把每个人的信息“刷新”为最新。代码如果写,还望恩赐。

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/8/2 13:00:00 [只看该作者]

1、人员信息表,是非常基础的表,不是什么人都能看到,更不是什么人都能修改;引用这个表的代码非常多,一招不慎,满盘皆输。

     即使某个人员离开本单位,他的信息也不能删除,而是在一个“停用”的逻辑列中打上钩。

     由于人员信息变动表的每一次变动都反应到人员信息表中,人员信息变动表的操作,也需要专门的权限。

2、人员信息变动表,记录变动的过程,只要保存,任何人都不允许修改、删除,不然还算得上跟踪吗?要修改相关人员信息,就新增一行。


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


加好友 发短信
等级:小狐 帖子:324 积分:2698 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2013/8/2 13:32:00 [只看该作者]

你提到的:

第1点,我明白。

第2点,如果是正常的变动,新增一行就可;如果是发现以前输入的信息有错误,而将原来的那行信息进行更正,不用新增行而直接更正,但更正后,因修改了单元格的值,触发了事件,使《人员信息表》中相关字段的内容进行了联动更新,但因仅仅是更正历史信息,不影响此人的最新的信息,此时这个联动更新又是不希望发生的。这种情况如何避免?


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/8/2 13:55:00 [只看该作者]

历史错了,就错了,篡改是不行的。

只要人员信息表对,就行。


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/8/2 14:12:00 [只看该作者]

呵呵,我想起来了,你这个人员变动信息表,目的是记录人员变动,而不是对人员信息变动的操作。

If e.DataRow.RowState = DataRowState.Added Then
    Dim dr As DataRow = DataTables("人员固定信息表").Find("姓名 = '" & e.DataRow("姓名") & "'")
    Select Case e.DataCol.Name
        Case = "职务"
            dr("职务") = e.DataRow("职务")
    End Select
End If


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


加好友 发短信
等级:小狐 帖子:324 积分:2698 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2013/8/2 14:45:00 [只看该作者]

嗯,加上一个条件判断后,现在情况有点不一样了。

但还有这样一个问题,要烦请ISY了:

1、如果修改的是最后一个ADD行,那么对应此行的关联行会联动更新,

2、但:

   1)如果我修改了第5行记录的某个字段值,这个第5行不是最后一行,但这个第5行对某人来说,这行的字段信息却又是最新的,这时修改第5行,希望对应的关联行会联动更新,但现在的代码还不能实现。

 


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/8/2 14:57:00 [只看该作者]

新增行不一定就是最后一行,只要新增的未保存,不管多少行,都仍然是新增行。


 回到顶部
总数 51 上一页 1 2 3 4 5 6 下一页