我目前正在尝试使用Java API为URLENEQuery
创建Endeca查询。当前查询是:
collection()/record[CONTACT_ID = "xxxxx" and SALES_OFFICE = "yyyy"]
我需要它:
collection()/record[(CONTACT_ID = "xxxxx" or CONTACT_ID = "zzzzz") and
SALES_OFFICE = "yyyy"]
目前正在使用ERecSearchList
CONTACT_ID
以及我想在ERecSearch
对象中匹配的字符串来完成此操作,但我很难搞清楚如何获取UrlENEQuery
生成或正确的方式,如上所述。有谁知道我怎么做到这一点?
答案 0 :(得分:1)
我们中的一个人在多个层面上感到困惑: 让我试着解释为什么我感到困惑:
如果Contact_ID和Sales_Office是不同的维度,其中Contact_ID是多维或维度,那么您不需要使用EQL(类似语言的xpath)来执行任何操作。只需选择适当的维度值,您的导航状态将反映您尝试使用XPATH构建的查询。 IE CONTACT_IDs“ORed together”与SALES_OFFICE“ANDED”。
如果你必须使用EQL,那么修改它的唯一方法(假设你必须从返回的结果中修改它)是通过字符串操作。
ERecSearchList使您能够使用“搜索范围”功能,其功能与EQL过滤完全不同,但您可以通过使用诸如仅搜索指定字段(与通用搜索界面分开)等技巧来实现类似结果“)我仍然不确定ERecSearchList和上面的EQL表达式之间的联系是什么?
表达了我的困惑之后,我认为您需要做的是使用字符串操作来动态构建EQL表达式并将其添加到Query中。
您正在做的代码示例也非常有用。