cancel
Showing results for 
Search instead for 
Did you mean: 

Copy CMSNavigationNode data from Online content Catalog to Staged Content Catalog

0 Kudos

Hi,

Is there a way to copy CMSNavigationNode Content Catalog data from Online to Staged catalog version, the staged catalog versions are deleted mistakenly by the user.

Accepted Solutions (1)

Accepted Solutions (1)

safin
Advisor
Advisor

Unfortunately, there is no way to finish 'reverse' synchronizaiton from online to staged in both Backoffice and SmartEdit.

But Sap Commerce does provide other ways to do that

One way is to use Impex, setup the instances and their relationship for CatalogVersionSyncCronJobModelCronJob and CatalogVersionSyncJobModel

Another way is to use ItemSynchronizationService or CatalogSynchronizationService in your code,

  • if you want to synchronize at catalog version level, use
CatalogSynchronizationService.synchronizeFully(CatalogVersionModel source, CatalogVersionModel target);
  • If you want to synchronize at the instance level, invoke:
ItemSynchronizationService.performItemSynchronization(SyncRequestData syncRequestData, List<ItemModel> items, SyncConfig config)

Answers (1)

Answers (1)

alemasetto
Participant

If it's a small thing try to create it manually otherwise you can try to create a new CatalogVersionSyncJob ContentCatalog:Online->Staged and run it once. Source: Online , Target: Staged

Example (not tested, just to give you an idea):

$contentCatalog=yourstoreContentCatalog
$language=en

$syncJob=sync $contentCatalog:Online->$contentCatalog:Staged
$sourceContentCV=sourceVersion(catalog(id[default=$contentCatalog]),version[default='Online'])[unique=true,default='$contentCatalog:Online'] $targetContentCV=targetVersion(catalog(id[default=$contentCatalog]),version[default='Staged'])[unique=true,default='$contentCatalog:Staged']
INSERT_UPDATE CatalogVersionSyncJob;code[unique=true];$sourceContentCV;$targetContentCV;syncPrincipals(uid)[mode=append];syncPrincipalsOnly[default=false];removeMissingItems;createNewItems;rootTypes(code)[mode=append] ;$syncJob;;;cmsmanagergroup;;true;true;CMSItem,CMSRelation,Media,MediaContainer