Navision 3.56 & 3.04… Echt?

Ja, es lebt noch.. und es hat es auch noch verdient!

DOS Navision 3.56

In keinem ERP konnte man schneller Aufträge erfassen, Daten pflegen, Programme anpassen, Berichte designen…
Klar, keine Maussteuerung, Clipboard als Zwischenablage musste extra und pro Datenbereich programmiert werden, für eMails musste getrickst werden weil der Klammeraffe @ für die Farbensteuerung reserviert war… Aber schnell! Und ich konnte auch schon damals mit diesem System PDF’s erzeugen, jede Nacht automatisch Sammelrechnungen erstellen und ausdrucken, alle 5 Minuten Webshopaufträge einlesen und auch einen Webshop mit Daten versorgen.
Gut, heute geht mehr, Navision 2009R2 ist für mich das Maß der Dinge (in meinen Augen ist 2013 und 2015 ein Rückschritt, wegen Matrixformen, komplizierter Bericht- und Formularprogrammierung, und ganz besonders der kaum noch nutzbaren Tastatursteuerung). Aber noch immer (oder gerade in heutigen Tagen wieder) schlägt mein Programmiererherz schneller, wenn ich mal wieder an einem 3.56er sitzen und programmieren darf. Und, ganz alt und doch neu: Sogar an Navision 3.04 🙂
Nachtrag (der Artikel hier war schon etwas älter): Seit Navision bzw. Business Central 365 BC14 bin ich nun auch wieder komplett mit „dem neuen“ Navision ausgesöhnt 🙂 Der Scheduler arbeitet wieder 100% zuverlässig, der Editor ist wieder sehr gut benutzbar (und, wer es moderner mag, kann mit den Extensions auch in Visual Studio Code programmieren, und und und… Microsoft hat da echt gezaubert!
Staffelpreise, Angebotspreise, Gutschriftskonto, DTA oder auch SEPA-Dateien, (Halb-) automatische Belegzuordnung aus MTA940 Dateien, Buchhalterunterstützung durch automatische Belegnummernsuche, Auftragshistorie mit Schnellerfassung (Liste aller vom Kunden in den letzten 365 Tagen gekauften Artikeln mit Möglichkeit einer Mengeneingabe, daraus werden automatisch Auftragszeilen) … Es ging alles damit! Richtig lustig fand ich eine Steuerung für ein Tiefkühllager. Dort hatte der Junior jeden Morgen in seiner Tabelierpapierliste (keine Ahnung wie das ERP damals hieß) mit 7 Textmarkern die Auftragspositionen farblich pro Lagerteil markiert. Mit Navision 3.56 und einem Epson Stylus Colour habe ich Ihm die Liste dann innerhalb von Sekunden fix und fertig farbig ausgedruckt.
Bei einem anderen Kunden habe ich A4 Plakate mit unterschiedlichen Schriftgrößen gedruckt. Bis zu 72 Punkt, für Aktionsware in einem Sonderpostenmarkt. Und der Plakateditor hat in Navision sogar die richtige Anzahl Zeilen und Zeichen pro Zeile vorgegeben, abhängig von der Schriftgröße. Das ginge mit Navision neu gar nicht mehr so einfach.

Wenn Ihr denkt, euer 3.56 wäre veraltet und kann im 21. Jahrhundert nicht mehr mithalten, helfe ich euch gerne dabei das mal zu überprüfen. Wie geschrieben: Es gibt auch heute nichts Schnelleres!

Und… Die Online Hilfe konnte man in diesem System noch kinderleicht selbst editieren und erweitern! Echt!

Wer kennt sie nicht.. Und wer hat Sie nicht geliebt.. UND gehasst?
Die geschützten Objekte in Navision 3.5x

Natürlich helfe ich euch auch gerne dabei diese Geschützten Objekte zu öffnen, wenn Ihr das müsst.
Nein, ich verrate nicht wie es geht. Wer aber damit mal spielen möchte: Es ist kinderleicht, wenn man einmal verstanden hat, wie DOS Navision die Objekte schützt. So viel sei verraten: Das eigentliche Objekt wird NICHT verschlüsselt 🙂 Bei mir hat dann sogar Navision 3.56 beim Öffnen geholfen.

Wer noch ein bisschen Erinnerung braucht:
Startparamter: Die lassen sich mit NAVIN.exe ? (oder NAVI.exe, NAVI2.exe) anzeigen.

Beispiel: 
NAVIN ID=UserX,SOUND=Ja, SERVERNO=1,NETTYPE=tcp,MACRO=Script.mac,TEMPATH=c:\temp,DEBUG,KEYBOXPATH=C:\Lic\navi_inf.dat,SERIALNO=08154711,AUTOENTER

ID=C:\ZUPs\UserX Navision benutzt diese Datei, um darin alle Einstellungen (Felder, aktuelle Datensätze, Report-Einstellungen, Farben, F6-Auswahlen…) abzuspeichern. Diese Dateien können, ganz im Gegensatz zu einer Fin.ZUP-Datei, beliebig kopiert werden.
SOUND=Ja In der Tat! Man konnte bei Navision 3.04, 3.5x, 3.56 tastächlich einstellen, ob ein ErrorBUP oder ein IchBinFertigBIEP ausgegeben werden sollte.
LOCAL Ob Navision 3.5x sich mit einer lokalen Kopie verbinden soll. Navision bis zur Version 2009R2 konnten gänzlich ohne Server arbeiten, Sie brachten ein eigenes DB-Management mit! Die Technik dazu gibt es auch noch in allen Folgeversionen… wenn Sie sich mal gefragt haben, wie Navision / Business Central eigentlich temporäre Tabellen verwaltet, und warum die auf 2 Gb Nutzdaten beschränkt sind.
SERVERNO=x Hierüber wurde Navision angewiesen, einen bestimmten Server aus der Datei c:\windows\system32\drivers\etc\hosts zu nutzen. Dazu musste „links“ die IP_Adresse, „rechts“ der Servername im Format naviservX (z.B. naviserv1) hinterlegt werden. Der Textteil „Naviserv“ ist hardcodiert und kann nicht geändert werden.


192.168.0.1 naviserv1


Außerdem musste der Port und das Protokoll in der Datei c:\windows\system32\drivers\etc\hosts hinterlegt werden,im Format naviserv1 Port/Protocoll

naviserv1  2407/tcp #ErsterServer

DATABASE hiermit konnte die Datenbank angegeben werden. Wenn sich die Ablageorte von einzelnen DB-Teilen geändert haben, konnten die neuen hier verkettet werden: DATABASE=C:\Datenbank\ErsterTeil.db+C:\Datenbank\ZweiterTeil.db.
Da sich alle Parameter die maximal erlaubten 127 Zeichen der Kommandozeile teilen mussten, wurde hier oft auf Kurzschreibweise umgestellt: DATABASE=C:\DB\1.db+ C:\DB\2.db

CACHE Angabe des Lesecaches in Kb (!). Besser nicht über 1 Gb, z.B. 999999

COMMITCACHE In den Nachfolgeversionen von Navision (Financials, FIN) wurde der Commitcache nur noch mit 1 oder Yes oder Ja (je nach Version, 1 geht immer) angeschaltet und dynamisch vom System verwaltet. In Navision 3.53, 3.55, 3.56 Euro gibt man ihn noch direkt an. In dieser Version gab es noch keine Temp-Tables, alle Tabellenoperationen liefen immer auf dem Server! Der Schreibcache kam erst in der Version 3.55 hinzu, vorher gab es diesen noch nicht.

NETTYPE Angabe des Netzwerkprotokolls. Der zugehörige Protokollstack musste als NC_xxx.DLL & NC_xxx.OVL Datei im Programmverzeichnis liegen! Navision hat dann einfach den Parameter von NETTYPE (z.B. NETTYPE TCP) in den Namen eingebaut und diese Datei dann geladen. So wurden dann per NETTYPE TCP die Dateien NC_TCP.DLL und NC_TCP.OVL geladen. Dementsprechend gab es NETB für Netbios, die Hauptkommunikation unter Windows 3.11, TCPM für TCP Microsoft, ab Windows 3.11 und Windows 95, TCPN für TCP über Netware, und auch noch TCPW, auch eine Spezialversion für Windows.

DBTEST um die Datenbank zu testen, es gab DBTEST=MIN (prüfte nur die Daten auf Vollständigkeit und Lesbarkeit) sowie DBTEST=MAX, prüfte auch die Relationen zwischen den Tabellen und die Sekundärschlüssel. Wer die Datenbank einfach nur per „Kopie“ „gesichert“ hat, sollte später die Kopie mindestens mit DBTEST=MIN einmal prüfen. Datensicherungen per Macro (Ja, das ging damals!) waren aber die bessere Version.

DBREADONLY diente dazu, eine Amoklaufende Datenbank zu bändigen, um zumindest noch eine funktionierende Datensicherung zu erzeugen. Die Navisiondatenbank war aber praktisch unkaputtbar, man musste schon mit der Brechstange an die Datenbankdateien, um etwas kaputt machen zu können. Und Schnell….

MACRO Ja! Man konnte über „Allgemein“ ein Macro aufzeichnen, welches jeden Tastendruck protokollierte, und dann später genau dieses Macro beliebig, auch Zeitgesteuert, wiedergeben zu können. Automatische Datenausgaben, automatisches Einlesen von Webshopaufträgen, automatisches Erstellen von Bestellvorschlägen und Sammelrechnungen… Ging alles!

TEMPATH Navision 3.x lagerte wenige Pufferdaten (Eigentlich nur den Berichtsspooler) in diese Datei aus. Eine Berichts-Vorschau oder Stapelverarbeitung konnte so beliebig gescrollt werden, genau diese Anzeige wurde hier gepuffert.

DEBUG Ein magischer Schalter! Mit DEBUG=Ja wurde der Debuger aktiviert, mit welchem beliebigem Programmcode von Navision 3.04, 3.55, 3.56 etc. auf die Finger geschaut werden konnte. Bis hinunter zur Assembler-Ebene!

KEYBOXPATH Hiermit ging das ganze Licht an. Wie Später bei Financials mit Extras/Lizenzinformation/Ändern konnte hier schon bei dem DOS-Navision („Blaue Version“) mit einer Entwicklerlizenz gearbeitet werden. Navision konnte aber damals auch noch etwas: Objekte schützen. Dann wurde der Schlüssel der genutzten Lizenz mit in das Objekt geschrieben, und der Editor öffnete dieses Objekt dann auch nur noch bei Zugriff mit dieser Lizenz. Lies sich aber umgehen. Keyboxpath=a:\
Diese Lizenz lag oft auf einer Diskette, die war damals so etwas wie ein Generalschlüssel. Damals hatten noch praktisch alle PC’s ein Diskettenlaufwerk.

SERIALNO brauchte man, um Navison mit einer eigenen Entwicklerlizenz zu starten (Keyboxpath), mit Serialno musste man dann die Seriennummer der Serverlizenz angeben, mit der man sich verbinden wollte.

AUTOENTER Gerade in Verkaufszeilen praktisch: Wenn die Beschreibung zu Ende war, sprang Navision bei Autoenter=Ja direkt in Beschreibung Zwei. Wenn in den Fenstertabs ein RÜCKsprung definiert war, so wechselte Navision dann sofort in eine neue Zeile. So konnte man auch in Feldern á 30 Zeichen sehr komfortabel (1990!!!) lange Texte eingeben.

Dazu gab es noch weitere Befehle, wie DBGROUP und SEALSTX, die aber normale Anwender nicht brauchten oder auch gar nicht benutzen konnten. Über SealSTX konnte eine modifizierte STX (SystemTeXte) Datei für Navision verdaulich gemacht werden. Hiermit waren z.B. versteckte Menübefehle freizuschalten.