当前位置: 首页 > 知识库问答 >
问题:

将Hybris Impex Remove与灵活搜索相结合

姬念
2023-03-14

我想使用Impex从表中删除一些项目。下面的示例不会抛出错误,但不会删除任何内容。

REMOVE ProductReference;pk[unique=true]
"#% impex.exportItemsFlexibleSearch(""select {pk} from {ProductReference as pr} where {pr.referenceType}=( {{select {pk} from {ProductReferenceTypeEnum as prte} where {prte.code} = 'CROSSELLING'}})"");"

查询产生预期的结果。是REMOVE与灵活的搜索不兼容,还是我遗漏了什么?

问题是,我正在hotfolder上运行导入,我想事先删除所有现有项目。我们欢迎其他解决方案

共有2个答案

呼延明朗
2023-03-14

我们需要导出脚本来生成导入脚本和媒体文件的zip文件。需要在检查enablecodeexecution的情况下导入生成的zip文件

也可以执行groovy脚本,例如:

import de.hybris.platform.servicelayer.search.FlexibleSearchQuery;
flexibleSearchService = spring.getBean("flexibleSearchService")
modelService = spring.getBean("modelService")
query = "select {pk} from {trigger}";
flexibleSearchService.search(query).result.each 
{
  modelService.remove(it)
}
翟淇
2023-03-14

导入查询-

REMOVE ProductReference;pk[unique=true]
"#% impex.exportItemsFlexibleSearch(""select {pk} from {ProductReference as pr} where {pr.referenceType}=( {{select {pk} from {ProductReferenceTypeEnum as prte} where {prte.code} = 'CROSSELLING'}})"");"

去HMC-

这将删除查询返回的项。还有另一种方法可以删除查询选择的项。

 类似资料:
  • 我对灵活的查询有问题。这是我的疑问: 这是我执行时的错误: 有人能帮我吗?谢谢。

  • 如何获得所有A、B、C、D的pk 注意:使用字符串值C,D,我想使用灵活的搜索查询获取产品C,D以及A,B的pk 细节: 我有产品的清单。 在每个产品中都有一个名为“X”的属性,其中包含string类型的产品ID代码。 注意:“产品ID代码”是指产品列表中另一个产品的“产品ID”。 现在我想根据产品ID代码获得产品的pk?

  • "在Elasticsearch中设计索引以便" 我们如何使Elasticsearch返回相同的结果,无论搜索是否使用"and"作为查询字符串或&" 例如,有一个查询来查找包含“和/”的所有电影标题 先生。 所以在这种情况下,搜索是否用“和”或“ 从我的Kibana开发工具中转储 放置测试索引{“设置”:{“副本的数量”:0,“碎片的数量”:1},“映射”:{“文档”:{“属性”:{“电影名称”:{

  • 问题内容: 我们有一个与OData兼容的API,它将某些全文搜索需求委托给Elasticsearch集群。由于OData表达式可能变得非常复杂,因此我们决定将它们简单地转换为等效的Lucene查询语法,并将其输入查询中。 我们确实支持一些与文本相关的OData过滤器表达式,例如: 我们要匹配的字段可以是,也可以是两者(即通过多字段)。所搜索的文本可以是一个单一的令牌(例如),仅其一部分(例如),或

  • 我们有一个OData兼容的API,它将一些全文搜索需求委托给一个Elasticsearch集群。由于OData表达式可能会变得相当复杂,我们决定简单地将它们转换为等效的Lucene查询语法,并将其提供给查询。 我们确实支持一些文本相关的OData过滤器表达式,比如: 我们匹配的字段可以是、或两者(即通过多字段)。所搜索的文本可以是单个令牌(例如)、仅是其一部分(例如)、或多个令牌(例如、等)。搜索

  • 在hybris中,我创建了ArchivalOrderModel扩展了orderModel 将数据从OrderModel移动到ArchivalOrderModel。(已从OrderModel中删除记录) 当我启动查询时 结果我也得到了ArchivalOrderModel的记录。 是否有任何方法可以在数据建模定义或任何其他存档建议的帮助下进行限制