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

Multi-Level Setup

When designing software for both small-sized and medium-sized businesses, there is often a balancing act in the designing setup options. Where some companies only require a feature to be turned on or off, other businesses require them to be more flexible.

The Multi-Level Setup pattern is explained at https://www.youtube.com/watch?v=kMtzKFjU22U&list=PLhZ3P-LY7CqmVszuvtJLujFyHpsVN0U_w&index=30.

In order to allow the best of both worlds, we can simply add the setup options to both the tables, and write a small interface to read the values based on importance.

Technical description

The setup fields need to be implemented on at least two levels, for example, a Singleton and Supplemental table. The setup options should be identical.

To read the setup values, we need to provide a function that first checks the most detailed level, the Supplemental table, and then the Singleton table.

The following code snippet is a part of...