以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  Editlog在狐表中如何体现  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=1309)

--  作者:mr725
--  发布时间:2008/12/3 19:29:00
--  Editlog在狐表中如何体现

易表中EditLog 将某列的刷新公式设为EditLog,即可在该列自动记录每行数据最后一次被修改的时间和修改人。
在狐表中如何表达???


--  作者:shxiaoya
--  发布时间:2008/12/3 19:37:00
--  
e.datarow("第一列")=User.Name & "  " & date.now
--  作者:mr725
--  发布时间:2008/12/3 19:44:00
--  

代码放在哪?
用表达式可以吗?

[此贴子已经被作者于2008-12-3 19:46:03编辑过]

--  作者:shxiaoya
--  发布时间:2008/12/3 19:47:00
--  
好像表达式不支持
--  作者:mr725
--  发布时间:2008/12/3 20:02:00
--  
以下是引用shxiaoya在2008-12-3 19:47:00的发言:
好像表达式不支持

代码放在哪?


--  作者:shxiaoya
--  发布时间:2008/12/3 20:03:00
--  我太爱你了狐表
只是举个例子。粘段儿帮助

AfterEdit

结束编辑单元格后执行,通常用于执行一些特定的操作和计算。

e参数属性:

Table: 准备编辑的表
Row:   准备编辑的行
Col:   准备编辑的列

AfterEdit和DataColChanged有些类似,但是AfterEdit针对的是输入,而DataColChanged使用范围更广,因为任何形式导致的数据变动,包括输入以及通过代码设置,都会触发DataColChanged事件。所以实际开发的时候,使用DataColChanged的场合更多。

在表中进行剪切、粘贴的时候,会针对每一个受影响的单元格触发AfterEdit事件,从而让编辑控制做到滴水不漏。

示例

假定产品表中有一个单价列,你认为这一列比较重要,所以希望增加一列,用于记录:谁在什么时候修改了此产品的单价。
你可以在产品的AfterEdit事件中设置如下代码:

If e.Col.Name = "单价" Then
    e.
Row("Log") = User.Name & " " & Date.Now
End
If

这里假定新增列的名称为“log”


--  作者:mr725
--  发布时间:2008/12/3 20:12:00
--  
以下是引用shxiaoya在2008-12-3 20:03:00的发言:

......

你可以在产品的AfterEdit事件中设置如下代码:

If e.Col.Name = "单价" Then
    e.
Row("Log") = User.Name & " " & Date.Now
End
If

这里假定新增列的名称为“log”

出现错误?


此主题相关图片如下:未命名.jpg
按此在新窗口浏览图片
[此贴子已经被作者于2008-12-3 20:12:20编辑过]

--  作者:mr725
--  发布时间:2008/12/3 20:23:00
--  
找到原因啦,log列类型要为字符型。
但是结果为: 开发者 2008-12-3 20
怎么没有分、秒???~
[此贴子已经被作者于2008-12-3 20:31:46编辑过]

--  作者:mr725
--  发布时间:2008/12/3 20:33:00
--  

有知道的吗?为何没有分、秒???


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2008-12-3 20:41:34编辑过]

--  作者:mr725
--  发布时间:2008/12/3 20:53:00
--  
 
谢谢
liuruihua