本文介绍了xPages@DbLookup问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在几个重复控件和计算值中包含此代码
@Unique(@DbLookup(database,view,key,columnnumber))
我可以看到,如果"column nnumber"是分类列,则DbLookup仅返回First Category。
今天我的解决方案是在此列未分类的情况下创建另一个视图,但这对我的客户来说不是一个好的解决方案,而且对我来说还有更多工作要做。
有人知道这是否是bug?或者是否有其他解决方案?
我有Lotus Domino 8.5.3 UP1和相同的设计器
非常感谢,
推荐答案
您可以通过以下方式获取视图条目:
var vc:NotesViewEntryCollection = database.getView("view").getAllEntriesByKey(key, true);
然后您可以使用以下命令循环集合:
var ve:NotesViewEntry = vc.getFirstEntry();
ve = vc.getNextEntry();
在循环中,使用以下命令获取列值:
ve.getColumnValues();
我的理解是,这将比@DbLookup执行得更好,我相信@DbLookup背后有类似的代码。循环视图的最快方法是按照Fredrik的建议使用ViewNavigator:
http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Fast_Retrieval_of_View_Data_Using_the_ViewNavigator_Cache
这篇关于xPages@DbLookup问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!