lotus-notes - 获取第一个文档,在 Lotus 中不返回任何内容

标签 lotus-notes lotusscript

当我尝试访问当前 View 中所选文档的字段时,我什么也没得到。 我的代码:

Sub Click(Source As Button)
  Dim ws As New NotesUIWorkspace
  Dim uiview As NotesUIView 
  Dim dc As NotesDocumentCollection 
  Dim doc As NotesDocument 
  Dim receive As String 
  Set uiview=ws.CurrentView
  Set dc=uiview.Documents
  Set doc=dc.GetFirstDocument
  If doc Is Not Nothing Then
    receive=doc.GetItemValue("Field name")
  End If
End Sub

它永远不会进入 if,因为 doc 总是什么都没有。当我删除 if 时,当 getitemvalue 尝试获取某些内容但无法获取内容时,会出现错误

最佳答案

dc.GetFirstDocument 不返回任何内容,因为集合为空。如果您没有选择带有复选标记的文档,就会发生这种情况。 uiview.Documents 仅传送那些选定的文档,传送突出显示的文档。

如果您只想查看突出显示的文档(加框的文档) enter image description here 那么这将起作用:

Sub Click(Source As Button)
    Dim session As New NotesSession
    Dim doc As NotesDocument
    Set doc = session.DocumentContext
    If Not doc Is Nothing Then
        receive=doc.GetItemValue("FieldName")(0)
        Print receive
    End If
End Sub

session.DocumentContext 返回 View 中突出显示的文档。

如果您想查看所有选定的文档

enter image description here您可以使用稍微修改过的代码

Sub Click(Source As Button)
    Dim ws As New NotesUIWorkspace
    Dim uiview As NotesUIView
    Dim dc As NotesDocumentCollection
    Dim doc As NotesDocument
    Set uiview = ws.CurrentView
    Set dc = uiview.Documents
    Set doc = dc.GetFirstDocument
    While Not (doc Is Nothing)
        Print doc.GetItemValue ("FieldName")(0)
        Set doc = dc.GetNextDocument (doc)
    Wend
End Sub

关于lotus-notes - 获取第一个文档,在 Lotus 中不返回任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23816862/

相关文章:

c#生成的csv文件通过电子邮件发送,嵌入到lotus note中电子邮件的底部

c# - Lotus Notes 复制文档 - 保留文件夹和未读

c# - 防止将重复文档插入 Lotus Notes 数据库

java - 如何修复 Java2Word 生成的 ms-word 文档中的错误

java - 多线程 Java 代理

lotus-notes - 如何更改文档的字段值(LotusScript)?

java - Lotusscript 到 Java 的转换

lotus-notes - 自动将超链接添加到收到的电子邮件中的文本

java - 我可以访问 Lotus Notes 嵌入文件而不实际提取它们吗?

json - 以Lotus Notes html形式使用Angular JS进行文件上传