Lotus Notes:Msgbox可以在与log.nsf相同的文本文件中打印

时间:2016-07-19 13:34:03

标签: lotus-notes lotus-domino lotusscript lotus lotus-formula

大家好我对我的应用程序中log.nsf写日志的消息框有疑问msgbox正在生成时打印日志,但我在路径E:\ logs \ a.txt(手动)中创建了一个文件。我必须在那个a.txt文件中记录Msgbox消息,所以任何人都可以告诉如何修改消息框,以便它也会写入txt文件。

现在我使用此代码在log.nsf中打印日志

Messagebox "Error id not found"

和某些地方

Msgbox "Error id not found"

请帮助如何编辑此代码并将其打印在文本文件中。

2 个答案:

答案 0 :(得分:2)

为什么不使用NotesLog类?它适用于所有日志记录目的(文件,代理日志,邮件..)

正如所建议的那样(谢谢!),一个简单的例子,直接来自帮助数据库:

Sub Initialize
  Dim currentLog As New NotesLog( "Checkup Agent" )
  Call currentLog.OpenMailLog( "Jimmy Ho", "Log for Checkup Agent" )
  Call currentLog.Close
End Sub

当日志关闭时,将向Jimmy Ho发送邮件。

还有其他方法可以设置日志:文件,代理,邮件和Notes数据库。我通常使用OpenNotesLog,因此我可以登录Notes数据库。该数据库应该是使用AgentLog模板创建的。

到文件:

In Declarations:
  Dim currentLog As NotesLog

Sub Initialize
  Set currentLog As New NotesLog( "My File Log" )
  Call currentLog.OpenFileLog( "d:\logfile.txt" )
End Sub

and elsewhere in your code:

  Call currentLog.LogError (1001, "Id not found")

日志将自动关闭。

同时检查OpenNTF.org的OpenLog project可以为您做些什么。

答案 1 :(得分:1)

使用MessageBox无法实现此目的。您可以使用Print#语句(LotusScript语言)将数据写入文本文件。此示例将在本地光盘上写入日志文件:

Dim fileNum As Integer
fileNum% = Freefile()
Open "d:\logfile.txt" For Output As fileNum%
Print #fileNum%, "Error id not found"
Close fileNum%