Xpages DataView控件和搜索结果的自定义排序

时间:2015-01-16 00:42:54

标签: xpages xpages-ssjs xpages-extlib

我需要为FTSearch创建自定义排序(可以从视图中,结果存储在viewEntryCollection中,也可以存储在NotesDocumentCollection中的数据库中)。该订单与在主题和文档类别中找到的搜索词的数量有关。该部分运行良好,但我不确定该函数需要返回什么对象类型才能在数据视图控件中使用结果。它是NotesDocumentCollection,JavaScript数组还是任何其他对象?以及如何在不同的列中推送/访问我想要的值?

我见过很多用于排序搜索结果的代码,但它们都对特定的列进行排序......

谢谢:D

1 个答案:

答案 0 :(得分:0)

我找到了一种方法,这是我的帖子:http://www.bleedyellow.com/blogs/DominoHerald/entry/data_view_with_a_notesviewentrycollection?lang=en_us

Brad Balassaitis也有帖子。

我后来发现(在我完成上述操作之后),您可以创建一个NotesViewEntryCollection并在其上调用FTSeach。

干杯, 布赖恩

Rodigo建议不要链接到答案,所以这里是上面链接的帖子的文字:

带有NotesViewEntryCollection的数据视图 Brian A Moore | 1月20日| 4条评论| 388次访问 所以我一直想要使用日期视图,但是我没有时间坐下来解开它。而且(这里的肥皂盒)给出的例子非常复杂。我确实有一个基于Brad的作品的样本,我将发布。但是当我把它们放在一起时,这是一个小窍门。 使用数据视图时,只能选择Domino视图。我想知道你是否可以用一个系列来做。事实证明你可以。我做的是这个(在我奇怪的发现过程中)我基于视图中所有条目的NotesViewEntryCollection创建了一个DataTable。我从中复制了节点并替换了dataView中的节点。并且页面呈现。我只是放了一个寻呼机,看看它是否具有完整的功能,并且它正在工作,所以我怀疑其他各种事情也会如此。 这是整个XPage。只需更改视图名称和您获得的字段,它应该适用于您。此外,如果您还没有开始使用数据视图,那么它就开始了:)

    <?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xe="http://www.ibm.com/xsp/coreex">

    <xe:dataView
        id="dataView1"
        var="rowData"><xp:this.facets>
    <xp:pager
        layout="Previous Group Next"
        partialRefresh="true"
        id="pager1"
        xp:key="pagerTopLeft">
    </xp:pager></xp:this.facets>
        <xp:this.value><![CDATA[#{javascript:var nView:NotesView=database.getView('Name');
var nVEC:NotesViewEntryCollection=nView.getAllEntries();
return nVEC;}]]></xp:this.value>
        <xe:this.summaryColumn>
            <xe:viewSummaryColumn value="#{javascript:rowData.getDocument().getItemValueString('Subject');}"></xe:viewSummaryColumn>
        </xe:this.summaryColumn>
    </xe:dataView></xp:view>

干杯, 布赖恩