Montag, 17. August 2009

Wie kann man in Navision ein DateFormula-Feld vorbelegen?

DateFormula ist ein spezieller Datentyp in Navision in welchem Datumsformeln gespeichert werden. Datumsformeln sind z.B. 1T, 7W, LJ und dienen der Berechnung von Datumsangaben mittels CALCDATE.
Gerade in Navision-Reports werden diese DateFormula-Felder sehr gern benutzt um eine Zeitspanne einzugeben, für welche Statistiken erstellt werden sollen. Manchmal ist es dann toll, wenn man dem Benutzer eine gewisse Vorgabe machen kann, wie z.B. die letzten 3 Monate.
Klar kann man 2 Eingaben vorsehen wie bspw. Von-Datum und Bis-Datum und dem Benutzer die Eingaben überlassen. Wie immer führen viele Wege nach Rom.

Möchte man nun aber mit einem DateFormula arbeiten kommt man sehr schnell zum dem Punkt wo man die Vorbelegung dem Feld zuweisen möchte. Schauen wir uns folgendes Beispiel an:

Variable DA-Formel vom Typ "DateFormula" ist definiert. Die Vorbelegung soll "-3M" sein, was für "vor 3 Monaten" steht.
Die Zuweisung eines Wertes zu einem Feld oder einer Variable in Navision erfolgt mittels " := ".
Also geben wir ein
DA-Formel := '-3M';

Leider führt das zu einem unschönen Compilerfehler beim Speichern. Aber wie kann ich dann eine Vorbelegung in ein DateFormula-Feld eingeben?

Nutzen Sie dazu die EVALUATE-Funktion. In unserem Fall funktioniert also die folgende Anweisung:
EVALUATE(DA-Formel,'-3M');

Mit EVALUATE können Sie in Navision DateFormula-Felder oder -Variablen vorbelegen.

Dienstag, 4. August 2009

Navision Lizenz einspielen

Auch wenn Navision bereits einige Jahre auf dem Buckel hat stelle ich doch immer wieder fest, dass bestimmte Dinge immer wieder den Anwender ins Schleudern bringen. Ein Fall, der öfter als gedacht vorkommt ist, das Module (sogenannte Granules) oder Erweiterungen nachlizensiert werden. Dann bekommen Sie als Anwender von Ihrem Partner oft eine Lizenzdatei zugeschickt und sollen diese in Ihre Datenbank einspielen.

"Bitte was?"
"Das letzte Mal als ich das machen mußte liegt gefühlte 100 Jahre zurück. Ich habe keine Ahnung was ich nun tun soll."
"Ich habe es bereits über den Objektdesigner und Import probiert, aber das klappt nicht."

Hier also die Erklärung:
Ich setze voraus, dass Sie die jeweilige Lizenzdatei auf Ihrer Festplatte gespeichert haben.

1. Lizenz navi_inf.dat in Navision 3.56 aktualisieren
Kopieren Sie die navi_inf.dat in den Ordner auf dem Server, wo der Navision-Server startet. Wo das ist, wird Ihnen sicher Ihr IT-Profi sagen können. Starten Sie dann den Serverdienst neu. Dazu haben Sie oft Command-Files zur Verfügung, von denen eines mit etwas ähnlichem wie "Stoppserver" und eines mit "Startserver" benannt ist. Führen Sie zunächst das Programm zum Stoppen und anschließend das Programm zum Starten des Servers aus.
Im Zweifelsfall booten Sie den ganzen Server neu.

2. Lizenz fin.flf in Financials, Attain und Dynamics NAV aktualisieren
Mit Einführung von Navision Financials wurde die fin.flf als Lizenzdatei eingeführt. Das hat sich bis heute nicht geändert. Wie Sie die Datei am besten in Ihr System einspielen hängt davon ab, ob Sie eine Native-Datenbank oder eine SQL-Installation haben.

2.1 Native Datenbank
Kopieren Sie die FIN.FLF in das Verzeichnis auf dem Server in dem die server.exe liegt, mit der Ihr Server startet. Wenn Sie beim Kopieren nicht gefragt werden, ob Sie die vorhandene Datei überschreiben möchten, sind Sie mit Sicherheit im falschen Verzeichnis.
Starten Sie dann den Serverdienst neu. Je nach Betriebssystem kommen Sie auf unterschiedliche Art und Weise in die Dienste-Verwaltung von Windows. (ggf. werde ich das in einem späteren Posting noch einmal aufgreifen. Merker an mich. Besteht Interesse bei Ihnen? Nutzen Sie bitte die Kommentarfunktion.). Suchen Sie sich einen Dienst der nach "Navisionserver" oder "Navision Financials Server" oder "Microsoft Business Solution Navision Server" riecht. Markieren Sie die Zeile und klicken Sie oben im Dienstefenster auf das Symbol mit dem Viereck und dem Dreieck rechts daneben. Denken Sie an Ihren DVD-Player oder Videorekorder und Sie werden verstehen was ich meine. :-)

Sollten Sie noch weitere Navision-Serverdienste (Applikationserver) am laufen haben, so wiederholen Sie das Procedere pro Serverdienst.

Mit dem Neustart des Serverdienstes ist die Lizenz aktiviert.

2.2. Fin.FLF für Navision auf SQL-Server einspielen
Ist das Einspielen der Navision-Lizenz unter Native-Bedingungen für viele noch ein Horror, so gestaltet sich das Updaten der Lizenz bei einer SQL-Server-Installation sehr einfach.
Klicken Sie im Menü "Extras" auf "Lizenzinformation" und nutzen Sie dort den Button "UPLOAD" (den haben Sie nicht in der Native-Version). Wählen Sie die Lizenzdatei und bestätigen Sie die Auswahl. Erledigt. Easy, oder?

PS: Wenn Sie jemand fragt, ob Sie eine Nativedatenbank oder eine SQL-Server-Datenbank haben und Sie sind sich nicht sicher, dann schauen Sie in die Lizenzinformationen (Menü "Extras"). Haben Sie da einen Upload Button, arbeiten Sie auf einer SQL-Datenbank, wenn nicht dann auf einer Native-Datenbank.

Haben Sie dazu noch Fragen? Soll ich bestimmte Aspekte detaillierter herausarbeiten?
Zögern Sie nicht und hinterlassen Sie mir einfach einen Kommentar. Ich werde Ihre Anregungen, Tipps und Kritik aufnehmen und berücksichtigen.
Keine Angst - dieses Blog beißt nicht. :-)