Search and Replace Data Flow Action

Not many people are aware, that besides the well-known Data Flow Import and Export, there is another sometimes quite useful concept called “Data Flow Action”. Data Flow Actions kind of combine the right side of Data Flow Imports (the PIM) with the left side of Data Flow Exports (the PIM again!). This way, PIM data can be processed and mass modified in a very controlled and stable Active Job environment.

The line-by-line processing of selected products itself is handled by so-called Data Flow Action plugins. One of these plugins is the Bulk Update Data Flow Action, which was designed to run a specific update on many products.

Imagine you face a bunch of like 1000 products having containing text attributes that you need to search and replace in some way. You would have to go through all of them one by one.

With the “Replace Text” Data Flow Action, you could just call up the context menu on the list or tree:

This will open the Search and Replace Editor:

In this example, “Neo” should be replaced by “Cleo” in a case-sensitive way for the languages English and German for all selected Bikes.

The Active Script will run line by line through all 1000 bikes, in our example with an average of around 40ms per product:

Setting up the Search & Replace Dialog

To be able to use the Search & Replace Dialog you first need to create an Active Script of the type “Data Flow Action”:

As Data Source select PIM Products:

The selection itself can be configured here or later be driven by the context, like the selected items in the PIM list or the children of a folder in the tree.

As Data Action Type select “Replace Text”:

This part of the dialog can also be fine-tuned later by the user starting the update.

Activate the “Context Sensitive” checkbox, if the Data Flow Action should be available in the PIM products context menu for other business users. In this case, it is also mandatory, that you give access to this Active Script to those users in the “Automation” tab:

Once the script is made available it will show up in the context menu: