Synchronize Channels

Active Script for synchronizing products in channels with original products

Abstract

Given is a product folder with children. The maintenance of the product data takes place in the master product tree. This folder can be placed in different places in the channel structure.

The Active Script can now be used to replicate the product structure into the channels. Missing children in the channel structure can be generated recursively. Likewise, children can be removed from the channel structure. By combining both methods, channels can be synchronized with the master tree.

The script can also be applied to views in the channel structure.


Configuration

Context: This filter can be used to only synchronize products within a certain context. If the script is executed directly from the master tree, the context will be the selected folder or product. If we execute the script on a folder we can choose if the contained products are synchronized recursively.

Mode: There are three modes to choose from:

  • Add products: Products from the master tree will be added to the channel structure
  • Remove products: The selected products from the master tree are removed from the channel structure
  • Synchronize channels: The exact structure from the master tree is replicated in the channels. Products that were deleted in the master tree will also be removed from the channel structure.

State: We can explicitly set the Workflow State for the synchronized products.

Action on new channels: We can trigger a Workflow Action for newly created products.

Filter Attributes: Only products with matching attributes and attribute values will be synchronized. A use case could be that only products that are available for a specific region are synchronized.

Note: The "usual" configuration for Active Scripts can and has to be added as well.


Sample use-case: Synchronizing two channels with a folder

We want to synchronize the folder from the master tree to both channels.

We want to synchronize the folder from the master tree to both channels.

We drag & drop the folder manually to both channels.

Manual script execution

Manual script execution

We manually and recursively execute the Active Script on the folder.

A dialog shows the log messages of the executed script.

The structure has been created recursively in both channels.

Note: The Workflow Status was set to "green" only for the newly created products. We had specified this in the script's configuration.

Adding and removing products

There are some changes in the master tree:

  • product 1.1 was deleted
  • a new product has been created

We run the script again and the changes are synchronized to the channels:

Adding the script to a Workflow Action

The script can be added as Action Component to a Workflow Action. This allows us to integrate the channel synchronization into our workflows.


Sample use-case: Synchronizing a channel with a search result

The BS Synchronize Active Script can also be used to create products that are included in views. This can be useful if we need to make changes to products that are specific to particular channels. In this case, we have to create the products in the channel structure.

We perform an advanced search for "new products" and save the result as a channel.

In order to create the product in the channel, we run the script on the product.

The new product has been created.

Adding more products

We have created a bunch of new products. They dynamically show up in the view (search result). In order to create those products in the channel, we once again run the script.

Note: We get the same result if we execute the script recursively in the master tree.