Part 1: Why Do You Need to Understand the Technical Structure of Dynamics NAV

Why does a business decision maker need to know about the technical structure of the product I hear you ask? Well it keep to lots of restrictions about the way Dynamics NAV works and it’s performance so I am by explaining it to give you insight into that in this 6-part series.

Clients & Servers

First let’s look at what we ‘geeks’ call the client server structure. Put simply it means – what computing units do you need to run Dynamics NAV these days. I called them computing units deliberately because actually all three can be on the one physical computer or all three separate physical or virtual machines, or any variation in between.

First we have the bit that users interact with, which we call the client. This can be either a windows PC with programmes installed, a web browser used to connect to a Dynamics NAV web site or an app on our tablet of choice; ones from Apple, Google and Windows are supported.

These all have to talk to another computing unit called a middle tier. This is a ‘server’ that does all the processing of information, implementing your business logic and updating the information as you input it. The number of clients that can talk to one ‘middle tier’ depends on what they are doing, but I would not recommend over 50 where they are doing any serious work.

Finally, at the back we have the database server. This is simply a SQL database server which stores the information input after it has been processed and verified by the middle tier. You can only have one of these per system although they can be clustered to provide a level of fault tolerance if one falls over. Clustering SQL is expensive though and be prepared for eye watering increases in SQL licence costs (to enterprise edition) and to pay of two lots of hardware, one of which will just sit there in case it’s needed.

Finally, we can split the middle tier processing service from the web server, if the loading on the web server and mobile client makes it sensible. Splitting it off to a separate server is a performance and security decision rather than a fault tolerant one because if the middle tier doesn’t work then your web server won’t operate. Splitting it out then is only sensible when you either want to publish the website out onto the Internet and then having the web server in a special DMZ or buffer zone between the internet and your critical systems protects you against hackers.

The other reason is that your middle tier is running too slow and you need to create extra resource for it to use. Moving the web server to a separate service is one way to do that.

Having said all this Dynamics NAV can be installed all on a single machine that covers all three roles. We often run that way for a demo, development or testing purposes. It not recommended for any live system though and will be impossibly slow above just a few users.

Other things to think about? Should you have more than one middle tier just for resiliency in case one ‘goes down’. Well if your serious enough to need the guaranteed uptime of clustering then yes, you should. As standard you will have to set each group of users to point to a particular middle tier though so it’s not automatic fail over, they will have to know what to do if their server stops working.

Plus, there is no way as standard to load balance users across middle tier servers, which means you have to try to predict which one will be the most loaded.

The company I work for has a great solution to both these issues that’s simple and just works – so I’ll try to share that on a future blog post.

Executables

Well first there are what’s regarded as the ‘executables’ which are the programs that actually run on the servers and client. There are a set designed to run on their server and another set that are run on a suitable client such as your local windows PC. There is also a set which runs on your web server and provides the site through which you can access Dynamics NAV via a URL, from your web browser or via your tablet.

Just remember that all the server servers and clients have to be running the same version (and we do mean the same exact version) of the executables. If you upgrade the middle tier you need to upgrade the web server and all the computers with the client software installed at the same time.

Often after you upgrade the executables it will ‘upgrade’  the database which means it cannot be downgraded again (without some very clever and risky manual editing which you don’t want) so be sure you’ve back it up before upgrading your executables

Objects & Databases

In a ‘traditional’ (as opposed to multi tenanted) deployment NAV has the ‘objects’ are stored in each database along with the data for the companies created using that system. This means that all the companies have the same logic and data structure although differences in the setup options selected can introduce differences in the way they operate.

What do we mean by ‘objects’? Well there are thousands of definitions (In a specific programming language called C/SIDE) that control the information stored in each table and the business process logic options available. Customising the system means editing or adding to these Dynamics NAV objects.

Objects can be exported from one database to another in order to transfer functionality from one system to another. Users running Dynamics NAV will often hear a systems admin, consultant or developer say that they need to ‘import some new objects’ or ‘get that object changed’ which is how we change the logic your system has.

Note

This post is part of a 6-part series. A link to all the posts in this series are below;

Author: James Crowter

I’m passionate about how businesses can improve their efficiency by getting process optimal more of the time. For the last twenty five years I’ve worked to help organisations of all sizes and types implement the ERP & CRM software that typically they decide they need when things are going wrong. I’ve seen that work unbelievably well and enabled those organisations to rapidly grow but I’ve also had some hard projects over that time where it’s felt more like warfare at times. Since 1996 (and version 1.01) I’ve been working with a small Danish product called Navision that’s now become Microsoft’s Dynamics NAV and I’ve also been using and consulting around Microsoft CRM since 2005. As managing Director of one of the longest established first Navision and now Microsoft Dynamics partners I’ve been involved in the complete history including numerous product councils and system design reviews. It’s my privilege to know many of the key Microsoft executives and product designers and have insight into both where the products are now and their future direction. So colleagues & clients have asked me to start this blog to share some of the insight that both this knowledge (obviously where not restricted by NDA’s or client confidentiality) and experience can help. Specifically I want to concentrate not on the specifics of how (there are some great blogs already for that) but why. If any user helps their business make better decisions or consultant can give better advice then that will be objective achieved. I founded Technology Management in 1992 and have led from the front ever since. Helping clients use technology to grow their business is my passion through explaining technology in terms that everyone can understand. My interest in computing began at the age of eight, long before my school had the equipment to cope. Throughout school and university I developed software commercially. I hold many IT certifications, such as Microsoft Dynamics NAV (for over 17 years), Microsoft Dynamics CRM (for over 10 years), as well as Microsoft Windows Server, Exchange and SQL. In October 2015, I was awarded the title of Most Valuable Professional (MVP), a title given to a select few individuals (31 currently) across the world specifically for Dynamics NAV. After years of working with a range of distribution and manufacturing software for hundreds of organisations, I focus on understanding the business requirements of an organisation, what it will take to deliver the systems required to maximise their potential. Follow me online via my other social channels: - Twitter: @jamescrowter - LinkedIn: linkedin.com/in/jamescrowter Or email me directly at james[.]crowter[@]tecman.co.uk.

One thought on “Part 1: Why Do You Need to Understand the Technical Structure of Dynamics NAV”

  1. Oracle Data Integrator Cloud Service provides pushdown data processing; high performance ETL with less data movement which is best for the Cloud. Mark Hurd Oracle Data Integrator Cloud Service executes data transformations where the data lies without having to copy data unnecessarily to remote locations……

Leave a Reply

Your email address will not be published. Required fields are marked *