Categories Download
The task fetches the category tree from the Shopware shop into TRADElube. It is the right way round when the catalogue's structure is maintained in the shop and TRADElube is meant to follow it. If you keep the tree in TRADElube instead, use Categories Upload.
What gets transferred
For each category in the shop, TRADElube gets the name, optionally a description, and its place below its parent category. Everything else Shopware keeps on a category stays in the shop.
The tree structure is preserved, and the reading order is what does it: the execution fetches the categories sorted by parent category and name, so it walks the tree from the top down. A category whose parent has not arrived yet in this execution is skipped rather than created in the wrong place. In the traces it then carries the note that the parent is missing.
Which part of the shop's tree the task picks up is decided by the channel, not by the task. The field External Root Category names the node in the shop below which TRADElube reads. The field Root Category names the place in TRADElube where the tree is created. Left empty, the categories are created on the top level. Both fields sit under Shopware.
How the transfer plan is built
The task has exactly one plan, so there is no tab bar above the sections. The plan carries two sections:
| Section | What sits in it |
|---|---|
| Common | A single assignment, Parent Category. Through the source Mapped Parent Category it looks up the category that already belongs to the shop parent in TRADElube. If a Root Category is set on the channel, the assignment has to deliver a value |
| Descriptions | The texts, one tab per language version, with Name, Short Description and Description |
The section Descriptions is where a setting of your own pays off. Only Name is switched on there, as a mandatory assignment. Short Description and Description are switched off and both fetch the same text from the shop. So you decide where that text ends up in TRADElube, and sensibly switch on one of the two, not both.
Further language versions are added via the button Insert. To begin with only your client's default language is there, and while that is the case there is no tab bar either. It appears with the second language version. There is one button per language still missing. Once a language exists, its button disappears. The default language's tab cannot be deleted.
Special features and limits
Cleaning up happens only on a manual start. After reading, TRADElube counts the categories belonging to this channel that no longer exist in the shop and asks whether they should be deleted. A scheduled execution never does that and does not ask either: nobody would be sitting in front of it at night, and a deletion question that answers itself would be dangerous.
After deviations the clean-up is skipped, and the message Clean Categories Skipped says so. So if even one category was skipped or one failed, what was read counts as incomplete, and from an incomplete reading you must not conclude "no longer present in the shop".
An existing category is adopted, not duplicated. Where a category of the shop has no channel mapping yet, TRADElube looks below the same parent category for a category of the same name and links itself to it. That is the way to bind an already maintained tree to a shop afterwards without ending up with it twice.
Categories Download and Categories Upload maintain the same channel mapping. If both run on one channel, the order of the executions decides which side dictates the name. So settle per channel where the tree is maintained.
Further reading
- Shopware: prerequisites, connection, mappings and the other twelve tasks
- Categories Upload (Shopware): the other way round
- Categories (reference): the category tree in TRADElube and the detail view of a category
- Transfer plan (concepts): plan, section and assignment, plus the three ways to determine a value
- Channels and tasks (reference): the sections of a task, among them Performance and Renewal Time