获取搜索(过滤)查看结果的列值(Get Column Values of Searched (Fil

2019-11-01 15:24发布

我做一个viewPanel中的搜索查询。 当查询结果显示在视图,我想通过循环只返回的结果,并建立各行名称的数组。 我有我的观点XPAGE的第一列名称字段。 我曾尝试以下:

var viewControl = getComponent("namesPanel");
var view = viewControl.getDataModel().getDominoViewData().getDataObject();
var entries = view.getAllEntries();
var entry = entries.getFirstEntry();

var namesArray = [];
while(entry)
{
    namesArray.push(entry.getColumnValues().elementAt(0));
    entry = entries.getNextEntry();
}

getComponent("DisplayNames").setValue(namesArray);

上面的代码在后端Notes视图返回每个名称不管我的搜索查询。 我知道有getAllEntriesByKey(),但我的XPages观点是由搜索过滤,不列值。

有没有一种方法,我可以只在我看来,结果显示搜索后打造的列值的数组? 感谢您的任何提示。

Answer 1:

我想我已经想通了。 发现了一些帮助在这里: http://www.xsptalk.com/Public/Website/Blog.nsf/dx/04032011122915CCOGNE.htm

var temprows = getComponent("namesPanel");
var modelData = temprows.getDataModel();
var namesArray = [];

for(i=0; i < modelData.getRowCount(); i++)
{
    modelData.setRowIndex(i);
    var xspViewEntry=modelData.getRowData();
    var document=xspViewEntry.getDocument();
    namesArray.push(document.getItemValueString("name"));
}

getComponent("DisplayNames").setValue(namesArray);


文章来源: Get Column Values of Searched (Filtered) View Results