XPages用于组合框字段的ftsearch结果

时间:2014-09-18 05:57:07

标签: xpages xpages-ssjs

我在之前的应用程序中创建了一个简单的FTsearch模块,在viewPanel1内显示结果。

但是,现在在其他应用程序中它让我头疼。视图中的search代码:

var tmpArray = new Array("");
var cTerms = 0; 

if (sessionScope.searchFurnizor) { 
tmpArray[cTerms++] = "(Field txt_particontractcv_1 = \"*" + sessionScope.searchFurnizor + "*\")"; 
} 


if (sessionScope.searchStare) { 
tmpArray[cTerms++] = "(Field txt_stadiucontrcv = \"*" + sessionScope.searchStare + "*\")"; 
}

qstring = tmpArray.join(" AND ").trim(); 
sessionScope.queryString = qstring; 
return qstring

txt_particontractcv_1是一个简单的inputText,txt_stadiucontrcv是一个复选框:

  <xp:checkBoxGroup id="checkBoxGroup1" value="#{Contr.txt_stadiucontrcv}" defaultValue="In derulare">
            <xp:selectItem itemLabel="In derulare" itemValue="In derulare"
                                id="selectItem1">
            </xp:selectItem>
            <xp:selectItem itemLabel="Finalizat" itemValue="Finalizat"
                                        id="selectItem2">
            </xp:selectItem>
    </xp:checkBoxGroup>

提交搜索的按钮正在部分刷新viewPanel1。尽管如此,即使有关于搜索中的过滤条件的文档也会返回0结果。

LATER EDIT:从FTsearch模块中删除逐个字段后,我认为我发现了问题:问题出在文档内容中的组合框(我的情况)字段中在FTsearch模块中。来自FTsearch的组合框的代码:

<xp:checkBoxGroup id="checkBoxGroup1" value="#{sessionScope.searchStare}">
    <xp:selectItem itemLabel="In derulare" itemValue="In derulare" id="selectItem1">
    </xp:selectItem>
    <xp:selectItem itemLabel="Finalizat" itemValue="Finalizat" id="selectItem2">
    </xp:selectItem>
</xp:checkBoxGroup>

另外,我注意到inputField(s)必须是inputText,我尝试使用一些comoboboxes作为输入字段,但不能正常工作。

2 个答案:

答案 0 :(得分:0)

您是否刷新了部分刷新视图或视图外部的面板? 因为如果您刷新视图,则可能永远不会更新搜索查询。如果是这样的话,在视图中添加一个xp:panel或xp:div out并对其进行局部刷新。

答案 1 :(得分:0)

每当全文搜索无法满足您的预期时,我的建议始终是打印出搜索字符串。然后尝试在Notes客户端的视图中执行搜索。

如果它在客户端的视图中不起作用,尝试在XPage中解决它将无法使其正常工作。 Notes客户端会告诉您为什么,通常&#34;查询不可理解&#34;并且您可以解决为什么使用Notes中搜索栏中的按钮,它会告诉您哪些字段可用以及UNK表认为它们是什么数据类型。

如果确实有效,那么XPage中就会出现问题。

与往常一样,将其分解以尝试确定问题所在 - 在这种情况下是全文搜索功能或在XPage中实现它。

相关问题