Bulk maintenance
Every second Monday the supplier feed lands with 600 new fittings, and every second Monday the same two things are wrong with it: the products arrive without a family, and half of them are in no category. Fixing that once is a bulk edit. Fixing it every fortnight is maintenance, and it needs a routine rather than a heroic afternoon.
Builds on Edit many products at once.
Maintenance is a bulk edit with a calendar
The bulk-edit page covers the mechanics: filter, check the count, apply. Maintenance adds two things. The filter is saved, so nobody rebuilds it from memory. And the count is read before every run, because the filter that matched 600 rows last time matches 6,000 in the week somebody imports the whole supplier catalog.
A technical wholesaler does not maintain 80,000 articles one at a time. Whatever has to happen to a product has to happen to a set chosen by a filter, or it does not happen. That is the practical argument for structured attributes and families: they make the sets selectable.
Four tools, and which job each one does
| Job | Tool | Where |
|---|---|---|
| The same value on every product in the set | Bulk edit on the selection | PIM › Products: filter, select, apply |
| A different value on each product | Export, edit the file, import it back | Export and Import in the product grid. The import keys on sku and updates matched rows. |
| Products that belong in a category because of what they are | A rule-based category | PIM › Categories, a rule on the category |
| Products that arrived from a feed without a family | Assign family on the selection | PIM › Products, the Without a family queue |
The second row is the one people get wrong in both directions: 800 different weights cannot be set by bulk edit, and 800 articles switched off by import file is the slow way round.
The recurring jobs
Each of these has a queue or a filter already, and one right action.
New products with no family. A product without a family has no required attributes, so its completeness is never measured and its name cannot be resolved from the family. The Without a family queue lists them. Select the set and choose Assign family; the family is set and completeness measured in one step. If every product from one feed needs the same family, set the Default product family setting instead and the queue stays empty.
Completeness that has not been measured. The Never measured queue lists products with no figure at all, typically after a large import. Select them and choose Recompute completeness; a product with no family is reported as failed, which sends you back to the queue above.
Products that need filing. Add to category on a selection files them by hand. A membership placed that way is marked hand-picked, and a rule recompute never removes it. If the reason they belong there is an attribute value, stop filing by hand and give the category a rule. Rules run nightly and on Recompute rules; saving a rule files nothing on its own, so run it once after you save.
Switching a range off. Filter to the range, select, disable. The products stay in the catalog, keep their order history, and disappear from every channel. Two details matter: by default a rule-based category keeps a disabled product filed (the setting Rules may select disabled products), and search leaves disabled products out of what a buyer sees. The rest of this story is on Product lifecycle.
Cleaning an option list. V4A next to v4a is an attribute problem, not a
product edit. Fix the option on the attribute first, then bulk-set or re-import
the products that carry the wrong code.
The routine
- Open PIM › Products and open the saved view for the job.
- Read the count. If it is not roughly last time's, look at the filter first.
- Select all matching results.
- Apply the action.
- Open three products from the set and confirm the value landed.
What to check
Weekly, in PIM › Products:
- Without a family is empty.
- Never measured is empty.
- Disabled contains only products somebody meant to switch off.
- Your rule-based categories show a recent Last recomputed time.