Writing this blog post is very exiting for me since I kept this news "secret" over 6 months. As you might have noticed, this blog was somewhat quiet for the last half year. But there is a reason for that.
I have written a book about Dynamics NAV!
In November last year (2009) Packt Publishing approached me with the question "can you write a book for us". About Dynamics NAV. And I did.
So what is that book about; It's is about the part of NAV that I love most: The bridge between application functionality and technology. The book describes how NAV is designed, using Master Data, Journals, Entries and Registers covered by Documents.
For this book I have written two add-on applications that explain how to design applications for Microsoft Dynamics NAV. The applications have Master Data, Journals and Documents and are integrated into Microsoft Dynamics NAV.
The book also covers the design of Financial Management, Relationship Management, Production, Trade and Jobs. This includes Manufacturing, Warehousing, Item Tracking and Costing.
Lastly I have written a chapter about interfacing and a chapter about application design in general.
I really hope and believe that the information in this book is very usable for both new and experienced consultants, users and developers.
Here is the link to the website where you can (pre) order my book:
I would also like to thank the people that helped me writing this book: The reviewers : Daniel Rimmelzwaan, Matt Traxinger, Jeremy Vyska & Eric Wauters. Andrew Good for his effort in chapter 5 (Production) and Michael Nielsen for writing the foreword.
What this book covers:
This chapter will introduce you to Microsoft Dynamics NAV. We will briefly talk about the history of the application and talk about the concepts. We will cover some of the basics such as Number Series and Navigation. Then we will discuss the Data Model principles used by Microsoft Dynamics NAV using Master Data, Journals and Ledger Entries covered by Documents.
We will implement the theory we learned in the first chapter into a sample application. The goal of this chapter is to better understand how Journals and Ledger entries work throughout the system and how to create your own Journal application. You will learn how to reverse engineer the standard application to learn from it and apply this to our own customizations. We will integrate the application with Relationship Management and Sales in Microsoft Dynamics NAV and extend Navigation and Dimensions for our solution.
The heart of Microsoft Dynamics NAV is Financial Management. We will explore how this part of the application can be used and how it is designed. You will learn important concepts such as VAT, Posting Groups, Closing Dates, Entry Application and Financial Data Analysis. We will make some changes in the core application adding new information to the General Ledger and learn how to integrate Financial Management into our add-on solution.
When properly used, Relationship Management will help us to analyze the sales data in our system and be more productive towards our customers. We will explore the unique design of this part of the application and integrate this with the sample application we have created in chapter 2.
Production Companies are at the start of the supply chain. In this chapter we will learn how to setup Microsoft Dynamics NAV for Production companies. We will discuss the BOM Journal, Manufacturing and Kitting. Item Costing and Item Tracking are key elements when using this part of the application. We will look at the Planning Worksheet and how to create Production orders using Make-to-Order and Make-to-Stock policies. We will reverse engineer the Inventory Profile Offsetting Codeunit and see how this leads to a planning and Purchase Orders. At the end of this chapter we will look at ten ways to customize Production for vertical industries.
Without Sales, most companies would not survive. In this chapter we will discuss the relationship between Sales, Inventory Management and Purchasing and how Warehousing can be involved using different levels of complexity. We will learn how Reservation Entries are used in the system from a technical perspective.
In Microsoft Dynamics NAV, planning routes for shipments is a feature that is not available. In this chapter we will design and build a solution for this. We will design a solution that can be used by trading companies for their own shipments but also for storage companies. The solution is seamlessly integrated with the Dynamics NAV product. We will extend the journal knowledge we learned in chapters 2 and 3 with new document structures we learned from chapters 5 and 6.
The Jobs functionality in Microsoft Dynamics NAV can be compared to an add-on solution. It was designed outside Financial Management and Trade but is still integrated into the product. We will discuss how to implement this functionality using four example jobs and extend jobs with a issue registration & timesheet application using resource groups and calculations.
In the last decade, Interfacing became a crucial part of designing and implementing ERP systems. We will discuss how to design a rock solid business to business interface. We will show what technologies are available to use for interfacing and how these technologies are implemented in the standard product. We will discuss all the built in interfaces with other Microsoft applications like Office, SharePoint, BizTalk and Exchange.
This chapter will focus on the concepts of application design and how they apply to Microsoft Dynamics NAV. We will focus on Design to Use, Maintain, Support, Upgrade, Perform and Analyze. This includes concepts for User Interface, Version Management and the Development Methodology.
Cool... I especially like the "wrapper" idea, sounds less tedious than the VS approach, and could probably work for me in most situations.
I have used message traces so far... really a PIA when you're clueless as to where the occur happens, and youcodeunit calls are nested quite a few levels.
Thank you for buying my book, glad you like it.
Debugging a page can be quite a hassle. Is can be done using Visual Studio. Here is a link...
Another way of 'debugging' is buiding in messages. It's not ideal but can work.
What I also do sometimes is create a 'wrapper' codeunit and call code from the classic client to I can use the classic debugger.
To run a page from the object designer, your default RTC database should match your currennt DEV database.
I hope this answers your questions.
I just bought the book, and love it. It brings newbie users such as myself newlight that was left out in the Microsoft training materials.
I have a couple of questions, though. If this is not an appropriate forum, just let me know.
1) What is the best way to debug C/AL code launched by an RTC page? I am currently to get the time and expenses features in CHap. 8 to work, and I do not know how I can get the C/SIDE debugger to take control of the C/AL code launched by the RTC page
2) On Page 58 of the book, you show that it is possible to run a Page from the Object Designer. I tried it, and it does not work.. Any idea how I can get thos to work?
Thanks for the beer...
Thanx for the autograph :-)
Just ordered it Marq. Next week I want your signature in it :-).
Just started reading - looks very good so far - but heavy, so it might take a bit time before I'm back with a review.
This is the link to Amazon:
Yes it will be on Amazon in a few days.
But I do not know if you can buy the ebook there. Sorry.
UPDATE : The book got published today. All (pre) orders should now be shipped. (June 11th 2010).
Will this book be available on Amazon?
Will there be a discounted price if I buy the hard cover and the ebook at the same time?
Exciting news Mark, let's hope that this will be a best seller.
The main reason for not including Service is page count. I am already massively over the 'budget' and I did not want to limit on the other elements of NAV.
Other parts that did not make it are Fixed assets and Reminders.
Maybe in the v7 version. :)
Thanks Mark for you effort. I will order the book and read it carefully.
Why is the Service module not included? I haven't found much info about this module other than the Microsoft Service Management course... but for me it is not enough to underestand all the capabilities the module has.
Congratulations with the new book! I'm looking very much forward to read it.