Foxtable(狐表)用户栏目专家坐堂 → 修改问题


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

主题:修改问题

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
修改问题  发帖心情 Post By:2024/10/29 8:44:00 [只看该作者]

If e.Col.Name = "单价" Then
    e.
Row("Log") = User.Name & " " & Date.Now
End
 
If

如何让上面加上:修改次数为,修改前的单价与修改后的单价

e.Row("Log") = 修改次数为:1修改前:单价 & 修改后:单价 &User.Name & " " & Date.Now

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


加好友 发短信
等级:超级版主 帖子:110886 积分:564386 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/10/29 8:49:00 [只看该作者]

e.Row("Log") = "修改次数为:1" &" 修改前:" & 单价 & ....

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2024/10/29 9:28:00 [只看该作者]

'If e.Col.Name = "单价" Then
'    e.Row("Log") = "修改次数为:1" & " 修改前:" & e.DataRow("单价") & " 修改后:" & e.DataRow("单价") & User.Name & " " & Date.Now
'End If

执行后,单价修改,还是"修改次数为:1" ," 修改前:" & e.DataRow("单价") & " 修改后:" & e.DataRow("单价") 都一样,不符合需求

需求:记录表A的单价每次变化,比如:单价第1次的记录:"修改次数为:1,修改前:20,修改后:25,
单价第2次的记录:"修改次数为:2,修改前:25,修改后:30,
单价第3次的记录:"修改次数为:3,修改前:30,修改后:35,
如何实现?


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


加好友 发短信
等级:超级版主 帖子:110886 积分:564386 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/10/29 9:35:00 [只看该作者]

没有办法知道修改了几次。除非另外添加一个列记录

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2024/10/29 10:32:00 [只看该作者]

是加一列,记录修改次数?如何实现每次修改的修改前:,修改后:的变更

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


加好友 发短信
等级:超级版主 帖子:110886 积分:564386 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/10/29 10:43:00 [只看该作者]

'If e.DataCol.Name = "单价" Then
e.DataRow("次数") += 1
'    e.DataRow("Log") = "修改次数为:" & e.DataRow("次数")  & " 修改前:" & e.OldValue & " 修改后:" & e.NewValue & User.Name & " " & Date.Now
'End If

DataColChanged

某一列的内容被更改后执行,此时列的内容已经是更改后的值。

e参数属性:

DataTable:返回发生数据更改的数据表。
DataRow:  返回发生数据更改的数据行。
DataCol:  返回发生数据更改的数据列。
NewValue: Object类型,表示新的值。
OldValue: Object类型,表示旧的值


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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2024/10/29 15:10:00 [只看该作者]

上面执行,只记录最后一次修改,如何实现记录每一次的修改?

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


加好友 发短信
等级:超级版主 帖子:110886 积分:564386 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/10/29 15:20:00 [只看该作者]

本来就是每一次的修改,每次改单元格内容都会触发DataColChanged

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2024/10/29 15:25:00 [只看该作者]

需求:Log为备注型,来记录每次的内容,如何实现?

比如:
单价第1次的记录:"修改次数为:1,修改前:20,修改后:25,
单价第2次的记录:"修改次数为:2,修改前:25,修改后:30,
单价第3次的记录:"修改次数为:3,修改前:30,修改后:35,
这些都在Log。

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


加好友 发短信
等级:超级版主 帖子:110886 积分:564386 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/10/29 15:29:00 [只看该作者]

If e.DataCol.Name = "单价" Then
e.DataRow("次数") += 1
    e.DataRow("Log") =e.DataRow("Log") &  ",修改次数为:" & e.DataRow("次数")  & " 修改前:" & e.OldValue & " 修改后:" & e.NewValue & User.Name & " " & Date.Now
End If

 回到顶部