开启全局表事件,作为操作日志'dt.GlobalHandler.DataColChanged = True
'dt.GlobalHandler.DataRowadded = True
'dt.GlobalHandler.DataRowdeleting = True
有一个问题,关于增加行的,增加行后很多数据还没有写入表格,所以日志记录的相关信息是空的;如何能记录相关信息
DataRowadded事件代码:
Dim IPAdress As System.Net.IPAddress
Dim HostName As String
HostName = System.Net.Dns.GetHostName '获得本机的机器名?
IPAdress = System.Net.Dns.GetHostByName(HostName).AddressList.GetValue(0) '获得本机的IP?
If e.DataTable.Name <> "数据操作日志" Then
Dim dr As DataRow = DataTables("数据操作日志").AddNew()
Select Case e.DataTable.name
Case "入库表"
dr("用户") = User.Name
dr("涉及表") = e.DataTable.Name
dr("涉及行") = e.DataRow("_Identify")
dr("时间") = Date.Now
dr("涉及编号") = e.DataRow("入库编号")
dr("登录地点") = HostName & " | " & IPAdress.ToString
dr("操作") = "增加行:" & e.DataRow("_identify")
Case "库存表"
dr("用户") = User.Name
dr("涉及表") = e.DataTable.Name
dr("涉及行") = e.DataRow("_Identify")
dr("时间") = Date.Now
dr("涉及编号") = e.DataRow("入库编号")
dr("登录地点") = HostName & " | " & IPAdress.ToString
dr("操作") = "增加行:" & e.DataRow("_identify")
Case "出库表"
dr("用户") = User.Name
dr("涉及表") = e.DataTable.Name
dr("涉及行") = e.DataRow("_Identify")
dr("时间") = Date.Now
dr("涉及编号") = e.DataRow("出库编号") & " | " & e.DataRow("入库编号")
dr("登录地点") = HostName & " | " & IPAdress.ToString
dr("操作") = "增加行:"& e.DataRow("_identify")
End Select
End If
-----------入库编号,出库编号都是增加行后系统自动产生的,都没有记录,请问老师怎么解决?