我正在使用IBM Designer 9.0,所以我在向笔记本发送通知时遇到问题。
我测试了我在互联网上找到的这段代码,但它不起作用。
Sub CreateMailNotification(doc As notesdocument, strSendTo As Variant, strSubject As String, strCopyTo As Variant)
Dim session As notessession
Dim db As notesdatabase
Dim docMail As notesdocument
Dim rtitem As Variant
Set db = doc.parentdatabase
Set session = db.Parent
Set docMail=db.createdocument
Set rtitem=docMail.CreateRichTextItem(“Body”)
If strSendTo(0)=”” Then Exit Sub
‘=====set mail
docMail.Form = “Memo”
docMail.From = session.UserName
docMail.Principle = session.UserName
docMail.SendTo = strSendTo
If Isarray(strCopyTo) Then
If strCopyTo(0)<>”” Then
docMail.CopyTo = strCopyTo
End If
Else
If strCopyTo<>”” Then
docMail.CopyTo = strCopyTo
End If
End If
docMail.Recipients = strSendTo
docMail.Subject = strSubject
docMail.PostedDate = Now
‘=====set body field
Call rtitem.AppendText(“Please click this doclink to see more details about the status ” + ” “)
Call rtitem.AppendDocLink( doc, “click to open document”)
Call rtitem.AddNewLine( 2 )
‘=====send mail
Call docMail.send(False)
End Sub
call Call CreateMailNotification (doc, doc.nmSendTo, strSubject,doc.nmCopyTo)
我对这两行有疑问
调用rtitem.AppendText(“请单击此文档链接以查看有关状态的更多详细信息”+“”)调用rtitem.AppendDocLink(doc,“单击以打开文档”)调用rtitem.AddNewLine(2)
通常,rtitem是文档中引用的富文本项。正如之前所建议的,您可以通过执行“onerror goto”进行简单的错误检查,或者您可以打开lotusscript调试器,“工具...... \ debug lotusscript”,并逐步执行代码(这是我喜欢的),或者您可以在代码中的不同位置打印语句:“print 1”。这将显示在状态栏的底部。或者你甚至可以做一个“消息框('测试')”来弹出一个弹出窗口。很多选择。我在调试Web时一直使用的最后两个选项。我用 打印“<Script Language = JavaScript>” 打印“alert('”+“Testing”+“')” 打印“</ Script>”
这给了我获得提示的地方,当它们停止时,在最后一个之后的某个地方以及下一个之前的地方就会崩溃。