Book Image

Learning Dynamics NAV Patterns

By : Marije Brummel
Book Image

Learning Dynamics NAV Patterns

By: Marije Brummel

Overview of this book

Microsoft Dynamics NAV is a complete ERP system, which also contains a robust set of development tools to support customization and enhancement. These include an object designer for each of the seven application object types, a business application-oriented programming language with .NET interface capability, a compiler, a debugger, and programming testing language support. Learning Dynamics NAV Patterns will guide you through the NAV way of solving problems. This book will first introduce you to patterns and the software architecture of the NAV and then help you to build an example application. Then, it walks you through the details of architectural patterns, design patterns, and implementation patterns. This book will also talk about anti-patterns and handling legacy code. Finally, it teaches you to build solutions using patterns. Proven patterns and best practices will help you create better solutions that are easy to maintain in larger teams across several locations. It will guide you through combining abstract patterns using easy-to-understand examples and will help you decide which patterns to use in which scenarios.
Table of Contents (9 chapters)
8
Thank you for buying Learning Dynamics NAV Patterns

Encapsulation

Although encapsulation is considered one of the four cornerstones of OOP it is not limited to this, and can be implemented in Dynamics NAV as well. When implementing encapsulation, we hide the components from being wrongly used.

In other words, we indicate to other developers which functions can, or cannot be used outside the class, or as in Microsoft Dynamics NAV, the object.

This is achieved by implementing the local functions. Microsoft Dynamics NAV allows functions to be global or local. Global functions are allowed to be called from outside the object; local functions can only be used inside an object. In C#, these would be public and private functions.

When we want a function to be local, traditionally in C/AL we have to explicitly set the property. However, this has changed in Microsoft Dynamics NAV 2015. In this version, all the functions are explicitly set to local, and as developers, we have to change the property to No if we want the function to be...