Schleife unterbrechen[gelöst]

12. April 2016 15:10

Hallo zusammen,

ich würde gerne ein break in eine Schleife einbauen, leider finde ich nicht heraus, wie und ob das in Navision 2013 funktioniert.

Mein Gedanke:

Tabelle.SETFILTER(Artikelnr, VariableArtikelnr);
IF Tabelle.FIND('+') THEN REPEAT
i+=1; //integer
IF i > 3 THEN
BREAK; //klappt logischerweise nicht
UNTIL Tabelle.Next(-1) = 0;

Ich möchte also nur die letzten drei Datensätze meiner Tabelle, alle weiteren sind für mich völlig irrelevant.
Wie kann ich das eventuell auch anders bewerkstelligen?

Gruß

Kristin
Zuletzt geändert von Kristin K. am 12. April 2016 15:29, insgesamt 1-mal geändert.

Re: Schleife unterbrechen

12. April 2016 15:18

Code:
until (next(-1) = 0) or (i = 3)

Re: Schleife unterbrechen

12. April 2016 15:29

Danke! Ich wusste nicht, dass man an dieser Stelle mehrere Argumente anbinden kann.
Ist natürlich völlig logisch und funktioniert!
Wie mein Ausbilder heute schon so schön sagte: Manchmal brauchts einfach zwei Gehirne ^^ Danke für deins

Re: Schleife unterbrechen

12. April 2016 15:32

BREAK; //klappt logischerweise nicht

In NAV 2013 noch nicht, aber BREAK in Schleifen wird ab NAV 2016 unterstützt.
http://dynamicsuser.net/nav/b/vanvugt/posts/brexit-nope-break-lt-gt-exit

In älteren Version kann man bei Abbruchbedingungen je nach Anforderung nur REPEAT-UNTIL oder WHILE-DO einsetzen
http://www.hummelwalker.de/2009/12/08/die-schleifentypen-in-navision-repeat-until-while-do-for-to/

Über ASCENDING(FALSE) kann man auch die Sortierung der Tabelle umdrehen und dann die ersten drei Sätze nehmen, das vereinfacht den Code.

Re: Schleife unterbrechen[gelöst]

14. April 2016 11:10

Kowa hat geschrieben:In NAV 2013 noch nicht, aber BREAK in Schleifen wird ab NAV 2016 unterstützt.
http://dynamicsuser.net/nav/b/vanvugt/posts/brexit-nope-break-lt-gt-exit

In älteren Version kann man bei Abbruchbedingungen je nach Anforderung nur REPEAT-UNTIL oder WHILE-DO einsetzen
http://www.hummelwalker.de/2009/12/08/die-schleifentypen-in-navision-repeat-until-while-do-for-to/

Über ASCENDING(FALSE) kann man auch die Sortierung der Tabelle umdrehen und dann die ersten drei Sätze nehmen, das vereinfacht den Code.


Danke! Das hilft mir auch sehr, dann freu ich mich mal auf NAV 2016 (oder nächste Version), wenn wir dann mal umstellen sollten.

Re: Schleife unterbrechen[gelöst]

5. Januar 2022 12:55

Bild
Quelle: https://t.co/P6CbR8TwVr