Foreword Our previous post Configuring products ended with an explanation of what attributes are and how they can be set up. This post goes deeper into…
Foreword Our previous post Configuring products ended with an explanation of what attributes are and how they can be set up. This post goes deeper into the configurator. We explain how you can set up dependencies between attributes and how a bill of materials and a route are created. Further parts of the blog series are listed below: Products and their variants (published on 19.01.2022) About configuring (published on 26.01.2022) From calculation to bill of materials (published on 02.02.2022) Fine-tuning and calculating prices (published on 09.02.2022) Constraints The dependencies between different attribute values should be the reason why you decide to use a product configurator. In the example of the dining table, we have built in two dependencies: Wood type and varnish: Not every wood type should be varnished Table length and table height: Beyond a certain length, the table must not be too high Contrary to the general perception, a dependency is implemented in the form of an inclusion and not an exclusion of the possibilities. You therefore have to define which combinations of the attribute values are permitted. With every customer, we run into exactly this first hurdle, because instinctively one wants to specify what is not permitted. Explained using the example: we do not want beech to be varnished in colour. The other two materials may be varnished either in colour or transparently. Intuitively, only the possibilities for beech are recorded (wood type beech and transparent varnish, as well as wood type beech and no varnish). As a result, these two combinations are included and all other combinations are excluded. This means that the wood types maple and oak cannot be selected at all! To make these selectable, all permitted combinations must be specified here too. Constraints can be defined either in tabular form or as an expression / formula. The tabular variant is often preferred, as it is less mathematical. In the tabular variant, columns must be defined by