Developing Solutions for Microsoft Dynamics NAV and 365 Business Central


Contact Us

We would love to hear from you. Please complete this form to pre-book or request further information about our delivery options.


I'd like to receive emails with the latest updates and promotions from Insoft.

Data Protection & Privacy

I hereby allow Insoft Ltd. to contact me on this topic. Further, I authorise Insoft Ltd. processing, using collecting and storing my personal data for the purpose of these activities. All your data will be protected and secured as outlined in our privacy policy.

Upcoming Dates

May 30 - May 30, 2022
09:00 - 17:00

Jun 27 - Jun 27, 2022
09:00 - 17:00

Jul 25 - Jul 25, 2022
09:00 - 17:00

Aug 22 - Aug 22, 2022
09:00 - 17:00

Sep 19 - Sep 19, 2022
09:00 - 17:00

Oct 17 - Oct 17, 2022
09:00 - 17:00

  • Developing Solutions for Microsoft Dynamics NAV and 365 Business Central
    6 days  (Instructor Led Online)  |  Microsoft Dynamics NAV

    Course Details

    The Developing Solutions for Microsoft Dynamics NAV and 365 Business Central course is a six-day instructor-led training that helps you develop capabilities and knowledge of the Microsoft Dynamics NAV 2018 Development Environment features.

    This course explains the basic development concepts in Microsoft Dynamics NAV and provides an overview of the C/AL programming language and various object types. It also covers new development capabilities, including reporting, queries, and .NET Framework interoperability. It also introduces programming using events and how to compile all into an extension V. 1.0.

    This training also leads individuals through a simulated implementation project, where the goal is to customize Microsoft Dynamics 365 BC to meet customer’s requirement. It explains standard application concepts and provides insight into most important processes in Microsoft Dynamics 365 BC, including documents and journals posting, dimension management, feature integration, role tailoring, and automating unit testing.

    The solution will be created purely as an extension in Visual Studio Code, without changing a single object in the standard application of Microsoft Dynamics 365 BC.


    See other Microsoft courses


    We have designed our course material in the way that best prepares you to learn.


    Microsoft Dynamics NAV 2018 Integrated Development Environment

    • Present the basic object types in Microsoft Dynamics NAV 2018.
    • Describe fundamental aspects of Microsoft Dynamics NAV 2018.
    • Development Environment. This includes UI, application objects, and basic metadata concepts.
    • Explain the physical and logical database structure.
    • Explain the features of multi-developer environments.
    • Explain the concepts of tables and table components.
    • Examine the concept behind primary and secondary keys and explain how to set them.
    • Create a simple table with primary and secondary keys and add data to the table.
    • Review the concept of table relations.
    • Settable relations with a filter and condition.
    • Describe special table fields.
    • Use special table fields to improve table features.
    • Explain the concepts of pages and page components.
    • Describe Page Designer and Action Designer.
    • Create a simple page and add basic controls to the page.
    • Provide an overview of different page types and their characteristics.
    • Discuss best practices in designing pages.
    • Create a Card page, add a container, FastTabs, and fields.
    • Create a List page and link it to the Card page.
    • Create the main page and a Part page and link the two pages.
    • Describe the concepts and basic use of C/AL code elements.
    • Describe the concepts of data types, simple data types, and complex data types.
    • Explain the concepts of identifiers, variables, and syntax.
    • Explain the syntax of identifiers.
    • Explain the scope of variables.
    • Explain the initialization of variables.
    • Create a simple code unit to show how to define variables, assign data types, and investigate several default values that are initialized for several data types.
    • Explain the concepts of assignment, statement, and assignment statements.
    • Describe the syntax of statements and introduce the statement separator.
    • Describe automatic type conversions for string, numeric, and other data types.
    • Use assignment statements and the Symbol Menu.
    • Understand the concepts of expressions, terms, and operators.
    • Describe the syntax of an expression.
    • Describe the string operator.
    • Use the string operator.
    • Describe the MAXSTRLEN and the COPYSTR functions.
    • Use the MAXSTRLEN and the COPYSTR functions in an expression.
    • Define numeric expressions, arithmetic operators, and operator precedence.
    • Describe the arithmetic operators and provide examples.
    • Use the arithmetic operators and examine the operator precedence.
    • Define relational and logical operators and expressions.
    • Describe how to use relational expressions for comparison.
    • Describe how to use relational expressions for set inclusion.
    • Describe how to use logical expressions.
    • Use logical and relational expressions in a page.
    • Define conditional statements and Boolean expressions.
    • Describe the IF statement, the IF-THEN, and IF-THEN-ELSE syntax.
    • Describe the EXIT statement and code indentation.
    • Describe the CASE statement and the syntax of the CASE statement.
    • Define compound statements and comments.
    • Describe the syntax of compound statements with BEGIN and END.
    • Understand the concepts of nested IF statements and the rule of correct indentation.
    • Describe the syntax of comments.
    • Use the IF, EXIT, CASE, and compound statements in a page.
    • Test knowledge about C/AL statements.
    • Define arrays and describe the components of arrays.
    • Describe the syntax of arrays.
    • Explain the power of arrays.
    • Describe how to use strings as arrays of characters.
    • Introduce repetitive statements that are available in C/AL.
    • Use arrays and repetitive statements in a page.
    • Describe the WITH statement, record variables, and the syntax of the WITH statement.
    • Explain the concepts of functions and parameters.
    • Explain the C/AL Symbol Menu.
    • Describe the use and syntax of data access, filtering, and manipulation functions.
    • Describe the use and syntax of user interaction functions.
    • Describe the use and syntax of string functions.
    • Describe the use and syntax of system functions.
    • Describe the use and syntax of date functions.
    • Describe the use and syntax of number functions.
    • Describe the use and syntax of array functions.
    • Describe the use and syntax of several other important functions.
    • Provide an overview of the benefits of creating custom functions.
    • Explain the concepts of local functions and local variables.
    • Create custom functions on a page and call the functions from Actions.
    • Explain the concepts of reports and report components.
    • Provide an overview of different report types and their characteristics.
    • Describe the difference between the logical and the visual design of reports and introduce Report Designer.
    • Describe the logical design of a report.
    • Create the data model for a new report by defining data items in the Report Dataset Designer.
    • Describe the visual design of a report and introduce Microsoft Visual Studio Report Designer.
    • Design the report layout.
    • Introduce Request Page Designer.
    • Design the Request Options page.
    • Explain the concepts of grouping and totalling in a report.
    • Create a grouping and totalling for a report.
    • Add advanced features to a report.
    • Describe the fundamentals of an XMLport and its components.
    • Review how to design XMLports.
    • Explain the Request page functionality.
    • Describe how to use XMLports from C/AL code.
    • Create XMLports for export and import with XML format.
    • Create XMLports for export and import with a fixed and a variable text format.
    • Explain the concepts of code units.
    • Provide an overview of designing code units.
    • Provide an overview by using code units.
    • Define variables and functions in a codeunit.
    • Use the SMTP Mail code unit.
    • Introduction to Business Events and Integration Events in the standard application
    • Creating code units containing event subscription
    • Creating extensions V. 1.0
    • Creating upgrade functions
    • Creating Upgrade Codeunits
    • Explain the .NET Interoperability features.
    • Describe the concept of constructors.
    • Communicate between client-side and server-side objects.
    • Describe how to respond to events that are raised by .NET objects.
    • Examine mapping between C/AL and .NET data types.
    • Review the most important C/AL functions for managing .NET objects.
    • Use arrays, collections, and enumerations.
    • Explain how to stream data between C/AL and .NET objects.
    • Present the Query Designer and its features
    • Explain the principles of the query design process
    • Show how to select, join, filter, aggregate, and order data
    • Demonstrate how to access queries from C/AL code
    • Explain how to export data from queries.


    Dynamics 365 Business Central/NAV 2018 Solution Development with Visual Studio Code

    • Introduction to Visual Studio Code
    • The Visual Studio Code Editor
    • Native Github integration
    • Using Snippets
    • Creating Snippets
    • Converting existing objects to AL
    • And of course, creating objects:
      • New Tables
      • Extending existing tables, including which properties can be changed and where to add code to triggers
      • New Pages
      • Extending existing pages, including which properties can be changed and where to add code to triggers
      • Creating code units, including:
        • Event subscriptions
        • Install Codeunits
        • Upgrade Codeunits
      • Creating reports in Dynamics 365 Business Central
      • Creating reports in Dynamics NAV 2018
      • Creating XML Ports
      • Creating Queries
    • Controlling the Departments menu
    • Design patterns in Dynamics NAV/Dynamics 365 BC
    • Using the Visual Studio Code editor with other extensions, like:
      • PowerShell
      • XML Documents
      • JSON Tools
      • Snippet Creator
    • Upgrading to extensions
    • Differences between solution development in Dynamics NAV 2018 and Dynamics 365 BC


    Before attending this course you should have:

    • Knowledge of Microsoft Dynamics 365 BC
    • Knowledge of Microsoft Dynamics NAV 2018
    • Basic knowledge of programming concepts and programming languages.