首页 > 解决方案 > LotusScript - AppendDocLink 不在 RichTextItem 中创建 doclink

问题描述

在新数据库中,我无法在 RichTextItem 中创建 DocLink。我试过使用 ritem.Update 并且数据库有一个默认视图。到目前为止,这些是我能够找到的唯一修复,但都没有奏效。

在多次失败后,我在一个操作按钮中创建了一些测试代码:

Sub Click(Source As Button)

 Dim s As New NotesSession
 Dim ws As New NotesUIWorkspace
 Dim db As NotesDatabase
 Dim uidoc As NotesUIDocument
 Dim doc As NotesDocument
 Dim newdoc As NotesDocument
 Dim rtitem As NotesRichTextItem

 Set db = s.CurrentDatabase
 Set uidoc = ws.CurrentDocument
 Set doc = uidoc.Document
 Set newdoc = New NotesDocument(db)
 Call newdoc.Save(True, False)

 Set rtitem = New NotesRichTextItem(doc, "CommentAndRecord")
 Call rtitem.AppendDocLink(newdoc, "Test document")
 Call rtitem.Update
 Call uidoc.Refresh

End Sub

此代码运行没有错误并创建一个 RichTextItem,但没有将 DocLink 添加到 RichTextItem。我尝试用 AppendText 替换 AppendDocLink 并遇到同样的问题。项目已创建,但无法分配任何值。

标签: lotusscript

解决方案


NotesUIDocucment.Refresh方法有一个可选的布尔参数,默认为 false。将其设置为 true 会使用您对后端 NotesRichTextItems 所做的更改来更新前端富文本字段。

所以试试

Call uidoc.Refresh(true)

编辑: 哦,等等……刷新调用是另一种方式 - 从前端可编辑 RT 字段更新后端 RT 项。为了使 RT 项目的后端更改反映在前端以便您可以看到它们,您必须关闭并重新打开文档。


推荐阅读