In einem vorherigen Beispiel wurde die Anwendung von den Verzweigungsbefehlen IF-ELSE gezeigt, zusätzlich gibt es aber auch noch die CASE-ELSE Verzweigungsbefehle. Sie werden vorallem dann benutzt wenn man sehr viele Bedingungen prüfen möchte und dazu mehrere Aktionen ausführen will. Theoretisch wäre das mit IF-ELSE auch machbar, aber sehr unperformant. In diesem kurzen Beispiel wird die Funktionsweiße erläutert:
CASE kleidergröße OF //Für den fall das die Kleidergröße...
'S': //- S ist...
korb = S //...lege es in Korb S.
'M': //- M ist...
korb = M //...lege es in Korb M.
ELSE //- eine andere Größe ist...
korb = aussortiert //...lege es in den Korb zum aussortieren.
END; //Hier wird das CASE wieder geschlossen.
Im Beispiel ist "kleidergröße" eine Variable, die die verschiedenen Größen enthalten kann.
Man kann auch mehrere Dinge in einem angeben, bei dem immer die selbe Aktion folgen soll. Außerdem kann man mehrere Aktionen angeben mit BEGIN und END; innerhalb des Anweisungsblocks.
CASE kleidergröße OF //Für den Fall das die Kleidergröße...
'S': //- S ist...
BEGIN //Starte eine Reihe von Anweisungen und...
korb = S //... lege es in den Korb S und...
notiz = 'bügeln lassen' //... füge die Notiz hinzu das es gebügelt werden soll.
END; //Hier beendet man den Anweisungsblock.
'M': //- M ist...
korb = M //... lege es in den Korb M
'L','XL','XXL': //- L,XL oder XXL ist...
korb = L-XXL //... lege es in den Korb L-XXL
ELSE //- eine andere größe ist...
korb = aussortiert //... lege es in den Korb zum aussortieren.
END; //Hier wird das CASE wieder geschlossen.
Wenn ein CASE geöffnet wird muss man es am Ende mit einem "END;" schließen.
FINDLAST ermöglicht es den aktuellen Record in Abhängigkeit von Filter und Schlüssel, nach dem letzten Tabellen-Eintrag zu durchsuchen und diesen auszuwählen. In einer IF-Klausel eingbaut könnte FINDLAST wie folgt aussehen:
IF actualRec.FINDLAST THEN BEGIN
actualRec.Name := 'Letzer Eintrag';
END;
In diesem Beispiel ist "actualRec" der Record aus dem wir kommen. Durch FINDLAST wird der Letzte Tabelleneintrag in diesem Record ausgewählt. Nun kann man den Eintrag wie im Beispiel nach belieben ändern.
Als Gegensatz zu FINDLAST findet sich die Funktion FINDFIRST. Wie bei FINDLAST wird der Record nach einem Wert durchsucht, aber nicht nach dem letzten sondern nach dem ersten, wieder anhand der gegebenen Filter und Schlüssel. Wieder ein Beispiel mit der IF-Klausel:
IF actualRec.FINDFIRST THEN BEGIN
actualRec.Name := "Erster Eintrag";
END;
Wie im Beispiel von FINDLAST ist "actualRec" wieder der Record aus dem wir kommen, und wird wieder durchsucht, aber diesmal nach dem Ersten Tabelleneintrag. Der Record kann dann auch wieder beliebig verändert werden.
In Navision wird üblicherweise das Systemdatum als Arbeitsdatum verwendet. Häufig kann es jedoch vorkommen, dass das Arbeitsdatum geändert werden muss um bestimmte Transaktionen abzuschliessen oder möglicherweise auch zu testen.
Das Arbeitsdatum kann im RTC-Client auf zwei verschiedene Arten geändert werden:
1. Möglichkeit:
Oben links kann über die Dynamics NAV Schaltfläche geklickt werden und ein Arbeitsdatum eingestellt, oder alternativ aus dem Kalender ausgewählt werden.
2. Möglichkeit:
Das Arbeitsdatum kann ebenfalls durch Klicken auf das Systemdatum unten links in der Statusleiste festgelegt werden.
Bei der Eingabe des Datums in Datumsfelder in Dynamics NAV besteht die Möglichkeit anstelle des Datums ein H einzugeben. In das Feld wird dann das Systemdatum eingegeben. Gibt man ein A in ein Datumsfeld in Dynamics NAV ein, wird automatisch das Arbeitsdatum eingefügt.
Bei Daten vom Typ Integer handelt es sich um Ganzzahlen welche Positive und Negative Werte annehmen können.
In Dynamics NAV handelt es sich um Integer mit einem möglichem Spektrum von 32Bit welche zahlen von:−2.147.483.648
bis: 2.147.483.647 abdeckt.
Werden diese Werte überschritten kommt es zu einem Überlauf der dazugehörigen Variable bzw. des Feldes.
Integer lassen sich Subtrahieren und Addieren wird ein Integer jedoch mit einer Dezimalzahl (oder einer Variable vom Typ Decimal) Addiert oder Subtrahiert, entsteht ebenfalls ein Überlauf des Integers. Das selbe gilt für Divisionen und Multiplikationen welche als Ergebniss eine Dezimalzahl hätten.
In Dynamics NAV können Notizen erstellt werden, für die im Rollencenter eine Benachrichtigung für verschiedene Benutzer angezeigt werden kann.
Öffnet man beispielsweise eine Debitorenkarte und ruft im Aktionsbereich Notizen auf, kann ein beliebiger Text in Zusammenhang mit diesem Debitor erstellt werden.
Nach Eingabe der Notiz kann im Feld "An" ein beliebiger Benuzter ausgewählt werden, der diese Notiz als Benachrichtigung im Rollencenter erhalten soll. Der Haken bei "Benachrichtigen" muss hierfür gesetzt sein.
Ruft der angegebene Benutzer nun das Rollencenter auf, erscheint im Fenster "Benachrichtigungen" (sofern dies im Rollencenter eingerichtet ist) die Notiz mit Erstellungsdatum und dem Kürzel des Verfassers, sowie der dazugehörigen Seite (Debitoren). Bei Doppelklick auf die Benachrichtigung wird die entsprechende Seite (Debitoren) geöffnet.