Steven Renders on Microsoft Dynamics NAV
We interviewed Steven Renders, author of Microsoft Dynamics NAV 2009: Professional Reporting. Dynamics NAV is a nearly 30 year old Enterprise Resource Planning platform that currently boasts over 300,000 users across 42 countries.
InfoQ: First I would like to say how impressed with the amount of material you were able to cover in such a small book. While I didn't walk away feeling that I know everything, I do have the sense that I know enough to find anything else I need. I especially liked the resources and speculation offered in chapter 7.
Steven Renders: Thanks. When writing the book I was often having doubts and thinking if I cover all those topics or just focus on the RDLC part. But from personal experience as a technical trainer in the NAV world, I thought it was more important for the reader to get the big picture, to know what’s out there and how it might be useful in a NAV context. And, maybe later, in a follow up book I might dive a little deeper into certain technical topics?:)
InfoQ: Microsoft Dynamics NAV is not a well-known product in the US, so before we get into the details can you give our readers a brief introduction?
Steven: As Microsoft describes the product, it is the following:
Microsoft Dynamics NAV (formerly Navision) is ERP (Enterprise Resource Management) software that delivers functionality, from financials to your supply chain to manufacturing, warehousing, and more. It connects the many parts of your organization, giving you better visibility into and control over what's going on in your business. And it supports highly specific industries with powerful solutions created by Microsoft partners.
So basically, to put it in other words, it is “the ring that rules them all” as they would say in the LOTR films. It is a piece of software that comes with a lot of bells and whistles and that can be easily and fully customized to meet and reflect your organization’s business processes. In many countries in Europe it is considered the number one ERP product for small and medium sized companies. I’ve seen it and assisted in implementations at companies with only a couple of users as also in companies with more than 200 users. Its main strong points are what you get out of the box, combined with how easy it can be customized and integrated with other systems.
InfoQ: What is involved in adding Dynamics NAV to an existing system?
Steven: Adding Dynamics NAV to an existing system or implementing it in a company can be a project completed in a couple of weeks or months, depending on the requirements, business processes and desired customizations. In my experience it all comes down to the motivation of the people involved and the experience of the implementation team. The project has to be driven by the stakeholders and when you have an experienced implementation team it can be a very pleasant experience. Last but not least, implementing such an application can have its effect on the way people work. There’s always some reluctance to change.
For example, currently I’m working on an implementation of a warehouse management system for a medium sized company. In the past most of the WMS processes were managed on paper. Migrating the way that people are used to work (on paper) to a way that is managed and automated by an application like Dynamics NAV can be a challenge. But after a couple of weeks, when users see the amount of time saved and optimizations in the processes they always wonder how they were ever able to manage without Dynamics NAV J
InfoQ: Getting a little more specific, let’s say I have an in-house system with customer order tracking and some warehouse functionality. The software has grown up with the company and matches my current workflows. But in order to grow I need to get out of the software business and focus on selling widgets. How would you recommend that I transition to Dynamics NAV? Would I do it all at once or would I keep both systems (or parts of each) running side by side for a while? If the latter, which functionality would you move into NAV first?
Steven: Well, that’s an interesting question, which, without a proper functional analysis of the current situation and the to-be situation, is difficult to answer.
But it happens to be the case that I’m involved in a very similar project right now. The customer and partner decided, to migrate everything at once, but with a double-run during one month. So during the last month before the go live they used both systems and compared results to make sure Dynamics NAV produced the same. After which they switched over fully to Dynamics NAV without any major problems. This is a good approach, a double run, because it is a very good way of testing, but it requires a lot of effort from the customer, because as you can understand the users have to do everything twice, once in the old system which they know very well and once in Dynamics NAV which they are learning to work with. It also requires a lot of effort from the partner because in case of an issue they need to be able to solve it very quickly. So it requires the help of experienced and “stress resistant” consultants.
Now, after a couple of months, there’s still some fine-tuning to-do in the system, but if you ask most users they don’t want to go back to old system because there’s so much added value Dynamics NAV.
A good implementation of any ERP system can only be the result of a good match between partner and customer and requires an effort and flexibility on both sides.
InfoQ: In your book you called out DAX as something people should learn. Can you explain what it is and why you think it will be important?
Steven: Basically, DAX is an expression language in Microsoft PowerPivot. When it comes down to Business Intelligence, especially in the SME world, users experience BI solutions as robust, inflexible, and difficult to change or adapt to business processes and daily reporting needs. On the other hand, reporting in Excel is often too slow, complex and time consuming when you want to create interactive reports and data visualizations. PowerPivot is the product in between the two worlds. As an add-on on top of excel it is easy to learn, but it is also very fast and easy to use it to combine and integrate data coming from different places to create very interactive, nice looking reports. The DAX language might become an interesting weapon to have in the arsenal of a Dynamics consultant and that’s why I recommended spending a little time getting to know it. Also because Dynamics NAV 7, the next upcoming version, will be more integrated in SharePoint, so PowerPivot (and DAX) might bring an added value to the platform in the near future. On top of that, I think, Microsoft might integrate the DAX language more and more in SQL Server 2012 as the link between the BI and non BI world, as visualized in the next slide:
(Click on the image to enlarge it)
InfoQ: Can you show us what a DAX query would look like?
Steven: Here’s an example of a DAX query:evaluate(
It would be similar to the following in SQL:Select
OrderDateKey > 20110101
But if you look at the DAX way of filtering a table, a NAV developer would see the similarity with the C/AL setfilter statement.
Some very nice examples of DAX queries can be found here: on Chris Webb's BI Blog.
InfoQ: When SQL was first designed 80's it was thought that normal business men would be able to write their own queries. Since then it has had mixed results, with the COO's of some multi-million dollar directly accessing the production databases while in other companies no non-IT user would dream of learning SQL. Where do you see DAX fitting in to the spectrum of casual users, power users, and IT-only tools?
Steven: As DAX is an expression language it will still require some degree of technical knowledge to be able to use it. But the advantage would be that DAX is used in PowerPivot, which is a tool on top of Excel, and it should be a very simple step (or upgrade) for users who have experience in Excel to start working in PowerPivot.
PowerPivot gives the user the possibility to combine data from different sources, connect and share it and on top of that we now also have Power View, released last week together with SQL Server 2012.
Power View is where the payoff will be for the end user. You can compare it with reporting services, but much easier, self-explaining, more visualizations, the reporting tool every excel user, business analyst, manager has been wanting for, since many years.
In my daily encounters at different customer sites I see a lot of frustrated business analysts, financial controllers trying to get the data out of Dynamics NAV or out of a data warehouse or BI cube. Usually that’s a process they can manage, but as soon as they need to combine data coming from different sources, make changes to the data and create reports on top of that, they are lost and require the help of a developer to change the dwh, cube, etc.
I believe PowerPivot and Power View can be a solution or at least a valid alternative in this case for the, usually very expensive, reporting tools sold by third parties. (And, because it fully integrated on SharePoint, it’s a cloud ready solution.)
Have a look at a demo about Power View and then tell me you are not impressed :)
InfoQ: When it comes to extending NAV, do companies usually rely on in-house developers or do they tend to return the consultant that originally setup the system?
Steven: As most questions in IT are answered, “It depends”. Many companies, small and medium sized, don’t have in house developers and if they do, usually they don’t have much knowledge about Dynamics NAV. So they rely upon their Microsoft Partner and/or hire independent consultants/developers.
And even there’s an in-house IT-person, they are usually occupied with other responsibilities.
To be honest, that’s not such a bad thing, because, I think it’s better to work with an experienced consultant/developer then doing it ‘quick & dirty’ yourself.
On the other hand there are companies that invest in IT staff and training to maintain and/or expand their system. But in most cases these are the bigger companies. You can compare it with your car. Some people that own cars have the knowledge, time and interest to maintain it themselves or do simple repairs, but most people rely upon experienced and specialized professionals.
InfoQ: In addition to DAX you book mentions a programming language called C/AL. Can you describe what that is and how it’s used?
Steven: C/AL is the internal programming language of Dynamics NAV. In the NAV database, every object is ‘open source’ and with the appropriate license, you can customize and maintain the objects. C/AL stands for Client Server Application language, but in fact it was based upon PASCAL. It has a very easy syntax to learn, and it’s very powerful and allows for rapid application development.
You could compare it with Progress. A long time ago, in the 90’s I started my IT career as a Progress developer. It too has a powerful database with a 4GL language. The difference is that Dynamics NAV is an ERP system with a lot of built in, ready to use functionality, maintained by Microsoft. It’s getting more and more integrated with the .Net world. For example, in the C/AL language, which is not an Object Oriented language, you can now create a variable of type .NET and use the power of the .NET framework to extend C/AL.
Most Dynamics NAV consultants and developers welcome this new technology, and hope to be able to take the best out of the NET framework to expand the possibilities of the C/AL language but at the same time keep the simplicity and efficiency of C/AL that allows for rapid application development.
About the Book Author
Steven Renders is a Microsoft Certified Trainer with skills spanning business and technical domains. During the latest years he specialized in Microsoft Dynamics NAV and Microsoft SQL Server. He has more than 15 years of business and technical experience. He provides training and consultancy focused on Microsoft Dynamics NAV, Microsoft SQL Server, Business Intelligence Solutions, Microsoft SQL Server Reporting Services and Database Performance Tuning.