-2

我使用的是 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 )

4

1 回答 1

0

通常,rtitem 是文档中引用的富文本项。正如之前建议的那样,您可以通过执行“onerror goto”来进行简单的错误检查,或者您可以打开 lotusscript 调试器,“tools...\debug lotusscript”,然后逐步执行代码(这是我喜欢的),或者您可以在代码中的不同位置执行打印语句:“print 1”。这将显示在状态栏的底部。或者你甚至可以做一个“messagebox('test')”来弹出一个窗口。很多选择。我在调试网络时一直使用的最后两个选项。我使用
Print "<Script Language = JavaScript>"
Print "alert('" + "Testing" + "')"
Print "</Script>"

这给了我得到提示的地方,当它们停止时,在最后一个之后和下一个之前的某个地方是它崩溃的地方。

于 2019-04-25T16:57:05.363 回答