AX Development terminology and concept

In Dynamics development, we’ll be hearing mostly about these terminology:

  • Models
  • Elements
  • Projects
  • Packages

A model can be defined as a collection of elements that represent a distributed software solution. Some basic and important model such as Application Foundation model or Application Suite model, etc. Each of these models contains its own set of system elements. Some examples of elements are tables and forms. An element’s XML file contains both metadata and source code.

Elements can be customized once they are added to a specific project. A particular model may contain multiple Visual Studio projects. However, a project may only belong to one model.

Before projects can be used, it has to run Build command inside Visual Studio. A project build will perform a build on only the elements in a project that have changed while rebuild forces a build of all elements, regardless of whether they have changed or not.

A Dynamics AX package is a deployment unit that may contain one or more models.

More about Model.

When we create a model, we have the option to choose whether we want to create that model in a separate package or in an existing package. :

  • If existing package –> over layering or customization development approach.
  • If separate package –> extension development approach.

The second approach is new to Dynamics development platform. By creating extension elements, all of the customizations and code are stored in a separate assembly. It only contains the code that was added or changed in the extension file. Since this code resides in a separate assembly, it improves performance and the ability to upgrade and test.

Create Model.

  1. Right-click the Visual Studio icon on the desktop.
  2. Click Run as administrator.
  3. On the Visual Studio menu, click Dynamics ‘AX 7‘.
  4. Click Model Management.
  5. Click Create model….

Set the Model parameters.

  1. Click the Model name
  2. Type “DevelopmentBasics_Sample”.
  3. Click the Model publisher
  4. Type “AX Developer”.
  5. Make sure that the Layer field is usr.
  6. Make sure that the Version field is 0.0.0.
  7. Click the Model description
  8. Type “Example of Basic Development.”.
  9. Make sure that the Model display name field is BasicDevSample.
  10. Click Next.

Create a new package with selected reference models.

  1. Make sure that Create new package is
  2. Click Next.
  3. In the Select referenced models section, make sure that Application Platform is
  4. Select Application Foundation.
  5. Select Application Suite Electronic Reporting Integration, Application Suite.
  6. Scroll down to see Application Platform Form Adaptor.
  7. Select Application Platform Form Adaptor.
  8. Select Application Suite Form Adaptor.
  9. Scroll down to see Application Workspaces.
  10. Select Application Workspaces.
  11. Select ApplicationWorkspacesFormAdaptor.
  12. Click Next.
  13. On Summary, ensure check boxes are checked.
  14. Click Finish.

Create a project.

  1. Make sure that Dynamics AX7 Project is selected.
  2. Click the Name
  3. Type “BasicDevProject”.
  4. Click OK.



Setup and configuration for Basic Development of Dynamics 365

Firstly, now the development of Dynamics 365 especially for Dynamics 365 For Operations (a.k.a. Dynamics AX) will all be within Visual Studio.

System requirement before proceed:

  1. It can be hosted locally or in the cloud using Microsoft Azure.
  2. A minimum of 16 gigabytes of RAM is recommended along with two CPU cores for a smooth development environment.

Initial setting in Visual Studio:

  1. Organize projects by element type.01_Setup01Make sure this is checked so that when we create projects and we add elements, they’re organized and easier to find text editor group
  2. Text edit group01_Setup02.png This makes it easier for development and debugging.
  3. Uncheck enable IntelliTrace01_Setup03.pngThis is not supported with X++ debugging and it could cause performance issues.

Another thing needs to set is Best Practice:

  1. Under Dynamics ‘AX 7’, select the Best Practices
  2. Select Dynamics.AX.Framework.BestPracticeFramework.UIRules.
  3. Make sure that Dynamics.AX.Framework.CodeStyleRules is selected.
  4. Select Dynamics.AX.Framework.DataAccessRules.
  5. Select Dynamics.AX.Framework.DataEntityRules.
  6. Make sure that Dynamics.AX.Framework.DeprectatedElementsRules is selected.
  7. Make sure that Dynamics.AX.Framework.MaintabilityRules is selected.
  8. Select Microsoft.Dynamics.AX.Framework.StaticCodeValidationRules

There, just restart Visual Studio to take effect and you are ready to do development for Dynamics 365 For Operations.




What is Microsoft Dynamics 365?

I’m starting my blog with explanation about Microsoft Dynamics 365. So what is it ?

Microsoft Dynamics 365, a cloud-based application experience based on a common data model allowing Microsoft’s current CRM and ERP cloud solutions to be deployed in one cloud service with new role based subscriptions.  The Dynamics 365 apps are designed so they can be easily and independently deployed. Your business can start with the apps you need, and as your business demands, you can adopt additional capabilities with ease as all the apps work together.

The software must be purchased as a service in the cloud. As the software is hosted in the cloud, it can be accessed from nearly any smart device letting you work from anywhere with WiFi.

Did I just mentioned “purchase as a service in the cloud ?”. Yeah, right, but don’t worry, there are some ‘deal’ behind their package. Also, I reckon, person who read this blog knows or heard about Dynamics application such as AX and NAV, soon we will find out its correlation. You’ll get the hang of it, in a minute!

Dynamics 365 can be purchased in several ways:  the main categories include Dynamics 365 Business Edition or Dynamics 365 Enterprise Edition.

The Business Edition plan 

  • Optimized for 10-250 Employees
  • Cloud Only
  • Sales and Marketing (future)
  • Field Service
  • Customer Service
  • Project Service Automation

The Enterprise Plan includes CRM and these Application Options

  • Optimized for 250+ Employees
  • Powerapps that use the Microsoft common data model
  • Flow (New App)
  • CRM
  • Sales
  • Field Service
  • Customer Service
  • Project Service Automation

Ok, so Business Plan comes with cloud only. Nothing much to it. We need to pay a subscription fee in order to use it. Well, then Enterprise Plan is the one with more options, especially with cloud, on-premise or even hybrid options, obviously.

Now, noticed there is capital letter in the word FINANCE and OPERATION (don’t mind CRM, I have to, right?). Well, FINANCE refer to Dynamics NAV and OPERATION refer to Dynamics AX.

App Name: Plan Name: Once Known As:
Dynamics 365 for Financials Dynamics 365 Business Edition NAV
Dynamics 365 for Operations Dynamics 365 Enterprise Edition AX

So that’s it. Now we know differences between Dynamics 365 plan, also the correlation to its predecessor which are Dynamics AX and Dynamics NAV.

Hope it is useful 🙂