D365 X++ Development Learning Playlist

Following the articles and videos in these tutorials will take you from a beginner to a master in D365 x++ development. This will show you the recommended learning order. Many of the articles I have written are tutorials teaching people how to create functionality within Microsoft Dynamics 365 Finance and Supply Chain. I have been asked by learners where they should start. In what order should you read/watch these articles and videos? While each article I write focuses on a specific learning objective, some tasks require you to have some previous knowledge. This list is my attempt to order and group these articles up.

Getting Started Developing In D365

If you already have an environment set up for you, or you only want to read about D365 X++ Development, then skip this section. These articles will show you how to create or deploy a D365 development environment.

After deploying an environment, there are some steps required to set up Visual Studio so that you can begin writing some code.

Create Or Deploy An Environment

Set Up Visual Studio

Development

Note, that there is no single right place to start learning D365 X++ Development. Hopefully, this table of contents will help you continue learning the areas that interest you. That said, I like to start with creating tables, then forms, followed by teaching X++ code after that.

Tables

Basic Form

Not surprisingly, forms are used to enter data and show it in D365 X++ Development. Importantly, it is the primary way the user interface is designed.

Menu and Menu Items

Next, you need to extend a Menu and add a Menu Item to that Menu, in order to open a form, run a batch job, or display a report. Menu Items are the links you see.

After adding a Menu Item, you need to set up security to enable users to see that new menu item. But we will cover that a little later.

Advanced Form Development

Execute Query

Form Patterns

Send Data To A Form

Call A Form From Another Form

Form Lookups

Display Method

Edit Method

JumpRef

Number Sequence

Functional Form Usage

Security

Runnable Class (Job)

Select Statements

In D365 X++ Development, select statements are the way data is retrieved from the database. It is similar to the TSQL coding language. However, the syntax is a little bit different.

Awesomely, it has some great advantages. Select statements can retrieve data and load it into an x++ class-like object called a ‘table buffer’. Additionally, developers can write ‘while select’ statements that make looping through records very easy.

Insert and Update Data

Error Handling

Debugging

After performing D365 X++ development, it is important to know how to debug the code. Specifically, debugging X++ code allows you to step through the code, view values in variables, and fix issues in the code.

After learning the basics of debugging, I highly recommend you check out the debugging practice tutorials in the section below.

Chain Of Command

In Microsoft Dynamics 365 for Finance and Supply Chain, base Microsoft code cannot be modified directly. Instead, Microsoft provides ‘Chain of Command’ to allow developers to add additional code before and after the base code runs. Notably, this allows developers to set new fields, as well as change existing values. This functionality is very important to learn.

There are a few more advanced scenarios where chain of command can be used.

Event Handlers

Event handlers are similar to ‘Chain of Command’. They allow custom code to be added around the base Microsoft code. Interestingly, different developers may like using one technique over than the other. This is often based on which technique they learned first and which one they are most comfortable writing.

In my opinion, Chain of Command is easier to write and is more readable. Therefore, my recommendation is that you learn both, so that you recognize Event Handlers when you see it. However, I would recommend always use Chain of Command when you write new code.

Data Entities

Data Entities are a great way of allowing outside systems to read data from D365, as well as insert and update data in D365.

Read And Write Files

Batch Jobs

SysOperation Framework Batch Jobs

If needed, you can also create a multi-threaded batch job.

RunBaseBatch Batch Jobs

Microsoft recommends all new batch jobs be created using SysOperation Framework. That said, there are still batch jobs in Microsoft’s base code that use RunBaseBatch. Therefore, it is important that you also learn how to read a RunBaseBatch class.

Testing Data Entities Using Postman

Custom Services

Customer Services in D365 X++ development allows outside systems to send information into D365, run X++ code, and return data.

Development Tips and Tricks

Environment Tutorials

Debugging Practice

In the section above, you learned how to debug your D365 X++ development. However, it takes practice to learn where to put a breakpoint in code, and how to find the root cause of the error. I highly recommend the following tutorials.

SSRS Reports

Business Events

Business events allow developers to send messages to outside systems when certain events happen within D365.

Commerce Build and Deploy

Microsoft Teams At Priority Bicycles

Content Creation

Conclusion

I strongly believe that by reading and/or watching the videos in the above tutorials, you will learn the skills needed to become an expert in D365 X++ Development. If you have further suggestions, feel free to send me a message on LinkedIn. Or, feel free to share about your learning journey. I love hearing those stories. I hope you learned something new today!

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑