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)
Thank you for buying Learning Dynamics NAV Patterns

Refactoring the C/AL Code

When we discuss the methodology for refactoring, we need to focus on two areas. The first focus is on the data model—the way we store data in tables. The other is business logic—the code that is executed.

When we refactor the application, the restriction is that we do not introduce new functional features. We should focus on optimizing our application. This makes it easier to test the application, since the functional result of our transactions should match the old application.

Combining refactoring and implementing new features is very possible, but this introduces a substantial risk to our project that should be avoided if possible.

Refactoring tables

There is only a limited set of scenarios where refactoring tables is required to optimize the maintainability of the code without changing the functional application, since the Dynamics NAV user interface is typically bound to the database structure.

We will focus on the scenarios...