Downgrade the database from NAV 2009 R2 to NAV 5.0

Hi all,

I have 2 database, one 5.o version and another 2009 r2 version.

I need to move all the data in 2009 r2 version data to 5.0 version empty data base.

Is there a way to achieve this?

Please help!

I’ve never tried doing a technical downgrade on any database, but I suspect that a determined and persistent individual could find a way to get the objects and data from the 2009 database into the 5.0 database. But, the good luck ends there. If you’re running the 5.0 client executables to run this database, you will face untold and countless problems with the copy of the 2009 database. There are many many new commands, data types, automation controls, object types, etc. that will not run under the 5.0 client executables.

So my first question about what you’re doing is “Why are you doing this?” What’s the purpose of the exercise? You obviously have a good reason for wanting to do this. I’m more interested in the reason, and what it is that you hope to accomplish, than I am in how to do what you’re asking about.

With that in mind, please tell us what your end goal is. Tell us why you want to do this, now why you want to do it this way.

You can not downgrade the version from higher to lower.

Hi George,

I know this one is difficult. The requirement is that to move a country database from one server to another. The current server has NAV 2009 R2 and is in production which has all the current data (being used by clients). They want this to move to another server which has NAV 5.0. Even that is a production server. It takes lot of time to setup a whole new database in this server as many journal etc are posted (a lot of transaction records etc resides there). This is the main reason.

Is there a way to move data?


Basically i dont want to downgrade version. I want to move the data (not the fbk file which is obviously incompatible). Is there a way?

You can take SQL backup of production database and restore it on the server

Check before which version of sql both the database is using as you can restore higher version database backup on lover version of sql server.

Hi Amol,

I restored the sql backup (bak) in sql server management studio and then tried opening that from the NAV IDE. I get error [:(]83671.error.png

You can not open the NAV 2009 database with NAV 5 client

Either you have to install the NAV 2009 or copy the NAV 2009 folder into the server and run the finsql.exe and then open the database.

It will get open.

Amol’s right, there’s no way to run a NAV database that was created with NAV 2009 using the NAV 5 client. It doesn’t matter whether you use SQL backup/restore or native NAV backup/restore. It’s just not possible. The only point I was alluding to earlier was that it might be possible, through brute force, to get some of the objects from the 2009 database into a database build by NAV 5, but I mentioned that only out of academic curiosity. There’s certainly nothing you could do with the database from that point on because of the issues I mentioned.

If you’re hell bent on continuing to use the NAV 5 client, and use it to start working against data from the NAV 2009 database, one option would be to transfer the data out of the 2009 database and into the NAV 5 database. But this is by far no simple task. NAV 2009 has many new tables and fields that don’t exist in NAV 5, so you would have to spend an inordinate amount of time defining your mapping plan. It’s just not a good approach. And don’t even think about trying to merge the 2009 data into the same database and company that you’re running from the NAV 5 client. The best you could hope for would be moving card-type records like customers, vendors, that sort of thing. I wouldn’t even dream of trying to move ledgers from one database into another.

I don’t know why you’re planning to move your production database, but if you have plans to continue to interact with it through a NAV client, that client will need to be 2009 or newer. If you’re just planning to put up a copy of the 2009 database on the NAV 5 server for archival purposes, so you’ll have access to the data, and are not planning to continue adding new data to it, then you can restore the sql backup into your NAV 5 machine and access the data through whatever tools your office uses to manipulate any other SQL database.

I would make a small change, place the code in OnAfterGetRecord since you are able to navigate on the page Previous and Next. At the beginning of the code section I would add ContractCost := 0; to ensure that the cost is not accidentally misstated on the item card if a contract cost cannot be found for another record when navigating but the cost was found for the previous record.