I realize today might be pretty obvious for a lot of you VC experts out there, but I wanted to talk about Restricting characteristic values. To me, this is one of the coolest features in variant configuration. If you are not familiar with the concept, restricting characteristic values gives you the ability to dynamically remove values that are no longer valid because of other selections.
In variant configuration, there are two techniques to accomplish restricting characteristic values. You can use Preconditions or Constraints. There are couple things to consider… One, Preconditions are old technology. They are typically only recommended as a “last resort”. In my experience, the only use for preconditions is for multiple value characteristics.
Now, constraints are the best way to handle this in my opinion. There are some prerequisites to use this. First of all, the characteristics must be set as Restrictable. If not, your values won’t dynamically appear/disappear, you’ll just get a red X when things are violated. Now the first big advantage is that constraints can be set to work differently by product line (or class).
Now the next big thing in a constraint is how to restrict the values. Now there is the “easy” method that you can manually set the values. For example:
C.CHAR_1 IN (‘A’,’C’,’F’) IF C.CHAR_A = 1,
C.CHAR_1 IN (‘X’,’Z’) IF C.CHAR_B = 2
Now, this method works fine, and will restrict the values of CHAR_1. However, in my humble opinion, the better way to do it is to use a Table.
Then, in the constraint, you can simple put in the table, and it can restrict things both ways. Why is this important? If you plan to push this configuration to your customers, you should never assume that they will answer the questions sequentially. If you restrict things both ways (and the table is the easiest way), then regardless of what they answer, everything will be consistent.
Anyway, that’s the deal for today. Hope you find it useful.
As always, thanks for reading and don't forget to check out our SAP Service Management Products at my other company JaveLLin Solutions,