如何创建一个只显示复制冲突文档的视图

如何创建一个只显示复制冲突文档的视图

环境产品:Lotus Domino
平台:跨平台
软件版本:5.x
问题Domino 的数据库在使用的过程中,会因为复制产生很多的复制冲突文档,那么,可不可以创建一个视图用来只是显示冲突的文档,以方便用户删除这些文档(是在用户已经确认这些文档没有用的情况下)。
解答

具体的步骤如下:
1。创建一个视图:
A. 设计一个视图,并在视图的属性框中,不选中“以层次结构显示答复文档”。(这是因为复制/保存冲突的文档都是答复文档。)
image
B. 为此视图使用下面的选择公式: SELECT @IsAvailable($Conflict)
image
2。使用LotusScript 。
下面有两个脚本的样例,可以放置在数据库的脚本设计元素中。其中,第一个脚本(是在PostOpen的事件中),创建一个DocumentCollection来收集冲突的文档,并一个一个地比较冲突文档的主文档。 第二个脚本(是在QueryClose的事件中),主要是查找此数据库中的所有不是冲突的文档(包括了这些冲突文档的主文档),并把它们从冲突的文件夹中删除。

重要提示:下面的样例脚本只是为了实现此功能所提供的两个样例。用户如果想要实现自己预期的想法,实施这些脚本就必须经过严格的测试,之后才能实施。Notes支持是不会为用户特殊的设置来定制这些脚本的。

样例一、在PostOpen的事件中的脚本( Script for PostOpen Event):

Sub Postopen(Source As Notesuidatabase)
----Dim session As New NotesSession
----Dim db As NotesDatabase
----Dim collection As NotesDocumentCollection
----Dim conDoc As NotesDocument
----Dim winDoc As NotesDocument
----Dim datetime As New NotesDateTime("01/01/50")
----Dim formula As String
----Dim ws As New NotesUIWorkSpace

----formula="@IsAvailable($Conflict)"
----Set db=session.CurrentDatabase
----Set collection=db.Search(formula, datetime, 0)
----For i=1 To collection.Count
--------Set conDoc=collection.GetNthDocument(i)
--------Set winDoc=db.GetDocumentByUNID(conDoc.ParentDocumentUNID)
--------Call winDoc.PutInFolder("(Conflicts)")
----Next
----Call ws.ViewRefresh
End Sub

如下图所示:
image
点击查看大图

样例二、在QueryClose的事件中的脚本(Script for QueryClose Event):

Sub Queryclose(Source As Notesuidatabase, Continue As Variant)
----Dim session As New NotesSession
----Dim db As NotesDatabase
----Dim collection As NotesDocumentCollection
----Dim datetime As New NotesDateTime("01/01/50")
----Dim formula As String

----formula="!@IsAvailable($Conflict)"
----Set db=session.CurrentDatabase
----Set collection=db.Search(formula, datetime, 0)
----Call collection.RemoveAllFromFolder("(Conflicts)")

End Sub

如下图所示:
image
点击查看大图

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值