Free Sample
+ Collection
Code Files

Programming Microsoft® Dynamics™ NAV

David A. Studebaker

Create, modify, and maintain applications in Microsoft Dynamics NAV 5.0 using this book and eBook
RRP $35.99
RRP $59.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781904811749
Paperback480 pages

About This Book

  • For experienced programmers with little or no previous knowledge of NAV development
  • Learn as quickly as possible to create, modify, and maintain NAV applications
  • Written for version 5.0 of NAV; applicable for all versions


Who This Book Is For

  • The business applications software designer/developer who:


  • Wants to become productive in NAV C/SIDE – C/AL development as quickly as possible
  • Understands business applications and the associated software
  • Has significant programming experience
  • Has access to NAV including at least the Designer granules, preferably a full development license and a standard Cronus demo database
  • Is willing to do the exercises to get hands-on experience


  • The Reseller manager or executive who wants a concise, in depth view of NAV’s development environment and tool set
  • The technically knowledgeable manager or executive of a firm using NAV that is about to embark on a significant NAV enhancement project
  • The technically knowledgeable manager or executive of a firm considering purchase of NAV as a highly customizable business applications platform

The reader of this book:

  • Does not need to be expert in object-oriented programming
  • Does not need to have previous experience with NAV

Buy Programming Microsoft Dynamics NAV










Table of Contents

Chapter 1: The Basic Ingredients
Some Unique NAV Terms Defined
The C/SIDE Integrated Development Environment
Seven Kinds of NAV Objects
More Definitions (Related to NAV)
NAV Functional Terminology
Getting Started with Application Design
Integration Tools
Backups and Documentation
Chapter 2: Tables
Overview of Tables
Expanding Our Sample Application
Types of Tables
Chapter 3: Fields
More Definitions
Variable Naming
Data Types
Chapter 4: Forms
What Is a Form?
NAV Form Look and Feel
Types of Forms
Keys to Learning NAV
Chapter 5: Reports
What is a Report?
NAV Report Look and Feel
NAV Report Types
Report Naming
Report Components Overview
Report Data Flow
The Elements of a Report
Request Form
Processing-Only Reports
Revising a Generated Report
Creating a Report from Scratch
Special Output Issues
Chapter 6: Introduction to C/SIDE and C/AL
Essential Navigation
Some Basic C/AL
Some Simple Coding Modifications
Chapter 7: Intermediate C/AL
Computation—Validation Utility Functions
Data Conversion Functions
DATE Functions
FlowField-SumIndex Functions
Flow Control
Input and Output Functions
InterObject Communication
Use the New Knowledge
Chapter 8: Advanced NAV Development
Callable Functions
Sampling of Function Models to Review
Documenting Modifications
Code Analysis and Debugging Tools
Chapter 9: Designing NAV Modifications
Starting a New NAV Enhancement Project
Design of NAV Modifications
Creating a New Functional Area
Enhancing an Existing Functional Area
NAV Development Time Allocation
Data-Focused Design for New Functionality
NAV Processing Flow
Designing a New NAV Application Functionality
Chapter 10: External Interfaces
Advanced Interface Tools
Chapter 11: Design to Succeed
Design for Efficiency
Design for Updating
Plan for Upgrading
Tips for Small Successes

What You Will Learn

  • Become confident with basic NAV definitions and conventions
  • Understand the design and development process of a NAV application
  • Understand the unique aspects of the NAV data and process flows
  • Data Types, Tables, Forms, Reports, and Codeunits
  • C/SIDE and C/AL basics – essential navigation, object construction, numbering, basic syntax, naming rules, SIFT technology, string operators and functions, numeric operators and functions, logical and relational operators and functions
  • Control Logic and Flow – Conditional statements, I/O statements, sorting, filtering, data flow, FlowFields, process logic flow, creating new functions, documentation, testing
  • Advanced C/AL – modifying existing functions, creating new objects, finding code models, advanced debugging techniques

Chapter 1
covers basic definitions as they pertain to NAV and C/SIDE. It also provides an introduction to seven types of NAV objects, Form and Report Creation Wizards, and tools that we use to integrate NAV with external entities, and ends with a brief discussion of how different types of backups and documentation are handled in C/SIDE.

Chapter 2 focuses on the top level of NAV data structure, tables and their structures. You will work your way through hands-on creation of a number of tables in support of an example application. You will review most types of tables found in the out-of-the-box NAV application.

In Chapter 3, you will learn about the basic building blocks of NAV data structure, fields and their attributes, data fields that are available and field structure elements (properties, triggers) for each type of field. This chapter covers the broad range of Data Type options as well as Field Classes, shows you one of the date calculation tools that gives C/AL an edge in business, and discusses the concept of filtering and how it can be considered as you design your database structure.

In Chapter 4, you will review different types of forms and work with some of them, and review all the controls that can be used in forms. You will learn to use the Form Wizard and have a good introduction to the Form Designer. You will expand your example system, creating a number of forms for data maintenance and inquiry.

In Chapter 5, you will learn about on the structural and layout aspects of NAV Report objects. Also, you will experiment with some of the tools and continue to expand your example application.

Chapter 6 will help you learn about the General Object Designer Navigation as well as more specific navigation of individual (Table, Form, Report) Designers. This chapter also covers variables of various types created and controlled by the developer or by the system, basic C/AL syntax, and some essential C/AL functions.

Chapter 7 covers a number of practical tools and topics regarding C/AL coding and development. You will learn about C/AL Symbol Menu and how it assists in development. This chapter also discusses various Computation, Validation and Data Conversion functions, Dates, Flowfields and SIFT, Processing Flow Control, Input–Output, and Filtering functions.

In Chapter 8, you will review a number of tools and techniques aimed at making the life of a NAV developer easier and more efficient. There is also a section on Code Analysis and Debugging.

Chapter 9 will help you deal with software design for NAV. It will help you with the design of NAV modification, creating a new function area or enhancing an existing functional area, and also provides you with the information needed for designing a new NAV application.

Chapter 10 focuses on interfaces with NAV. Overall, you will learn about MenuSuites, Dataports, XMLports, and advanced Interfaces in this chapter.

Chapter 11 will help you become even more productive in C/AL development. It provides some tips for design efficiency and it will help you learn about updating and upgrading the system and more about enjoying working with NAV.

In Detail

Microsoft® Dynamics™ NAV (formerly known as Navision) is a well established Enterprise Resource Planning (ERP) application, part of the Microsoft® Dynamics™ family.

Renowned for its challenging learning curve, Dynamics NAV is a complex piece of software with a unique design structure and, for developers learning to modify or enhance it for vital business purposes, the task can sometimes be overwhelming.

This book will ease you through the complexities of NAV application development. You will learn the skills and develop the confidence to tackle your own critical NAV applications. This book will act as your experienced NAV programming mentor, helping you to become productive as a NAV developer much more quickly.

From basic NAV terminology and concept definitions, through the essential building blocks of NAV data structure and objects, you will gain an understanding of the fundamental underlying concepts of NAV. You will learn practical details about NAV object construction and the tools available, including the Table, Form, and Report Designers. You will learn how to use NAV’s tools to effectively navigate through the various features of objects, including properties, triggers, and C/AL code and receive practical guidance on ways to develop and test in the unique NAV C/SIDE development environment. 

A section on software design for NAV is provided along with tips for efficient design of a new NAV application or enhancing an existing application. With its comprehensive collection of NAV information, this book is not only designed to help you learn, but can act as a reference as well.


Read More

Recommended for You