Archive for Ağustos, 2019

What is the Model and Package for Dynamics 365 Finance and Operations and How to Create It?

In this article, I will talk about the 2nd step required to start development when you start a new project for Dynamics 365 Finance and Operations. I mentioned the first step in my previous article. I explained how we can connect a new DevBox Deploy to our Azure DevOps project. In this article, I will try to explain how to create a new Model and Package and what they do.

A model is usually a distributable software solution and can contain customizations of an existing solution or it can be a new solution. It is a structure that contains Metadata and source code files. A model always belongs to a package. Package includes one or more models. The package includes model Metadata, Binary files and other associated resources. One or more packages can be made into a Deployable package. The deployable package is used to move code to test and live environments.

To create a model, go to Dynamics 365->Model Management->Create Model.


Fill in the required information for the model. Model name is important. You need to name it knowing that you will use it constantly and see it everywhere.


You will see two options when you continue with Next. If this is your first model, you will want to create it in the package with the model. Therefore, choose the one above. If you already have a package and want to create a new model in it, you should choose the second one.


This is one of the most important parts. Here you should select the reference of the standard packages you will need in the model you will create. For basic development needs, those shown in the image plus Dimension and Directory will suffice. You should not select all of them here, since it will affect your package size and compilation speed.


When you continue, you will see the last screen. If the information is correct, you can click Finish.  If you want to set this model as the default model, don’t forget to check it. The default model can be changed later from the Config file. If you want to create it in a new project, you can use the relevant checkbox.


The automatic project creation screen is opened. We create a Dynamics 365 Finance Operations project. Pay attention to naming the project, you can use the previous approach. My logic includes Company Code + Person + Project name. For example. Such as DmrFDTrvLedgerJournalCreate. Be careful not to write too long. Also in the Location field I use K: or I create a folder named VSProjects and place it there. The path should not be long either. Do not skip the Add to Source Control part, you can add it later.


This is the edited version. I didn’t use my name as the project name because it was an experiment.


The project is automatically created in the new DmrWMS model we created. Let’s add a ne new Job and see how it looks in the package and project.  I added a new Job named DmrWmsJob1.


When you enter K:\AosService\PackagesLocalDirectory, you will see your own package and when you enter it, the folders in the picture will be there. There is a file under Descriptor with definitions for the package. You must add this to version control.


When you enter the package, you will see that the code for the DmrWmsJob1 you created is here. Actually, all X++ objects will be under the DmrWMS folder.


When you look at your K:\VSProjects\DmrWms1 project, you will see that there are only project definitions here. Codes and objects are not stored here. This logic is specific to X++.


In this article, I tried to explain what models, packages and projects are and how they are created. These are the three most important tools in the new version. Layer still exists, but it’s not so important anymore. In particular, it is necessary to understand the package logic and file structure well. We also have a project logic that is different from normal Visual Studio projects. Do not be confused by it. In my next article, I will explain how to connect these folders to version control.


TAGs: Microsoft Life Cycle Services, LCS, Azure, Azure DevOps, Model, Packages, Microsoft Dynamics 365, MsDyn365FO, MsDyn365CE, MsDyn365, Dynamics 365 Insights Power BI, Power Automate, Power Apps, Power Virtual Agents, what is Dynamics 365, Dynamics 365 ERP, Dynamics 365 CRM