通过视图创建 NotesdocumentCollection

Creating a NotesdocumentCollection via View

我是 lotusscripting 的新手,我有点难以理解。 所以..我真的需要你的帮助。

我有一个笔记视图,其中包含类别、请求类型和列名称。我需要按类别和请求类型对它们进行排序。

这是我创建文档集合的代码。我不知道它是否正确。

请求类型:Delete/Add 类别:“0001”

Set BadgeCol = badgeview.GetAllDocumentsByKey("Delete",False)
Call BadgeCol.PutAllInFolder("BDel")

Set Badgedoc = badgecol.GetFirstDocument()

我不知道接下来会发生什么...

enter code here

这里有一些自定义的 LotusScript 解决方案(LotusScript 没有提供任何解决方案)

不过,我建议您对视图进行排序,而不是从那里获取文档。

但是,如果 LotusScript 是您想要对集合进行排序的地方,则需要使用您自己的排序

正如 Dmytro 指出的那样,最好的方法是对视图列进行排序以进行排序。

但请注意:Set BadgeCol = badgeview.GetAllDocumentsByKey("Delete",False) 总是会为您提供未排序的集合。如果您想利用视图排序,则需要使用 NotesViewEntryCollection 而不是 NotesDocumentCollection。在循环通过它们方面,两者的工作几乎相同。

您的代码可能如下所示:

Dim BadgeCol as NotesViewEntryCollection
Dim badgeEntry as NotesViewEntry
Dim badgeDoc as NotesDocument

Set BadgeCol = badgeview.GetAllEntriesByKey("Delete",False)

Set badgeEntry = badgecol.GetFirstDocument()
While not badgeEntry is Nothing
  Set badgeDoc = badgeEntry.Document

  '- do whatever you need: Read items, create an array, whatever...

  Set badgeEntry = badgecol.GetNextDocument()
Wend