


TakeHighestValue (Höchster Wert)
Dieser Baustein gehört zum Paket „Free – Take (Nimm).“
Paket-Preis: 0,00€
Kurzbeschreibung
Diese Methode findet den höchsten Wert aus einer Liste von Eingabewerten. Die Berechnung wird nur durchgeführt, wenn die Methode aktiviert ist, und alle Eingabewerte gültig sind. Der höchste Wert wird anschließend als Ergebnis ausgegeben, und der Prozess sowie eventuelle Fehler werden protokolliert.
Besonderheit
- Dynamische Anpassung der Eingänge:
Die Anzahl der Eingangsgrößen kann flexibel zwischen 2 und 50 festgelegt werden, um mit unterschiedlichen Anzahlen von Werten zu arbeiten. - Datentypwahl:
Der Typ der Eingabewerte (z.B.int
,float
,double
) kann über den EingangType
spezifiziert werden, sodass die Methode vielseitig auf verschiedene Zahlenformate angepasst werden kann. - Aktivierungssteuerung:
Der Prozess wird nur ausgeführt, wenn der EingangActivate
aktiviert ist, was eine präzise Steuerung der Berechnung ermöglicht. - Fehlerprotokollierung:
Fehlende Werte bei den Eingängen werden im Log erfasst, und Fehler in der Berechnung werden ebenfalls im Log festgehalten. - Grenzen und Validierungen:
Es sind mindestens 2 und maximal 50 Eingabewerte erforderlich. Zudem müssen alle Eingaben gültige Werte aufweisen, damit die Berechnung durchgeführt wird.
Die Methode TakeHighestValue
sucht den höchsten Wert aus einer Gruppe von Eingängen. Sie wird über den Eingang Activate
aktiviert, der festlegt, ob der Prozess ausgeführt werden soll. Eine flexible Anzahl von Eingängen (NumberOfInputs
) ermöglicht die Anpassung an unterschiedlich große Gruppen von Werten, die zwischen 2 und 50 variieren können. Jeder Eingang muss einen gültigen Wert aufweisen, da die Berechnung bei fehlenden Werten abgebrochen wird und eine Fehlermeldung im Log erzeugt.
Der Datentyp der Eingabewerte wird über den Parameter Type
festgelegt. Unterstützte Typen sind short
, ushort
, int
, uint
, long
, ulong
, float
und double
. Die Methode überprüft diesen Typen und initialisiert nur, wenn ein gültiger Typ angegeben wurde.
Wenn alle Werte bereit sind, iteriert die Methode über die Eingänge und sucht den höchsten Wert. Dieser höchste Wert wird dann als Ergebnis im Ausgang Output
ausgegeben. Die Protokollierung umfasst die Initialisierung, das Setzen des Wertes im Ergebnis und eventuelle Fehler während der Berechnung. Falls die Methode deaktiviert wird, wird dies ebenfalls im Log festgehalten.
- Activate (bool):
Steuerung, ob die Berechnung ausgeführt werden soll. Muss auftrue
gesetzt sein, um die Berechnung zu starten. - NumberOfInputs (int):
Anzahl der Eingabewerte, zwischen 2 und 50. - Inputs (list<any>):
Die Werte, aus denen der höchste Wert gesucht wird. Jeder Wert muss dem festgelegten Typ entsprechen und gültig sein. - Type (string):
Bestimmt den Datentyp der Eingabewerte. Unterstütztshort
,ushort
,int
,uint
,long
,ulong
,float
unddouble
.
- Output (beliebiger Typ):
Der höchste Wert aus der Liste der Eingabewerte. - LogExecute (string):
Ein Protokoll, das Fehler während der Ausführung speichert und anzeigt.
Beschreibung:
Diese Konfiguration sucht den höchsten Wert aus einer Gruppe von 5 Ganzzahlen.
- Eingabe:
Activate
:true
NumberOfInputs
:5
Inputs
: [10, 50, 30, 70, 20]Type
:int
- Ausgabe:
Output
:70
LogExecute
: Protokolliert den Ablauf und zeigtSet value: 70
.


Beschreibung:
Ein Testlauf, bei dem ein Wert in der Eingabe fehlt.
- Eingabe:
Activate
:true
NumberOfInputs
:4
Inputs
: [10, null, 30, 40]Type
:int
- Ausgabe:
Output
: Kein Ergebnis, da ein Wert fehlt.LogExecute
: Protokolliert die Fehlermeldung:1 has no value
.


Wenn ein Eingabewert fehlt, wird die Berechnung abgebrochen und eine Fehlermeldung im Log angezeigt.
Nein, nur numerische Typen wie int
, double
etc. sind erlaubt. Andere Typen führen zur Ausgabe eines Fehlers.
Dies kann passieren, wenn nicht alle Eingabewerte gesetzt sind oder der Typ in Type
nicht gültig ist.
- Version 3.0.10
- First Release
Baustein-Support
Wenn Sie X1-Logik-Baustein-Support benötigen, senden Sie uns bitte zusätzlich den Log (LogExecute und LogSchedule, welcher als Ausgang des Bausteins ausgegeben wird) und eine detaillierte Beschreibung des Problems zu!