我正在尝试在Hybris 1811中创建cronjob,以更新暂存目录和在线目录版本中某些产品的属性。
但是,即使我在目录的两个版本中对产品进行了完全相同的更改,该产品也会在Backoffice中被标记为在版本之间不同步。
仅当我在联机目录中进行更改时,产品不会取消同步,但是从暂存到联机的任何同步都会覆盖更改。
代码:
productStaged = productService.getProductForCode(stagedCatalog, productCode);
productOnline = productService.getProductForCode(onlineCatalog, productCode);
if (productStaged != null) {
productStaged.setMargin(margin, locale);
modelService.save(productStaged);
}
if (productOnline != null) {
productOnline.setMargin(margin, locale);
modelService.save(productOnline);
}
是否有一种方法可以使这项工作成为可能,而又不会导致产品在Backoffice中看起来不同步?
谢谢!
正确的方法是在暂存中进行更改,然后从暂存同步到联机。您不应该同时编辑两个目录版本。在线上最好是只读的。