BREAK;
BREAK
Der Befehl BREAK wird genutzt um Wiederholungsanweisungen abzubrechen.
Hinweise
Üblicherweise kommt dieser Befehl innerhalb FOR-, FOREACH-, WHILE- und REPEAT-Schleifen zum Einsatz um die Wiederholung unter einer bestimmten Bedingung zu beenden. Der BREAK-Befehl unterscheidet sich von der BREAK-Funktion (Report, XMLPort). Zwar werden in beiden Fällen Schleifen unterbrochen, jedoch bricht die BREAK-Funktion den gesamten Trigger, in dem sie aufgerufen wurde, ab.
Beispiel
Zunächst werden drei neue Variable hinterlegt.
| Name | Datentyp | Subtyp |
|---|---|---|
| SalesHeader | Record | Sales Header |
| SalesLine | Record | Sales Line |
| x | Integer |
Anschließend wird folgender C/AL-Code eingefügt.
SalesHeader.GET(SalesHeader."Document Type"::Order,1001);
SalesLine.SETRANGE("Document Type",SalesHeader."Document Type");
SalesLine.SETRANGE("Document No.",SalesHeader."No.");
IF SalesLine.FINDSET THEN
REPEAT
x += 1;
IF SalesLine.Type = SalesLine.Type::Item THEN
IF SalesLine."No." = '70000' THEN
BREAK;
UNTIL SalesLine.NEXT = 0;
MESSAGE('Abbruch bei Zeile %1 von %2',x,SalesLine.COUNT);
Sobald der Code ausgeführt wird, erscheint folgende Nachricht wenn der Artikel mit der Nummer 70000 gefunden wurde. Dabei ist zu beachten, dass nicht alle Zeilen durchlaufen wurden.