Foxtable(狐表)用户栏目专家坐堂 → 如果数据被人修改过,怎么突出来


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

主题:如果数据被人修改过,怎么突出来

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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
如果数据被人修改过,怎么突出来  发帖心情 Post By:2016/5/10 13:59:00 [只看该作者]

如果我一个table里面数据被人修改了,怎么设置可以显示出来,修改日期,修改人是谁?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/10 14:20:00 [只看该作者]

 你可以加一列,记录修改的信息。DataColChanged事件

 

If e.DataCol.name <> "log"  Then
    If e.DataRow.IsNull("log") Then
        e.DataRow("log") = Date.now & " " & user.name & " 把【" & e.DataCol.Name & "】列内容从'" & e.OldValue & "'修改成 '" & e.NewValue & "'"
    Else
        e.DataRow("log") = vbcrlf & Date.now & " " & user.name & " 把【" & e.DataCol.Name & "】列内容从'" & e.OldValue & "'修改成 '" & e.NewValue & "'"
    End If
End If


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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
  发帖心情 Post By:2016/5/10 14:40:00 [只看该作者]

如图,单价 和 总额 发生了修改, 根据你的程序怎么修改?
图片点击可在新窗口打开查看此主题相关图片如下:修改表格.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
  发帖心情 Post By:2016/5/10 14:47:00 [只看该作者]

我发了个例子,你能再帮我看下吗

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/10 14:52:00 [只看该作者]

If e.DataCol.name = "单价" OrElse e.DataCol.Name = "总额"  Then
    If e.DataRow.IsNull("log") Then
        e.DataRow("log") = Date.now & " " & user.name & " 把【" & e.DataCol.Name & "】列内容从'" & e.OldValue & "'修改成 '" & e.NewValue & "'"
    Else
        e.DataRow("log") = vbcrlf & Date.now & " " & user.name & " 把【" & e.DataCol.Name & "】列内容从'" & e.OldValue & "'修改成 '" & e.NewValue & "'"
    End If
End If


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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
程序能跑,但是还有两个问题  发帖心情 Post By:2016/5/10 15:39:00 [只看该作者]

1、只能第一次修改某单元格时, "Log列"能显示修改人和时间,内容;但是再这行的某单元格修改之后,“Log列”信息消失了,再输入无反应。
2、"Log"列内容字符太多,一个单元格里面看不完,能不能像EXCEL单元格一样,点击某单元格,在上方有显示槽可以看多出单元格的字符。
图片点击可在新窗口打开查看此主题相关图片如下:问题.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/10 15:44:00 [只看该作者]

代码要改一改

 

If e.DataCol.name = "单价" OrElse e.DataCol.Name = "总额"  Then
    If e.DataRow.IsNull("log") Then
        e.DataRow("log") = Date.now & " " & user.name & " 把【" & e.DataCol.Name & "】列内容从'" & e.OldValue & "'修改成 '" & e.NewValue & "'"
    Else
        e.DataRow("log") &= vbcrlf & Date.now & " " & user.name & " 把【" & e.DataCol.Name & "】列内容从'" & e.OldValue & "'修改成 '" & e.NewValue & "'"
    End If
End If

 

1、你把行拉高可以看到内容的。你也可以把log列改成备注列,会多一个列窗口,也可以看到信息。

 

2、可以在click事件设置自动行高 ,Click事件

 

If e.Col.name = "log" Then
    e.Table.AutoSizeRow(e.Row.index)
End If


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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
代码没问题,还有一个备注被删除的问题  发帖心情 Post By:2016/5/10 17:13:00 [只看该作者]

楼主,你的代码没问题了,但是我设置了备注列,能够手动删除,请问怎么禁止掉登录用户删除呢

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/10 17:25:00 [只看该作者]

列属性->允许编辑->False

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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
记录修改信息,一段时间后,能不能清除  发帖心情 Post By:2016/6/21 15:01:00 [只看该作者]

按照你说的,设置备注表记录修改过的内容,一段时间后,修改记录非常多了,怎么清除?
如果我想设置1个月后清除一次记录,怎么操作?

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