Eine Option aus einem Satz von mehreren Optionen auswählen
Möglicherweise soll eine einzelne Option basierend auf der Antwort des Benutzers aus einem Satz von mehreren möglichen Optionen ausgewählt werden. Es gibt jedoch möglicherweise so viele Optionen, dass eine einzelne Kombinationstabelle mit einer Spalte für jede Option möglicherweise schwierig zu organisieren oder zu pflegen ist.
Zum Beispiel kann eine Tischplatte aus Holz in einer sehr großen Anzahl von Materialien und Oberflächen verfügbar sein, wie "Oak Veneer", "Solid Oak", "Solid Oak with Maple Trim", "Maple Veneer", "Solid Maple", "Solid Maple with Oak Trim", "Cherry Veneer", "Solid Cherry" und "Solid Cherry with Maple Trim".
Sie können einen Zwischenparameter einführen, der die Kombinationstabelle mit den booleschen Parametern verknüpft, die bestimmen, welche optionale Unterbaugruppe eingeschlossen werden soll, um diese Informationen besser verwaltbar zu machen. Bei diesem Ansatz wird die Anforderung des Benutzers in einem Eingabeparameter erfasst, der von einer Kombinationstabelle mit gültigen Optionen ausgewertet wird. Die Ergebnisse bzw. die Ausgabe der Kombinationstabelle werden in einem einzelnen Parameter erfasst. Schließlich wird der Wert für jeden booleschen Wert durch Auswerten dieses Zwischenparameters bestimmt.
So wählen Sie eine Option aus einem Satz von mehreren Optionen aus:
1. Erstellen Sie ein konfigurierbares Modul.
2. Fügen Sie ein Kind-Teil für jede der relevanten Oberflächenoptionen an.
3. Fügen Sie dem konfigurierbaren Modul einen Zeichenfolgen-Eingabeparameter hinzu, z.B. askFinish.
Definieren Sie einen geeigneten Eingabeaufforderungswert für den Zeichenfolgenparameter.
Definieren Sie eine Liste mit Beschränkung für den Zeichenfolgenparameter mit diesen Werten:
Oak Veneer
Solid Oak
Solid Oak with Maple Trim
4. Definieren Sie einen Zeichenfolgenparameter, der kein Eingabeparameter ist, und verwendet wird, um die Antwort des Benutzers mit der richtigen Unterbaugruppe in Übereinstimmung zu bringen. Beispiel: pickFinish. Dieser Parameter fungiert als Zwischenparameter zwischen der Kombinationstabelle und den booleschen Parametern.
5. Fügen Sie dem konfigurierbaren Modul für jede der relevanten Optionen einen booleschen Nicht-Eingabeparameter hinzu. Beispiel:
useOakVeneer – Gibt die Verwendung von Eichenfurnier als Material an.
useSolidOak – Gibt die Verwendung von Eiche massiv als Material an.
useSolidOakMaple – Gibt die Verwendung von Eiche massiv mit Ahornkante als Material an.
6. Fügen Sie jedem booleschen Parameter, der den Zwischenparameter auswertet, einen Standardausdruck hinzu. Beispiel:
pickFinish.equals(“OakVeneer”) – Für den booleschen Wert für das Eichenfurnier
pickFinish.equals(“SolidOak”) – Für den booleschen Wert für Eiche massiv
pickFinish.equals(“SolidOakMaple”) – Für den booleschen Wert für Eiche massiv mit Ahornkante
7. Fügen Sie den booleschen Parameter wie folgt der Einschlussoption dieses konfigurierbaren Moduls für das relevante Kind-Teil für jede Option hinzu:
useOakVeneer – Für die Unterbaugruppe "Oak Veneer"
useSolidOak – Für die Unterbaugruppe "Solid Oak"
useSolidOakMaple – Für die Unterbaugruppe "Solid Oak with Maple Trim"
8. Legen Sie eine Kombinationstabellen-Beschränkung fest, um die Antworten des Benutzers dem korrekten Wert des Zwischenparameters zuzuordnen. Beispiel: Kombinationstabellen-Beschränkung pickFinish
askFinish
pickFinish
Oak Veneer
Oak Veneer
Solid Oak
Solid Oak
Solid Oak with Maple Trim
SolidOakMaple
Maple Veneer
Maple Veneer
Solid Maple
Solid Maple
Solid Maple with Oak Trim
SolidMapleOak
* 
Damit diese Vorgehensweise ordnungsgemäß funktioniert, müssen alle Werte in der Spalte "pickFinish" der Kombinationstabelle eindeutig sein.
Wenn der Benutzer bei dieser Vorgehensweise einen bestimmten Wert auswählt, z.B. "Oak Veneer", weist die Kombinationstabelle dem Parameter pickFinish den Wert "OakVeneer" zu. Der boolesche Parameter useOakVeneer wertet seinen Standardausdruck {pickFinish.equals(“OakVeneer”)} als wahr aus, und die Unterbaugruppe für das Eichenfurnier ist in der Variantenproduktstruktur enthalten.
War dies hilfreich?