I have been involved in several implementations that included product configurator functionality and all I can say it is one of the very powerful but not very well documented features.
I have been asked a very simple question today and when I tried to search for an answer all I could find was just a few posts on dynamics community from users asking same question with no answers. So, I decided to write this blogpost and share my findings with you.
The scenario we are covering is configure-to-order process where we configure finished product for a customer, and while we are doing configuration, we would like some attribute choices from “main” product to be inherited to the subcomponents. How can we achieve that?
I am using standard environment with Contoso demo data to demonstrate it. I have created new product configuration model for the main product called “NS-Pconf-Main”:
I have also created and linked a subcomponent to it:
Note the subcomponent solver name “NS_Pconf_Sub”, we will use it later.
Then, I have assigned the same attribute “country” to both main component:
and subcomponent:
The last step is to assign Expression constraint to the main component (NS-Pconf-Main) with the following formula: country==NS_Pconf_Sub[country]. Basically we are restricting selection of the subcomponent (NS_Pconf_Sub) value with the selection of the parent (main item). It is not inheritance as such, however it propagates value from the parent to subcomponents and restricts a user to change the value for the child.
Testing the model gives following result, we select value for parent:
That’s it.