Dynamically loading assemblies at runtime

  • Reading time:6 mins read

When you spend more time in C# than C/AL, and you still tell yourself and the world around you that you are developing for NAV, then this post is for you.

I already wrote a three-article series about “DLL hell” and how to resolve it, and in my last post in the series (https://vjeko.com/sorting-out-the-dll-hell-part-3-the-code) I delivered some code that help you take control of your .NET assemblies.

This time, I am delivering an updated solution, one that solves all the problems others, and myself, have encountered in the meantime.

So, fasten the seatbelt, and let’s embark on another .NET interoperability black belt ride.

Continue ReadingDynamically loading assemblies at runtime

Database deployment of add-ins in NAV 2016 is broken, big time

  • Reading time:9 mins read

If you are developing .NET assemblies for use with NAV, then sooner or later you’ll figure out that the new database deployment of add-ins in NAV 2016 is broken.

I’ve just suffered through medieval torture of attempting to have my NAV forget about a database-deployed assembly.

First of all – if you are merely consuming an off-the-shelf assemblies developed by somebody out there, you’ll probably not need to worry at all. However, if you are developing your own assemblies, then sooner or later you’ll find yourself stretched in exactly the same torture rack.

Continue ReadingDatabase deployment of add-ins in NAV 2016 is broken, big time

Upgrade Codeunits in NAV 2015

  • Reading time:7 mins read

Once upon a time, and really not such a long time ago, there was no such thing as a codenit type. In all honesty, there is still no such thing as a codeunit type – there is subtype, though. (Why we have subtypes, without having types, beats me, but let’s let the semantics go.)

Nowadays, we have four codeunit types. NAV 2009 SP1 brought along the Test and Test Runner types, which – in my experience, at least – haven’t seen much runtime (which is a pity, if you ask me). And now NAV 2015 brings along another type: the Upgrade codeunit type. The mere sound of it makes my heart thrill. The Upgrade codeunit. Mmm.

Continue ReadingUpgrade Codeunits in NAV 2015

Default database approach

  • Reading time:6 mins read

Last Friday, while enjoying a not-at-all healthy Salisbury steak with cheese, I had an interesting discussion with a partner: should NAV consultancies create default databases?

A default database (in this context) is a packaged solution built upon standard Microsoft Dynamics NAV, where a consultancy has introduced a number of features that they sell to all their customers as the standard solution, instead of standard NAV. The modifications to standard NAV can range from simple report adornments to minor feature improvements  to full-scale horizontal or vertical functionalities.

Continue ReadingDefault database approach

Cool undocumented feature

  • Reading time:1 min read

I hate it when I don’t have time to blog. I’d like if I could tell you what I’ve been doing, but let’s leave it at this: I am enjoying my vacation, away from my office, my job, my projects, my customers, my partners, and obviously – my blog. You should take a vacation, too – great stuff!

Another thing I hate is to start anything with “I hate”. So, let’s switch the tone.

I love undocumented features. They afford you some brag time with your friends and colleagues. I’ve just found about a great undocumented feature in Microsoft Dynamics NAV: import objects from a .FBK backup (found on Plataan Knowledge Blog). If you just need the objects, there is no need to restore the whole database. Nice one!

(I already see myself using this – after the vacation, of course…)

Continue ReadingCool undocumented feature

Mystery laptop

  • Reading time:2 mins read

I had no clue how good my laptop was. Seriously. Today it kicked ass of an 8-processor server.

Tomorrow we have a go-live of a Microsoft Dynamics NAV deployment, with manufacturing customized to support configure-to-order functionality. Refreshing manufacturing orders now calculates dynamic BOMs and routings, and it takes time.

Continue ReadingMystery laptop

Native vs. SQL: The Delta

  • Reading time:9 mins read

Early versions of SQL Server option for Microsoft Dynamics NAV (then called Navision) didn’t scale up as high as one would expect. Although SQL Server itself could scale up to thousands and tens of thousands of concurrent users, running a production environment of an ERP system is way different from running generic lab tests.

SQL Server 2000 brought many improvements, and finally outperformed Navision Database Server at any level of user concurrency. SQL was gaining momentum, and became the platform of choice for new implementations of Navision. When SQL Server 2005 came out, and when support for it was included in Microsoft Dynamics NAV 4.0, it could outperform the native database platform as much as 35%.

Continue ReadingNative vs. SQL: The Delta

Native vs. SQL: The Evolution

  • Reading time:5 mins read

One of the choices a customer interested in Microsoft Dynamics NAV must definitely make is the choice of the database platform. With NAV, there are two possible options: so called native database server, which is not really officially called that (the official name is Microsoft Dynamics™ NAV Database Server), and Microsoft SQL Server.

Continue ReadingNative vs. SQL: The Evolution