Einen Befehl wiederholen
Sie können Bedingungen zur automatischen Wiederholung eines Befehls (Schleife) festlegen.
Schleifeneigenschaften
Eigenschaften für Schleifen sind für Befehle verfügbar. Diese Eigenschaften finden Sie im Reiter Schleife des Eigenschaftenfensters.
Der Maximalwert der Anzahl der Schleifen. Selbst wenn die Schleifenbedingungsformel WAHR ist, stoppt die Schleife, wenn die Anzahl der Wiederholungen diesen Wert überschreitet. Wenn kein Wert für diese Eigenschaft eingegeben wurde, wird der Wert als 1 interpretiert.
Schleifenzähler
Sie können diese Eigenschaft als Zähler für die Wiederholungen eines Befehls verwenden. Sie können mehrere Werte festlegen.
Schleifeninitialisierungssformel
Diese Formel wird nur einmal ausgeführt, wenn die Schleife beginnt. Sie können mehrere Formeln festlegen. Wenn mehrere Formeln festgelegt wurden, werden alle Formeln ausgeführt. Der Standardwert ist
ME.LoopCounter[1]=1
Schleifenbedingungsformel
Legen Sie hier Schleifenbedingungen fest. Sie können mehrere Formeln festlegen. Wenn mehrere Formeln eingegeben wurden, werden diese alle ausgeführt. Wenn das Ergebnis der Bedingung WAHR ist, wird der Befehl ausgeführt. Der Standardwert ist
ME.Command_LoopCounter[1]<=ME.Command_LoopMaxFrequency
You will use the property "Loop frequency MAX" if you want a loop to repeat for a certain number of times and the property "Loop condition expression" if you cannot define the number of loops. In the latter case, please specify a large number for the loop frequency MAX (i.e., a number larger than the number of times the loop is expected to be repeated with the loop condition expression).
Schleifeninkrementformel
Diese Formel wird ausgeführt, nachdem der Befehl ausgeführt wurde. Sie können mehrere Formeln festlegen. Wenn mehrere Formeln eingegeben wurden, werden alle Formeln ausgeführt. Der Standardwert ist
ME.LoopCounter[1]=ME.LoopCounter[1]+1
Der Ablauf des Schleifenprozesses eines Befehls ist wie folgt.
- Ausführen der Schleifeninitialisierungssformel.
- Ausführen der Schleifenbedingungsformel zur Bestätigung der Schleifenbedingungen.
- Beenden ohne Ausführen des Befehls, wenn die Anzahl der Wiederholungen den Wert in Schleifenwiederholungen MAX überschreitet.
- Ausführen des Befehls, wenn das Ergebnis aller Schleifenbedingungsformeln WAHR ist.
- Beenden ohne Ausführen des Befehls, wenn das Ergebnis einer der Schleifenbedingungsformeln FALSCH ist.
- Ausführen der Schleifeninkrementformel.
- Zurückkehren zum zweiten Prozess.
Wie Sie im Ablauf des Schleifenprozesses sehen können, ist der Standardwert zur Ausführung des Befehls auf einmal gesetzt.
Anmerkung/Bitte beachten Sie
- - Wenn eine der Formeln nicht ausgeführt werden kann, wird der Prozess an dieser Stelle beendet und der nächste Befehl wird ausgeführt.
- - Derzeit funktioniert die Schleifenfunktion nur für Planungsparameter.
- - Jeder der folgenden Werte wird vor Beginn der Schleife festgelegt. Selbst wenn Sie einen davon während der Schleife ändern, wird sich an der Schleife nichts ändern.
- - Schleifenwiederholungen MAX
- - Schleifeninitialisierungssformel
- - Schleifenbedingungsformel
- - Schleifeninkrementformel
Beispiel
Wir verteilen eine 4-Wochen-Planung auf einzelne Wochen und weisen LET jedes Auftrags vorwärts vom Beginn der Woche an, zu.
Einstellen der Schleife
Legen Sie den Wert für Schleifenwiederholungen MAX so fest, so dass die Schleife 4 mal eintritt.
Schleifenwiederholungen MAX | 4.0 |
Zuweisungsstartzeit
Unter Verwendung des Schleifenzählers legen Sie eine Formel für die Zuweisungsstartzeit fest, so dass die Aufträge vom Beginn der Woche an zugewiesen werden.
Zuweisungsstartzeit | PROJECT.SchedulingStartTime+(1w*(PROJECT.CommandReschedule.LoopCounter[1]-1)) |
Aufträge filtern
Unter Verwendung des Schleifenzählers legen Sie eine Formel zum Filtern von Aufträgen fest, deren LETs innerhalb der Zuweisungsperiode liegen.
Aufträge filtern | ME.LET>=PROJECT.BasisTime+(1w*(PROJECT.CommandReschedule.LoopCounter[1]-1))&&ME.LET<PROJECT.BasisTime+(1w*PROJECT.CommandReschedule.LoopCounter[1]) |