Foxtable(狐表)用户栏目专家坐堂 → [求助]如何记录修改日志?


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

主题:[求助]如何记录修改日志?

美女呀,离线,留言给我吧!
rophy0952
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
[求助]如何记录修改日志?  发帖心情 Post By:2014/11/5 17:12:00 [显示全部帖子]

欲在表中设一列为行记录的修改日志,比如:A列的1值改为2值,B列的2值改为4值。请问类似于这样的日志该如何实现呢?

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/5 17:25:00 [显示全部帖子]

谢谢两位老师的指导,这个修改日志,主要是用在审核的时候进行的修改,也就是说,第一次录入数据的时候,不需要记录日志。这样的话,要怎样加条件上去呢?
通过用户来限制行吗?

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/5 17:49:00 [显示全部帖子]

嗯,好办法。另外有什么方式可以判断手动录入和自动生成的吗?因为有一些列的值是自动生成的,如果那些也记录在日志中的话,内容会比较多。我刚才把不想记录的列用  e.DataCol.Name <> "**列" 的方式进行分离,列数有点多,不知有没有更便捷的方法呢?

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/5 18:13:00 [显示全部帖子]

写到afteredit事件后,提示:编译错误:“datacol”不是“rowcoleventargs”的成员

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/5 21:29:00 [显示全部帖子]

"OldValue"不是“rowcoleventargs”的成员

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/5 23:08:00 [显示全部帖子]

谢谢有点甜,这样写基本上可以达到我想要到功能了。只是我这个表格,有一些列在初次录入时,可以为空。但在审核时,可能会根据实际情况,在空白列添加一些数据进去。这样的话,判断句vars("oldvalue")<>nothing ,可能就无法将后添加的数据加入到日志当中。如图:

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20141105230913.png
图片点击可在新窗口打开查看


 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/6 8:32:00 [显示全部帖子]

有点甜:你那么晚还在回复,真敬业呀!我也试过把vars("oldvalue")<>nothing去掉,但去掉后,无论是第一次录入还是审核时录入的数据,都会记录在日志中。也尝试通过用户来判断,如:If _Username = "XXX" then ,然后用XXX的用户登录后修改时,日志列无任何内容。

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/6 9:27:00 [显示全部帖子]

如果用权限或用户来判断,可以吗?因为我只想记录修改的人修改过什么?不想过多的内容占用空间。

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/6 14:54:00 [显示全部帖子]

这样写的代码,有问题吗?当前用户也是“陈碧霞”,当前用户修改了内容之后,修改日志那里却是空白。
If e.Col.Name <> "修改日志" Then
    If _username = "陈碧霞" Then
        e.Row("修改日志") &= iif(e.Row.IsNull("修改日志"), "", vbcrlf) & e.Col.Name & "  " & vars("oldvalue") & "  " & e.Row(e.Col.name)
    End If
End If


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20141106145158.png
图片点击可在新窗口打开查看


 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/11/6 15:22:00 [显示全部帖子]

还是没有反映,详见例子:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:问题.foxdb


[此贴子已经被作者于2014-11-6 15:24:21编辑过]

 回到顶部
总数 16 1 2 下一页