以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  无法记录删除操作日志  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=157638)

--  作者:malavazos
--  发布时间:2020/10/23 16:01:00
--  无法记录删除操作日志
利用下属代码,可以在DataRowAdded实现增加行记录日志。
无法在 DataRowDeleting及DataRowDeleted全局表事件中实现删除日志记录


If e.DataTable.Name <> "数据操作日志" Then
    Dim dr As DataRow = DataTables("数据操作日志").AddNew
        If DataTables(e.DataTable.Name).basetable.columns.Contains("_Identify") Then
          dr("ID") = e.DataRow("_Identify")
        Else
           dr("ID") = e.DataRow("ID")
        End If
    dr("用户") = ComputerName
    dr("涉及表") = e.DataTable.Name
    dr("涉及列") = Nothing
    dr("涉及行") = User.Name
    dr("时间") = Date.Now
    dr("操作") = "增加了一行"
    Dim str As String = ""
    For Each c As DataCol In e.DataTable.DataCols
        str += c.Name & "=" & e.DataRow(c.Name) & "|"
    Next
    dr("原行数据") = str
End If
--  作者:zoyong
--  发布时间:2020/10/23 16:02:00
--  
最后面加入dr.save


dr("原行数据") = str
dr.save
[此贴子已经被作者于2020/10/23 16:01:56编辑过]

--  作者:有点蓝
--  发布时间:2020/10/23 16:08:00
--  
没有开启全局表事件:http://www.foxtable.com/webhelp/topics/0671.htm