SAP Hybris Commerce - изменение как в онлайн-, так и в автономный каталог вызывает десинхронизацию

Я пытаюсь создать задание cron в Hybris 1811, которое обновляет атрибут для некоторых продуктов как в поэтапной, так и в онлайн-версиях каталога.

Однако даже когда я вношу одно и то же изменение в продукт в обеих версиях каталога, продукт затем помечается как десинхронизированный между версиями в 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?

Спасибо!

1 ответ

Решение

Правильный способ - внести изменения в поэтапном режиме и выполнить синхронизацию из поэтапного в онлайн. Вам не следует редактировать обе версии каталога. В идеале Online доступен только для чтения.

Чтобы синхронизировать список элементов, проверьте API CatalogSynchronizationService:https://help.sap.com/doc/02d5152884b34821a06408495ba0b771/1905/en-US/de/hybris/platform/catalog/synchronization/CatalogSynchronizationService.html

Другие вопросы по тегам