Foxtable(狐表)用户栏目专家坐堂 → [求助]关于创建新增行和行数据改变后操作日志!


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

主题:[求助]关于创建新增行和行数据改变后操作日志!

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


加好友 发短信
等级:婴狐 帖子:8 积分:195 威望:0 精华:0 注册:2012/4/28 17:14:00
[求助]关于创建新增行和行数据改变后操作日志!  发帖心情 Post By:2012/5/23 10:55:00 [只看该作者]

 

[求助]关于创建新增行和行数据改变后操作日志!

 

我建了个删除行记录日志,删除后可以把行的数据记录下来。

表的DataRowDeleting事件设置代码如下:

Output.Logs("删除日志").Add(User.Name & "{" & Date.Now & "} 删除了账单,编号为{" & e.DataRow("账单编号") & "} 单位为{" & e.DataRow("单位名称")& "} 原账单状态为{" & e.DataRow("账单状态")& "} 账单金额为{" & e.DataRow("发生金额")& "}")

项目的AfterSaveProject事件设置代码如下:

Output.Logs("删除日志").Save("F:\账单管理\删除日志.txt",True)

日志可以显示为如下:

管单员在{2012-05-22 11:59:07} 删除了账单,编号为{20120518000} 单位为{1006先生} 原账单状态为{4转入确认} 账单金额为{5041}

 

我想请教下新增行和行数据改变后操作日志!

1、新增行记录日志,可以如下的显示出来(就是把新增的行内里容保存后记录下来,不保存不记录)

管单员在{2012-05-22 11:59:07} 新增了账单,编号为{201205XXXX} 单位为{100X  X先生} 原账单状态为{4转入确认} 账单金额为{XXXX}

2、行数据改变记录日志,可以如下的显示出来(就是把行的变更前内容和变更后的内容记录下来)

管单员在{2012-05-22 11:59:07} 把账单,编号为{20120518000} 单位为{1006先生} 原账单状态为{4转入确认} 账单金额为{5041} 修改为  编号{201205XXXX} 单位{1006 XXX} 原账单状态{4 XXXX} 账单金额{XXXX}


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


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/5/23 11:06:00 [只看该作者]

1、用这个事件:

http://www.foxtable.com/help/topics/0628.htm

 

If e.DataRow.RowState = DataRowState.Added then

   '增加日志
End If

 

2、同样的事件,但是逐个列比较:

 

If e.DataRow.RowState = DataRowState.Modified Then
End If

 

比较参考:

http://www.foxtable.com/help/topics/2369.htm

 

 

 

 



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


加好友 发短信
等级:婴狐 帖子:8 积分:195 威望:0 精华:0 注册:2012/4/28 17:14:00
  发帖心情 Post By:2012/5/23 11:16:00 [只看该作者]

我是菜鸟,能帮编个代码吗,谢谢


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


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/5/23 11:30:00 [只看该作者]

If e.DataRow.RowState = DataRowState.Added Then
    Output.Logs("增加日志").Add(User.Name & "在{" & Date.Now & "} 增加了账单,编号为{" & e.DataRow("账单编号") & "} 单位为{" & e.DataRow("单位名称")& "} 原账单状态为{" & e.DataRow("账单状态")& "} 账单金额为{" & e.DataRow("发生金额")& "}")
ElseIf e.DataRow.RowState = DataRowState.Modified Then
    Dim val As String = User.Name & "在{" & Date.Now & "} 增加了账单,编号为{" & e.DataRow("账单编号") & "}"
    For Each dc As DataCol In e.DataTable.DataCols
        If e.DataRow(dc.name) <> e.DataRow.OriginalValue(dc.name) Then
            val = val & "{dc.name}由{" &  e.DataRow.OriginalValue(dc.name) & "}改为{" & e.DataRow(dc.name) & "}"
        End If
    Next
    Output.Logs("增加日志").Add(val)
End If


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


加好友 发短信
等级:婴狐 帖子:8 积分:195 威望:0 精华:0 注册:2012/4/28 17:14:00
  发帖心情 Post By:2012/5/23 11:54:00 [只看该作者]

谢了,试过,可以用了,但是{dc.name}这里不知道输入什么好^_^

 

再次谢谢^_^


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


加好友 发短信
等级:婴狐 帖子:57 积分:463 威望:0 精华:0 注册:2015/5/6 12:59:00
  发帖心情 Post By:2015/5/31 17:58:00 [只看该作者]

看看

 回到顶部