Funzionalità per la gestione dei dati > Gestione di strutture di parti > Sviluppo della logica di selezione avanzata per i moduli configurabili > Esempi e best practice di logica di selezione avanzata > Espressioni logiche comuni > Espressioni If/Then complesse tramite tabelle casi
  
Espressioni If/Then complesse tramite tabelle casi
In molte situazioni, un'espressione semplice If/Then non è sufficiente. Ad esempio, è possibile disporre di un insieme complesso di condizioni di input e di più valori di output corrispondenti.
In questo caso, l'approccio consigliato consiste nel definire una tabella casi, come in precedenza, ma con un maggior numero di colonne. Alcune colonne rappresentano le condizioni di input mentre le altre rappresentano le condizioni di output. Si consideri l'esempio seguente:
askMaterial
askTrim
askInlay
supportMaterial
legMaterial
Oak
Walnut
White
Oak
Walnut
Oak
Walnut
Black
Walnut
Oak
Oak
Cherry
White
Oak
Walnut
Oak
Cherry
Black
Walnut
Oak
Maple
Cherry
White
Maple
Cherry
Maple
Cherry
Black
Cherry
Maple
Maple
Walnut
White
Maple
Cherry
Maple
Walnut
Black
Walnut
Maple
In questo esempio, un tavolo rettangolare presenta un piano con tre diverse combinazioni di materiali: il materiale del piano, il materiale del rifilo e il colore dell'intarsio. Le prime tre colonne di questa tabella casi rappresentano questi valori.
In base a queste selezioni, i materiali del supporto e delle gambe del tavolo vengono selezionati automaticamente, come mostrato dalle ultime due colonne della tabella casi.
Una volta che l'utente ha specificato i valori di askMaterial, askTrim e askInlay, la tabella casi assegna i valori corrispondenti per supportMaterial e legMaterial.
Ad esempio, se l'utente seleziona il materiale Maple, il rifilo Cherry e l'intarsio White, il supporto viene definito come Maple e le gambe sono definite come Cherry.