如何从hybris采取全面的客户出口

时间:2017-04-03 02:48:46

标签: hybris

我们如何才能接受完整的hybris客户出口。 我写了一个impex来导出数据,但是数据库中有200万条记录,所以impex不起作用。请建议一种方法。

2 个答案:

答案 0 :(得分:1)

Impex应该可以工作,也许它需要一些时间,但它不应该失败(如果它失败了你应该发布错误,如果你想得到帮助)。

您必须使用flexibleSearch

按代码执行此操作以获得更好的性能
String flexiString = "SELECT * from {Customer}"
FlexibleSearchQuery flexibleSearchQuery = new FlexibleSearchQuery(flexiString);
flexibleSearchQuery.setResultClassList(Arrays.asList(CustomerModel.class));

final SearchResult<CustomerModel> searchResult = flexibleSearchService.search(flexibleSearchQuery);

List<CustomerModel> results = searchResult.getResult();
if(!results.isEmpty()){
    //Iterate over CustomerModel and append what you want in a file.
}

管理器中还有一个旧方法可以使用,但我不建议使用它,因为管理器可能因为使用jalo类而被弃用(某些类已被弃用,有些不是)。

import de.hybris.platform.jalo.user.*
import de.hybris.platform.jalo.type.*
import de.hybris.platform.core.model.user.*  

Collection<Customer> users=UserManager.getInstance().findUsers(TypeManager.getInstance().getComposedType(Customer.class),null,null,null)

for(Customer cust : users){
    //Iterate over Customer and append what you want in a file.
}

答案 1 :(得分:0)

也许你可以使用virtualjdbc扩展名:https://help.hybris.com/6.3.0/hcd/8c7ec0628669101481ec9d2d8dbb3a7c.html

impex也没有限制。压缩后,这个impex文件将被粉碎。