LotusScript getNextDocument 文档数量
LotusScript getNextDocument quantity of documents
- 我有一个名为 "status" 的 NotesView,选择:documentStatus = 0,
- 我有一个 lotusscript 代理,它从 "status" 视图获取所有文档并将 documentStatus 值更改为 1。
在代理 运行 之后,"status" 视图应该是空的,但是有些文档代理没有处理。
我是不是搞错了?
有Lotussript代码:
Set doc = view.Getfirstdocument()
While Not ( doc Is Nothing)
Set docNext = view.Getnextdocument(doc)
Call doc.Replaceitemvalue("documentStatus", 1)
Call doc.Save(True, True)
Set doc = docNext
Wend
用一行代码开始你的代码
view.AutoUpdate = false
这可以防止您的视图在代理 运行 期间被刷新。
好的,我想通了。
我认为 view.GetNextDocument(doc) 没有将文档分配给 docNext 变量,而是文档在视图中的位置。代理保存文档后,它从视图中删除(由于选择标准)并且循环得到错误的文档,缺少一些。
而不是 view.GetNextDocument(doc) 我在循环结束时使用了 view.GetFirstDocument() 。
我将我的代码修改为:
Set doc = view.Getfirstdocument()
While Not ( doc Is Nothing)
Set docNext = view.Getnextdocument(doc)
Call doc.Replaceitemvalue("documentStatus", 1)
Call doc.Save(True, True)
Set doc = view.Getfirstdocument()
Wend
最好将文档收集到一个集合中,然后通过该集合逐步进行更改
view.AutoUpdate = false
将阻止在您工作时刷新视图,因此将阻止服务器接收许多更新以重新编制视图索引
如果有非常非常多,您可能需要考虑关闭复制,直到您也完成为止
- 我有一个名为 "status" 的 NotesView,选择:documentStatus = 0,
- 我有一个 lotusscript 代理,它从 "status" 视图获取所有文档并将 documentStatus 值更改为 1。
在代理 运行 之后,"status" 视图应该是空的,但是有些文档代理没有处理。
我是不是搞错了?
有Lotussript代码:
Set doc = view.Getfirstdocument()
While Not ( doc Is Nothing)
Set docNext = view.Getnextdocument(doc)
Call doc.Replaceitemvalue("documentStatus", 1)
Call doc.Save(True, True)
Set doc = docNext
Wend
用一行代码开始你的代码
view.AutoUpdate = false
这可以防止您的视图在代理 运行 期间被刷新。
好的,我想通了。
我认为 view.GetNextDocument(doc) 没有将文档分配给 docNext 变量,而是文档在视图中的位置。代理保存文档后,它从视图中删除(由于选择标准)并且循环得到错误的文档,缺少一些。
而不是 view.GetNextDocument(doc) 我在循环结束时使用了 view.GetFirstDocument() 。
我将我的代码修改为:
Set doc = view.Getfirstdocument()
While Not ( doc Is Nothing)
Set docNext = view.Getnextdocument(doc)
Call doc.Replaceitemvalue("documentStatus", 1)
Call doc.Save(True, True)
Set doc = view.Getfirstdocument()
Wend
最好将文档收集到一个集合中,然后通过该集合逐步进行更改
view.AutoUpdate = false
将阻止在您工作时刷新视图,因此将阻止服务器接收许多更新以重新编制视图索引
如果有非常非常多,您可能需要考虑关闭复制,直到您也完成为止