Skip to the content

Course Description

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

Development Foundation in Microsoft Dynamics 365 Business Central

Your starting point for developing Microsoft Dynamics 365 Business Central Customizations
You will explore these objects with the classic C/Side Object Designer as well as with Visual Studio Code. You will learn to use the In-Client Designer and we will dive into the programming language of Microsoft Dynamics 365 Business Central. You will learn both C/AL as well as the AL programming language and we will familiarize you with the Event Based Architecture. This Business Central course also covers the most important functions and XMLPORT and Queries.

You will gain essential insights and skills for both onprem as online customisations for Microsoft Dynamics 365 Business Central and Microsoft Dynamics NAV with this Development Foundation training.

Content

1 - Microsoft Dynamics 365 Business Central Environment Setup

On Premise
Using Docker
Using Microsoft Azure
Using Business Central Sandbox Environment
Using demos.microsoft.com
Using Business Central Trials

2 - Business Central Development Environment: C/SIDE Object Designer
What is C/SIDE Object Designer?
Basic C/SIDE Commands
TXT vs FOB
Coding Guidelines

3 - Business Central Development Environment: Visual Studio Code
What is Visual Studio Code?
Creating a new AL Extension
JSON configuration files: Launch.json & App.json
Extension Dependencies
Basic AL Project Commands
Working with Snippets
Visual Studio Code Workspace
Coding Guidelines

4 - Working with Objects in Business Central
Logical Database
Properties & Triggers
Managing Objects

5 - Tables
What is a Table?
Table Description
Table & Field Properties
Table & Field Triggers
Data Types
Create a Table
Keys
Table Relations
Calculated Fields (Using FlowFilters and FlowFields)
Field Groups
Working with Media on Records
Database Schema Synchronisation
Classifying Data: Different data classifications
Classifying data in tables and fields

6 - Table Extensions
Table Extensions Properties
Create a Table Extension

7 - Pages
What is a Page?
Page Description
Page Properties
Triggers & Controls
Create a Page
Actions
Page Types & Characteristics

8 - Page Extensions
Page Extensions Properties
Create a Page Extension

9 - In-Client Designer
Using the In-Client Designer
Design vs Personalise
Enhance the extension in Visual Studio Code

10 - Codeunits
Codeunit Fundamentals
Design Codeunits
Use Codeunits
Run Codeunits from a Page

11 - C/AL and AL Programming in Business Central
C/AL Programming Essentials
AL Programming Essentials
Code Statements & Triggers
Indentifiers, Variables & Syntax
The Syntax of identifiers
Variable scope
Variable Initialization
Intrinsic data types
Arrays
List Of
TextBuilder

12 - Assignment Statements
The syntax of assignment statements
Automatic Type Conversions

13 - Expressions, Terms and Operators
The String Operator
Functions Calls in Expressions
Numeric Expressions
Arithmetic Operations

14 - Relational Expressions
Relational Expressions for Comparison
Relational Expressions for Set Inclusion

15 - Logical Expressions
NOT AND OR XOR expressions
Boolean Expressions

16 - AL Statements
Conditional Statements
Repetitive Statements
WITH statement

17 - AL Built-in Functions
Interaction Functions
String Functions
Date Functions
Numeric Functions
Array Functions
List Functions
System Functions
Variables Functions

18 - AL Custom Functions
Functions and Parameters

19 - Event Based Architecture
Introducing Events
Publishing Events
Raising Events
Subscribing to Events
Debugging Events
Best Practices
Event Recorder

20 - Data Manipulation
Data Access Functions
Sorting and Filtering Functions
Data Manipulating Functions
Working with Fields

21 - XMLPorts
XMLPort Fundamentals
Design XMLPorts
Importing and Exporting Plain Text
Using XMLPorts in Code

22 - Queries
Query Design
Selecting Data
Joining Data
Filtering Data
Aggregating Data
Ordering Data
Date Methods
Simple Item Query
OPEN, READ, CLOSE
Column Access
Filtering Queries
TOPNUMBEROFROWS
SAVEASXML
SAVEASCSV
Queries and Records


Solution Development in Microsoft Dynamics 365 Business Central

Design Patterns and Best Pracises for Microsoft Dynamics 365 Business Central Development

We will explain the data and process model of Business Central, the Master Tables and Pages, Documents, Posting Routines, Statistics, Navigate function, Dimension Management, Saasification, PowerShell Cmdlts, Upgrading and Multilanguage solutions.

This very active and interactive workshop is a more advanced development course for Business Central that will provide you all the building blocks for performant and upgradable solutions for Microsoft Dynamics 365 Business Central and NAV.

1 - The Data & Process Model of Microsoft Dynamics 365 Business Central
Functional Table Types and Characteristics
Standard Data Model Diagram
Standard Data Model
Standard Process Model

2 - Master Table and Pages Design Patterns
Work with table event triggers
Frequently used Table Properties
Master Table and Page Standards
The Number Series Pattern
The Singleton Table Pattern (Setup)
The Blocked Entity Design Pattern

3 - Document Table and Pages Design Patterns
Building a Document Page
Functions Used in Page and Table Objects

4 - Posting Routines, Tables and Design Patterns
Document, Journal and ledger Tables
The Journal Posting Process
Posting Routine Patterns
Document Posting Routines
Document Posting Routine Patterns

5 - Feature Integration
Statistics
Navigate
Access Navigate from Transactions
Dimensions
Trail Record
Create New Documents from Master Pages

6 - Saasification Techniques
Notifications
Assisted Setup
Wizards
Application Areas
Building a Rolecenter
Add an Object to Search
Profiles

7 - PowerShell Cmdlets
Administration Shell
Development Shell

8 - Upgrade to Microsoft Dynamics 365 Business Central Onpremise
Upgrade Considerations
Changes in C/AL Behavior
Converting a Database
Upgrading Code
Upgrading Data
Automating Upgrades

9 - Install & Upgrade Codeunits
Update an Extension to a New Version

10 - Developing Multilanguage Enabled Applications
Translation Files
Multilanguage Functionality in AL Extensions