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.