Foxtable(狐表)用户栏目专家坐堂 → [讨论]Output类型的成员和用法


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

主题:[讨论]Output类型的成员和用法

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


加好友 发短信
等级:幼狐 帖子:117 积分:1003 威望:0 精华:1 注册:2008/12/2 22:51:00
[讨论]Output类型的成员和用法  发帖心情 Post By:2009/12/10 21:17:00 [只看该作者]

帮助文件中说:
FoxTable提供了一个Output类型,该类型有一个共享方法Show,用于在命令窗口显示信息。
不知这个类型还有什么共享方法?

MessageBox有一个共享方法Show,用于显示对话框.
不知MessageBox是否还有别的共享方法?

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2009/12/10 22:40:00 [只看该作者]

MessageBox只有一个Show
不过Output还有另外一个属性logs

创建操作日志

OutPut类有一个共享属性Logs,返回一个Log集合,可以用来创建操作日志。
和我们之前接触的集合不同,通过Logs可以访问指定名称的Log,例如:

Output.Logs("登录日志").Add(User.Name & "于" & Date.Now & "进入")

你不需要显示地创建一个Log,然后添加到Logs中,首次执行上面的代码,系统会自动创建一个名为“登录日志”的Log。

方法

Add

增加日志信息,语法:

Add(Messge)

Message: 字符型,要增加的日志信息

增加的日志信息不会显示,但是可以用Save方法保存到一个文件中,这样我们就可以创建自己的操作日志了。
例如我们要在名为ABC的Log中增加今天的日期:

Output.Logs("ABC").Add(Date.Today)

Clear

清除指定log中现有日志信息,例如要清除名称为ABC的Log的日志信息:

Output.Logs("ABC").Clear()

如果要清除所有Log的信息,直接调用Logs集合的Clear方法即可:

Output.Logs.Clear()

Save

将调试信息保存到一个文本文件中,语法:

Save(FieName, Append)

FileName:字符型,目标文件名,要包括路径。
Append:  逻辑型,如果目标文件已经存在,此属性决定是将调试信息会加到源文件,还是直接覆盖原文件。

保存某一个Log后,会自动清除该Log的日志信息,这样可以避免信息的重复保存。

示例一,创建删除数据的日志

例如我们要在日志文件中记录什么人在什么时候在订单表中删除了一条记录,被删除订单的编号是什么,可以在订单表的DataRowDeleting事件中设置如下代码:

Output.Logs("删除日志").Add(User.Name & "在" & Date.Now & "删除了" & e.DataRow("订单编号"))

然后打开项目属性窗口,将BeforeCloseProject事件的代码设置如下:

Output.Logs("删除日志").Save("C:\Delete.txt",True)

这样就会在C盘根目录下创建一个Delete.txt文件,记录订单删除操作的日志。

日志内容是不会自动清除的,即使打开一个新的项目,上一个项目的日志内容还是会保存,所以我们需要在项目的AfterOpenProject设置如下代码,用于清除上一个项目的日志内容:

Output.Logs.Clear()

示例二,创建一个登录日志

在项目的AfterOpenProject事件中设置如下代码:

Output.Logs("登录日志").Add(User.Name & ":" & Date.Now )
Output.Logs(
"登录日志").Save("c:\log.txt",True)
Output.Logs(
"登录日志").Clear

简单的三行代码,即可记录什么人在什么时候进入了本系统





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


加好友 发短信
等级:幼狐 帖子:117 积分:1003 威望:0 精华:1 注册:2008/12/2 22:51:00
  发帖心情 Post By:2009/12/10 23:57:00 [只看该作者]

您是狐表的开发人员吧,建议用Foxtable本身来制作帮助文档。一些参数和系统变量直接从软件中获得。
就好像表属性,项目属性的界面一样。把所有的事件,方法,属性整合成一个文件。
[此贴子已经被作者于2009-12-10 23:58:44编辑过]

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


加好友 发短信 好心情 一级勋章
等级:超级版主 帖子:715 积分:5564 威望:0 精华:1 注册:2008/8/31 20:45:00
  发帖心情 Post By:2009/12/11 7:07:00 [只看该作者]

以下是引用ssqq在2009-12-10 23:57:00的发言:
您是狐表的开发人员吧,建议用Foxtable本身来制作帮助文档。一些参数和系统变量直接从软件中获得。
就好像表属性,项目属性的界面一样。把所有的事件,方法,属性整合成一个文件。
[此贴子已经被作者于2009-12-10 23:58:44编辑过]

目录下code文件就是。代码编辑器也可以显示

[此贴子已经被作者于2009-12-11 7:10:00编辑过]

 回到顶部