Foxtable(狐表)用户栏目专家坐堂 → 系统日志自动记录的问题


  共有2396人关注过本帖树形打印复制链接

主题:系统日志自动记录的问题

帅哥哟,离线,有人找我吗?
天若千颖
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
系统日志自动记录的问题  发帖心情 Post By:2016/7/7 15:37:00 [只看该作者]

我设置了一个表叫做“系统日志表”,在项目的AfterOpenProject事件中写入:

Tables("系统日志表").AddNew()
Tables("系统日志表").Current("登录用户") =User.Name
Tables("系统日志表").Current("登录时间") =Date.Now

这个比帮助里面把这个记录写入本地电脑的LOG日志方便多了,可以记录所有人的登录日志。

但是,这个表普通会员是不能查看的,问题就又出来了,如果普通会员无法查看这个表(可视化授权设置为不可见),当登陆的时候,这个表好像没有写入了。

如何实现这个表当普通会员登录时无法查看,但是登录的记录又可能正常的记录呢?

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/7 15:44:00 [只看该作者]

改一下代码

 

Dim ndr As DataRow = DataTables("系统日志表").AddNew()
ndr("登录用户") =User.Name
ndr("登录时间") =Date.Now

 回到顶部
帅哥哟,离线,有人找我吗?
天若千颖
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/7 15:48:00 [只看该作者]

还是没有记录上,刚用别的账号登陆了2次,日志里面没有记录。

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/7 15:52:00 [只看该作者]

afterOpenProject,是打开项目才会执行的。

 

你登陆,可能没有重新打开项目。你可以把代码写到LoadUserSetting事件

[此贴子已经被作者于2016/7/7 15:52:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
天若千颖
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/7 15:57:00 [只看该作者]

我是把整个项目关闭之后,重新打开登陆的。

我试了把代码写到LoadUserSetting里面,还是没有把记录写进去呢。

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/7 15:58:00 [只看该作者]

加入msgbox,看是否触发代码。

 回到顶部
帅哥哟,离线,有人找我吗?
天若千颖
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/7 16:03:00 [只看该作者]

加在最后,登录时在显示加载数据的时候有信息提示呢。

'创建登陆日志
Dim ndr As DataRow = DataTables("系统日志表").AddNew()
ndr("登录用户") =User.Name
ndr("登录时间") =Date.Now
MessageBox.Show("测试","提示")


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/7 16:07:00 [只看该作者]

代码肯定没问题,

 

 1、进入系统后,显示此表,看是否有数据。

 

 2、单独执行代码,看有没有数据。

 

 3、看你此表beforesaveDataRow等事件是否写有什么限制代码

 

不行就上传实例。


 回到顶部
帅哥哟,离线,有人找我吗?
天若千颖
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/7 16:26:00 [只看该作者]

问题找到了,确实是,我在关闭项目的时候设置了普通用户的修改不保存。

'创建登陆日志
Dim ndr As DataRow = DataTables("系统日志表").AddNew()
ndr("登录用户") =User.Name
ndr("登录时间") =Date.Now
DataTables("系统日志表").Save()

添加记录后直接保存,这样就解决了。

谢谢红袍老师的耐心解答。

 回到顶部