Navision 3.56 Euro (DOS) database clean up

Introduction

In Navision 3.5x under DOS (or Windows in the text window) it may be necessary to clean up the database of old corpses. However, this is - in part - much more complex than in the newer Windows versions.

With these instructions here and a little batch processing from me (please contact me) it will be very easy.

By the way: I am also available for an update from the blue version of Navision (Navigator, Avista) 3.56 to the current version ... although you can still work really well with this DOS version today. Even under Windows 10 64 bit, without a virtual machine, just start like that!

Navision 3.56, unter DOS.Navsion Blau oder "Blaues Navision" benannt, oder auch DOS Navision, Altes Navision
Navision 3.56, the most popular version of Navision under DOS. To distinguish it from Navision Financials, this version was often called Navision Blue or "Blue Navision".

It sounds unbelievable, but the "Blue Navison Version" introduced in 1993 (If you're wondering where the name comes from? Take a look at the screenshot 🙂) still runs today under Windows 10 Pro 64 Bit without complaint. And even with NAVIN.EXE as a real 32-bit application with plenty of RAM!

And if you ever get this error message:

The operating system cannot find the following file:
And there is nothing underneath, i.e. no file name: Then a recent Navision session is hiding and the database file can still access the associated database driver NAVI_DC2.exe (Navision Database Cache Control, all reading and writing accesses to the native database go through the cache controller, which then makes sure that data not available in RAM is fetched from the disk. That is why you can use two or more Navisions at the same time on one PC without a database server).

Restart the computer and everything will be fine.

A customer hadn't really taken care of the utilization of his database and was now faced with a database utilization that made further use impossible. But of course I am still happy to provide advice, customization, assistance and support for the blue version!

In principle, the Navision 3.56 (DOS / OS/2 / Windows) database is incredibly robust, but here the previous software provider (I suspect it was GWS from Münster, there were many references to "ELVIS", like one of their industry solutions was once called) really cause problems.

So bad that the logical data backup of Navision DOS 3.56 could no longer be used! At least not without a suitable AL key, the magical Navi_Inf.dat.

The database was pretty full. At that time the database was still paid for by size, a database extension can no longer be bought. If you try to read in the logical backup, you get this error message when sorting the tables:

You do not have enough free space in your database to complete this task. To create free space, try ...
*to enlarge the database file (not possible, because of the license)
*delete unnecessary data (receipts were not so easily deleted in the blue Navision!)
*to compress old entries (even for small compressions there was not enough space)
*to optimize the database (even for small optimizations there was not enough space)

That wasn't toooooo bad yet. Well, you can simply sort the tables afterwards using the batch processing "Sort all files".

But: not in the GWS ELVIS system!

Reason: The table "User data" is opened in function (today Codeunit) 1 by the system and is then blocked for the runtime of the Navision. OK, you can take it out quickly ... Nothing doing!

Fehlermeldung Das folgende Objekt kann nicht mit dem Editor bearbeitet werden.Objekt: Funktion 'Mandant'.Dieses Objekt wurde beim letzten Sichern geschützt. Nur das Programm mit der Seriennummer 49-N3Axxxxx hat Zugriff auf dieses Objekt
The following object cannot be edited with the editor.
Object: 'Client' function.
This object was protected the last time it was saved. Only the program with the serial number 49-N3Axxxxx has access to this object.
The central start function of Navision was blocked by GWS (?)!

And so the table keys can only be reactivated individually with enormous effort via design / files / keys, given that you have a valid program license (navi_inf.dat) for the card design!

This customer didn't have that. So he would be helpless in the event of a database crash if he only had a logical backup.

And the logical backup is usually THE guarantee to get a Navision running again. It's pretty stupid what this programmer has come up with here.

We got the database up and running after all.

Preparation

First you have to copy the database file. You never know.

By the way, with the blue Navison 3.56 DOS, the FIRST database part "knows" where the other database parts are located. This is saved under "Database maintenance" / "Extend database". This is then specified with NAVI.EXE or NAVIN.EXE or, under OS/2, with NAVI2.exe (DOS extender) and the parameter database=firstb+secondb+thirdb.

If you have many database parts (I think up to 16 were allowed, 2 Gbyte each, because of the file system of the 90s), you have to keep the names of the database parts very short, the command line was only allowed to be 128 characters long...

Navision 3.56 start parameters

By the way, the blue Navision 3.5x DOS reveals the usable parameters with NAVIN.EXE ?

Parameter für die navin.exeDATABASE CACHE COMMITCACHE NETTYPE DBTEST DBREADONLY MACRO TEMPPATH DEBUG KEYBOXPATH SIERIALNO AUTOENTER
Parameter for the navin.exe
DATABASE which database is to be used
CACHE Read memory size, max 64000
COMMITCACHE Size of the write memory, max 64000, important for restore and compression
NETTYPE TCP or NETBios
DBTEST carries out the DB tests as selectable under data sizes
DBREADONLY e.g. for database recovery
MACRO Yes, Navision 3.56 Euro (the blue version) was already capable of macros, e.g. importing orders from a webshop every 10 minutes or making a logical data backup every night!
TEMPPATH Where should the __TEMP__ files be stored?
Activate DEBUG Debugger ("Austester"), it will then be visible in the General menu
KEYBOXPATH Path to the developer AL key file Navi_inf.dat (previously usually on a floppy disk!)
SERIALNO When using a third-party navi_inf.dat, you had to enter the serial number (see start screen) with which you want to connect.
AUTOENTER As soon as a field is full, Navision automatically jumps to the next field. Great e.g. for entering long texts in claddings such as sales lines.
Reminder: The blue version was also able to call up a standard text in every text field with ?xxx!

Start parameter NETTYPE

Which network types does Navision actually recognize? You can see this in the program directory:


Use the NETTYPE start parameter to specify which NetworkControl Navision should start.

NETB stands for Netbios, earlier Windows versions and used in Novell networks.

TCPW stands for Windows TCP as introduced in Windows 3.11. Microsoft's own Netbios, which was also introduced in Windows for Networks 3.11, is also addressed via NETB.

TCPN is TCP/IP, which was later introduced by Novell.

I think TCPI stands for IBM's Token-Ring TCP (hence the I), but that's where my memory is getting a little fuzzy.

TCPM could then stand for Microsoft's DOS TCP.

And: Yes! The blue Navision 3.5x actually ran under OS/2 (the first Financials and Atain versions too! That's what NAVI2.exe was for), under DOS (that's what NAVI.exe was for) and under Windows (NAVIN.xe).

Under Windows, either NAVI or NAVIN.exe could be used. I believe N stood for NewTechnology, i.e. Windows NT, under which the blue Navision always ran! There it accessed the DOS extender, which allowed practically unlimited memory access (RAM) and thus significantly more complex program sequences.

As a reminder: Navision did not have a real object cache back then, as it was introduced with Navision 2.01. EVERY object was fetched from the server at runtime (well, there were a few KB of cache...) and then executed in memory.

Compress smaller data keys

First select many small tables with CTRL+F1:

Then set the selection filter with CTRL+F7 CTRL+F7 CTRL+F1 ESC.

Then click on Compress:

and please answer yes to the question.

Please do this one after the other until all "small" tables are compressed.

You can see that the percentages under Usage are now higher for some tables. This also means that there is a little more space in your database because less "air" is stored.

You can become bolder from time to time and include larger and larger tables.
If you were too brave, Navision will tell you:

You can then simply remove the largest table from the selection with CTRL+F1.

Then delete the selection and continue with other tables. This is a Sisyphean task.

Ignore tables with 1 or 2 sentences, nothing can be compressed.

You can also filter several consecutive tables by pressing CTRL+F7 on the Numm (number) column. This is sometimes more elegant than the record filter.

Or with e.g. 114|115|124|125

You CANNOT access the large tables in this way, e.g. goods items!
But you create so much space that you can import and run my delete function.

Reading in data deletion

Objekteinlesung unter NAvision 3.56 Euro (blaue Version)

Now call up this batch processing:

Stapelverarbeitung für Navision 3.56 Euro (blaue Version) löscht ohne AL Schlüssel (Navi_Inf.dat) alte Daten aus der Datenbank. Euro-Konvertierungshistorien, alte Belege
This batch processing under Navision 3.56 Euro (blue version) deletes old data from your database even without an AL key (Navi_Inf.dat). Euro conversion histories that are no longer required, old (older than 10 years) documents.

This batch processing confirms the database again and again. As a result, it can delete masses of data without a "not enough memory" error occurring.

The filter for "Older 10 years" is permanently programmed and dynamic. This batch processing can therefore be called up again every year and it then deletes the exact year that has expired.

The euro conversion is of course gone after the first run. Nobody ever needed the data anyway.
During the first run, the system will therefore still appear "frozen" at the end, but Navison will continue to work until the status bar reports completion:

There is now considerably more free space in the database.

Before and after:

Compress data

When data is compressed, data records are combined (totaled) in such a way that the results (item stocks, G/L accounts or customer or vendor balances, open items) do do not change. However, individual information, i.e. individual invoice numbers, posting descriptions, etc. are of course lost. At the end of the 10-year retention period, this is perfectly acceptable.

The same rules apply for the blue Navision version as for Financials Attain and Navision or Business Central: you must also hand over data that you keep in the IT system for a GdPDU! This alone suggests that you should also delete old data in this Navision version. In addition, the GDPR is another reason why data should not be kept indefinitely.

Settings for the dunning items:

Setting for the inventory items:

You can put as many fields as you like in the selection, Navision will complain if a field is forbidden:

Then simply remove this field again. At some point, the compression of bookings can be started. And it was already super fast back then! This is all technology from 1993!

Komprimieren von Buchungen in der blauen Version von Navision 3.56
Compressing bookings under the blue version of Navision 3.56 Euro

In the progress you can then see how sentences are cleaned up (content is deleted) and sometimes entire sentences are deleted.

Navision "knows" the rules for each table that it offers for compression. For 100% security, a data backup should of course be made beforehand, but as a rule this compression works very reliably.

For the goods items, the biggest chunk, I have written down the deletable fields here, otherwise it takes quite a long time to do this by try and error:


Accounts payable:

(The same for accounts receivable).

And the material items:

Auswahlfelder zum Löschen beim Komprimieren von Sachposten unter Navision 3.53 DOS

Now that a massive amount of data has been deleted in the blue Navision 3.56 EURO under DOS, the system could still be used.

It's really stupid that the system house has really checkmated such a beautiful system so hard with your NAVI_INF.dat / your AL key (yes, under this Navision it was also called AL!).

Assembler debugger in the blue Navision 3.56 version

Because I just had the system in my hands: Do you know the REAL C/AL debugger from the blue DOS Navision?

navin.exe debug to activate the debug mode. Normally, the path to the license file would also be specified here with keyboxpath.

The debugger can then be activated here:

Activating the debugger under Navision 3.56 Euro Blue

Well... this part of the blue Navision 3.56 Euro Debugger is certainly familiar to anyone who has worked with the system even once.

But... Just one button away is the real debugger, with the real assembler code that Navision actually executes!

How stupid: Unfortunately, this key combination no longer works under Windows 10. I will install a blue Navision under HyperV/Dos and submit the corresponding screenshots later.

Screensaver in Navision 3.56 Euro

The current screen, a DOS screen after all, could be saved with the integrated screensaver using CTRL+D. Does anyone know how to make the contents of the screenshot file visible again? That was soooo long ago...

The ANSI screensaver integrated in the blue Navision 3.56 Euro