我们有一个Xpages应用程序,最近发现了一个问题,其中有几个Notes文档有重复但副本也是PARENT文档而不是响应文档。是否可以创建一个Notes视图,显示重复项,其中所有重复项都是父项?我知道显示冲突的公式如下,但他们都是父母的地方呢?
SELECT ObjectName = QUOTENAME(s.name) + '.' + QUOTENAME(o.name),
ObjectType = o.type_desc
FROM sys.all_objects AS o
INNER JOIN sys.schemas AS s
ON s.schema_id = o.schema_id
WHERE o.[type] IN ('U', 'P');
答案 0 :(得分:0)
对我的评论进行了阐述:
现在看看你创建的这个视图。在视图类别折叠的情况下,查找大于1的任何数字以确定哪些文档是重复的。
答案 1 :(得分:0)
我认为你问的不是如何识别副本 - 而是如何找出哪些是父文件。所以基本上你会像史蒂夫建议的那样创建一个视图 - 但是我建议不要将常量1放入第二列,而是建议放置@DocChildren(用于立即响应)或@DocDescendants(用于所有响应和对响应的响应)。
如果我理解你的逻辑,则所有返回0(零)的是子文档,返回1或更高的那些是父文档。当然,您也可以在视图公式中使用文档中的项目 - 如果它只存在于父文档中(或者它的值可以告诉它是父文档)
答案 2 :(得分:0)
查看选择公式一次只能处理一个文档。他们无法执行查找。他们无法比较两份文件。因此,视图无法识别重复项。
根据其他答案,视图可以根据常用值对文档进行分类。如果单个字段在所有文档中都应该是唯一的,则可以对该字段进行分类。这将为您提供重复项的可视化,但它不会过滤或过滤它们。
视图过滤重复项的唯一方法 - 要么只显示重复项,要么排除重复项 - 如果您运行的代理程序读取所有文档,查找重复文档,并使用特殊字段标记它们value - 例如,IsDuplicate = 1.执行此操作后,您可以创建一个视图,选择IsDuplicated = 1的所有文档,或者排除IsDuplicated = 1的视图。