BeforeSaveDataRow:
Dim dr As DataRow = e.DataRow
If dr.Isnull("部门ID") OrElse dr.Isnull("期间") OrElse dr.Isnull("费用金额") Then
e.Cancel=True
MessageBox.show("至少要填入部门ID,期间和费用金额!","提示")
Else
If dr.RowState=DataRowState.Added Or dr.Rowstate = DataRowState.Modified Then
Dim dr1 As DataRow = DataTables("修改日志").AddNew
dr1("预算填写ID") = dr("ID")
dr1("用户ID") = _UserName
dr1("用户名称") = _UserXm
dr1("修改时间") = Date.Now
dr1("表名")= "预算填写"
dr1("列名") = "费用金额"
dr1("原数值")= dr.OriginalValue("费用金额")
dr1("现数值") =dr("费用金额")
dr1.save
End If
End If
以上代码想完成一个创建修改日志的功能,其他都OK,但ID列有个疑惑,FOXTABLE里的ID列在保存前和保存后的值会变化,
如何保证存到日志里的是保存后的值呢?特别是第一条时,保存前ID是0,日志里的ID也直接存成0了 。
谢谢!