Datenverwaltungsfunktionen > Teilestrukturen verwalten > Erweiterte Auswahllogik für konfigurierbare Module entwickeln > Beispiele und optimale Vorgehensweisen für erweiterte Auswahllogik > Allgemeine Logikausdrücke > Bedingte Ausdrücke
  
Bedingte Ausdrücke
In bestimmten Situationen kann es erforderlich sein, dass ein Parameter zwei unterschiedliche Werte auf Grundlage einer bestimmten Bedingung aufweist. Sie haben beispielsweise einen kleinen Tisch mit Rollen, um ihn leicht zu bewegen. Für einige Situationen kann der Tisch jedoch mit zwei feststellbaren Rollen versehen sein, damit die Bewegung des Tischs einfacher gesteuert werden kann.
Sie können dieses Ergebnis zwar mit einer Kombinationstabelle erzielen, Sie können jedoch auch einen bedingten Ausdruck verwenden, z.B.:
numberStandardCasters == (useLockingCaster ? 2 : 4)
Dieser Ausdruck bedeutet: Wenn useLockingCaster wahr ist, dann ist numberStandardCasters 2, sonst ist es 4.
In diesem Beispiel ist "numberStandardCasters" ein ganzzahliger Parameter, der verwendet wird, um die Anzahl der standardmäßigen (nicht feststellbaren) Rollen des Tischs zu definieren. Dieser Parameter sollte entweder mit dem Typ "Ganzzahl" oder "Reelle Zahl" definiert und dann dem Verwendungs-Link zwischen dem Elternteil (in diesem Fall dem kleinen Tisch) und dem Kind-Teil (in diesem Fall den standardmäßigen Rollen) über das Feld "Mengenoption" auf der Registerkarte Verwendung für das Elternteil zugewiesen werden.
Dieses Beispiel verwendet auch den booleschen Parameter "useLockingCaster", der den Wert "Wahr" hat, wenn feststellbare Rollen gewünscht werden, und den Wert "Falsch", wenn dies nicht der Fall ist. Wenn feststellbare Rollen gewünscht werden, ist der Wert von "useLockingCaster" also "Wahr", und der Wert von "numberStandardCasters" ist gleich 2.
* 
Obwohl ein bedingter Ausdruck dieses Typs sehr leistungsfähig ist, kann er nicht verwendet werden, um bedingte Zuweisungen auszuführen. Ausdrücke, die dem Folgenden ähneln, werden nicht unterstützt:
(useLockingCaster) ? legLength == 48 : legLength == 52