以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]afteredit有段代码错误不知道错哪了 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=118294) |
-- 作者:倪远歌1 -- 发布时间:2018/4/28 11:19:00 -- [求助]afteredit有段代码错误不知道错哪了 一直提示未知编译错误,不太明白 Afteredit事件,代码如下Select Case e.Col.name Case "长","宽","高","净重","Ⅰ级材料一_编码","Ⅰ级材料二_编码","Ⅰ级材料二_数量","Ⅰ级材料三_编码","Ⅰ级材料三_数量","Ⅰ级材料四_编码","Ⅰ级材料四_数量","Ⅱ级材料一_编码","Ⅱ级材料二_编码","Ⅱ级材料二_数量","Ⅲ级材料编码","Ⅲ级材料数量" If e.newvalue <> e.oldvalue Then e.Row("工程师") = User.Name e.Row("变更日期") = Date.Now End If End Select 这该怎么改?
|
-- 作者:有点甜 -- 发布时间:2018/4/28 11:22:00 -- 写到DataColChanged事件
Select Case e.DataCol.name
Case "长","宽","高","净重","Ⅰ级材料一_编码","Ⅰ级材料二_编码","Ⅰ级材料二_数量","Ⅰ级材料三_编码","Ⅰ级材料三_数量","Ⅰ级材料四_编码","Ⅰ级材料四_数量","Ⅱ级材料一_编码","Ⅱ级材料二_编码","Ⅱ级材料二_数量","Ⅲ级材料编码","Ⅲ级材料数量"
If e.newvalue <> e.oldvalue Then
e.DataRow("工程师") = User.Name
e.DataRow("变更日期") = Date.Now
End If
End Select
|
-- 作者:倪远歌1 -- 发布时间:2018/5/2 16:29:00 -- 我想了一下写到datacolchanged里面还是不太对,因为是“变更日期”,除此之外还有一列“录入日期”,变更指的是本行已有内容(不代表所有列都不为空)并已经保存,本行内容发生改变之后才会有变更日期这一说法。 变更可能是某一列从无到有,也可能是从有到无。
直接写到datacolchanged里面在第一次录入的时候就会触发此事件,而且是每录入一列数据就触发一次。 |
-- 作者:有点甜 -- 发布时间:2018/5/2 16:33:00 -- Select Case e.DataCol.name [此贴子已经被作者于2018/5/2 16:33:28编辑过]
|
-- 作者:倪远歌1 -- 发布时间:2018/5/2 23:30:00 -- 我换了一个思路,根据实际使用情况,加了一个条件,让录入日期不等于今天再执行。 这样也可以分辨出改动和新增的区别。 多谢有点甜老师指点!!!
|