Lotus notes 在索引中找不到条目

Lotus notes 在索引中找不到条目,lotus-notes,Lotus Notes,我试图在隐藏视图中使用dbLookup获取字段的特定值,但出现了以下错误“field:Version:Entry not found in index”。我确信字段版本是作为列添加到视图中的。第2列是“版本字段”。我如何解决这个问题 @DbLookup(“:“NoCache”;“:”;“(vwLDoc)”;ParentId+@Text(Version);2)假设此代码位于字段(?)中,请像这样重新编写代码 key := @trim(ParentID + @Trim(@Text(Version))

我试图在隐藏视图中使用dbLookup获取字段的特定值,但出现了以下错误“field:Version:Entry not found in index”。我确信字段版本是作为列添加到视图中的。第2列是“版本字段”。我如何解决这个问题


@DbLookup(“:“NoCache”;“:”;“(vwLDoc)”;ParentId+@Text(Version);2)

假设此代码位于字段(?)中,请像这样重新编写代码

key := @trim(ParentID + @Trim(@Text(Version))); 
lkup := @DbLookup("":"NoCache";"":"";"(vwLDoc)";key; 2); 
val := @if(@IsError(lkup);@Text(lkup) + ", key:" + key;lkup);
val;
这允许您将键与DBLookup分开,以便您可以调查运行查找所使用的实际值。将两个字符串串联在一起可能会导致插入额外的空格,从而创建无效的键值

它还可以更优雅地处理错误,因为您可以使用“val”变量,而不会出现难看的提示框,这也会在打开表单时影响表单

我会检查视图“(vwLDoc)”是否有一个排序列。如果视图中没有排序列,dblookup将始终返回“在索引中找不到条目”

您可以通过打开视图并键入键值来测试键,它应该跳转到任何匹配的文档。要打开隐藏视图,只需选择“视图”=>“转到”(执行此操作时按住ctrl-shift键以查看隐藏视图),然后选择视图


如果您将整个公式粘贴到使用此dblookup的位置,我可以提供更好的答案。

Giulio-谢谢。我对字段版本进行排序,它可以正常工作。我没有得到这个值。不管怎样,您知道如何使用lotus notes@formula在视图中获取按类别创建的最新文档吗?您可以添加一个新列并将公式放入@created中。将该列按升序/降序进行排序。请注意,视图对文档进行排序的方式取决于“排序”列的从左到右顺序。因此,如果将此新列添加到现有已排序列的右侧,则第一列的排序将优先,然后是下一个已排序列,依此类推。因此,您可能需要移动它们以获得所需的结果。(我不建议做太多的排序列,3或4应该足够了。)好的。但是忘了告诉你,文档大部分时间都是重复的(例如项目名称、类型、编号)。所以我想得到最新的一个只有唯一的项目名称,类型和编号。以上的解决方案是否可行?你在这里得到了两个问题的答案,一个问题的代价是..哈哈。如果如上所述添加@Created列,则视图中出现的单独文档上的重复值将按日期顺序排序,因为视图列与@Created日期排序有关。请记住,排序列的从左到右顺序会影响视图对文档排序的方式。