Book Image

Extending Microsoft Dynamics 365 for Operations Cookbook

By : Simon Buxton
Book Image

Extending Microsoft Dynamics 365 for Operations Cookbook

By: Simon Buxton

Overview of this book

Dynamics 365 for Operations is the ERP element of Microsoft’s new Dynamics 365 Enterprise Edition. Operations delivers the infrastructure to allow businesses to achieve growth and make better decisions using scalable and contemporary ERP system tools. This book provides a collection of “recipes” to instruct you on how to create—and extend—a real-world solution using Operations. All key aspects of the new release are covered, and insights into the development language, structure, and tools are discussed in detail. New concepts and patterns that are pivotal to elegant solution designs are introduced and explained, and readers will learn how to extend various aspects of the system to enhance both the usability and capabilities of Operations. Together, this gives the reader important context regarding the new concepts and the confidence to reuse in their own solution designs. This “cookbook” provides the ingredients and methods needed to maximize the efficiency of your business management using the latest in ERP software—Dynamics 365 for Operations.
Table of Contents (16 chapters)

Creating the Visual Studio Team Services project

The terms Visual Studio Team Services and Team Foundation Server (TFS) are often used interchangeably. In Visual Studio, the user interface states that we are connecting to a Team Foundation Server. However, we are actually connecting to VSTS, which is an online service. VSTS is required for Operations development, and that is what we will use.

The project is normally created under the end-user's VSTS site, unless the work is being written as an ISV solution (or a personal development or learning project). The reason for using the client's VSTS system is that LCS is associated with the VSTS site, and support calls created through Cloud-powered support are generated within the associated VSTS. Cloud powered support is an online support solution within LCS that is exposed to the Operations client, allowing users to log support issues with their internal support team.

For up to five users, VSTS is free, and the customer can create many accounts with limited access without charge. These accounts as called stakeholder accounts, and allows the user access to work items, which also allows the users the ability to log support calls from within Operations. For those with an MSDN subscription, the five user limit is not counted.

This process is normally performed as part of the LCS project creation. If this were an implementation project type, the project is created when the customer signs up for Operations. The customer would then invite their Cloud solution provider (Partner) to the project. If this were an internal development project, such as a new vertical solution by an ISV, a Migrate, create solutions, and learn Dynamics 365 for Operations project type would be used.

In either case, we will have an LCS project, which will usually have an Azure VM deployed that acts as a build server.

For simplicity, and to keep the focus on software development, a project of type Migrate, create solutions, and learn Dynamics 365 for Operations was created for the purpose of the example of the book.

Getting ready

Before we get started, we will need an LCS project and a VSTS site. The VSTS site can be created through the following link:

https://www.visualstudio.com/en-us/products/visual-studio-team-services-vs.aspx

Once we have the site created, we can then create our project.

How to do it...

To create the project, follow these steps:

  1. Navigate to your VSTS site, for example, https://<yourdomain>.visualstudio.com/.
  2. Under Recent projects & teams, click on New.
  3. Complete the form as shown as follows:

Field

Value

Project name

Unique name, careful to name the projects for easy recognition, and how they are ordered. This is more important for ISVs who may have many projects.

Description

Short description of the project

Process template

Agile

Version control

Team Foundation Version Control

  1. Press Create project.
  1. Once complete, you can then navigate to your project and work with VSTS in order to plan your project.
  2. To authenticate with LCS, we will need to generate a personal access token; to set this up, click on the control panel (cog) icon, as shown in the following screenshot:
  1. This takes you to the control panel, again, on the top-right click on your name and choose Security, as shown in the following screenshot:
  1. The personal access tokens option is selected by default; on the right-hand pane, click on Add.
  2. On Create a personal access token form, enter a short description, for example, the LCS project name. Set the Expires in field based on how long you would like it to last for.
  3. Leaving the Accounts and Authorized scopes fields as default; press Create token.
  4. Finally, copy the resultant access code into a safe place; we will need it when we link VSTS to LCS. If we don't, we will have to create a new access token as you can't see it after the web page is closed.

Next, we will need to link the project to our LCS project. If an LCS project is not currently linked to a VSTS project, we get the following message on the left hand side, as shown in the following screenshot:

To configure VSTS for the LCS project, follow these steps:

  1. To authenticate with LCS, we will need to generate a personal access token, so from within VSTS.
  2. Click on the Setup Visual Studio Team Services button in the Action center dialog box.
  3. On the Enter the Visual Studio Team Service site page, enter the URL of our VSTS site into the Visual Studio Team Services site URL field; for example, https://<mysite>.visualstudio.com/.
  4. Enter the personal access token generated earlier into the Personal access token field.
  5. Press Continue.
  6. On the Select the Visual Studio Team Service project page, select the project from the Visual Studio Team Service list.
  7. You are then shown the Workitem type mapping list. This allows you to select how to LCS Workitem Type / LCS Workitem Sub Type elements to VSTS Workitem Type elements. Leave this as the default and press Continue.
  8. On the final Review and save page, press Save.
  9. This takes us back to the main project page and the action center will ask you to authorize the project; click on Authorize.
  1. You will be warned about being redirected to an external site; click on Yes.
  2. You may be asked to log on; if so, do it with the account you use for VSTS, which might be your Microsoft account.
  3. This will open the Authorize application page from within VSTS, and you will be told that you are allowing Microsoft Dynamics Lifecycle Services to access the VSTS and the specific permissions it will receive. Press Accept.

How it works...

Operations uses VSTS for its source control, work, and build management. The only steps here that we technically must perform are step 1 through step 5, but without performing the previous steps, we lose the ability to integrate LCS. If our project was for a customer implementation, we should consider it mandatory to integrate VSTS with LCS.

See also...

For more information on VSTS and LCS, please check out the following links:

  • AX Dev ALM usage guide and resources (https://blogs.msdn.microsoft.com/axdevalm/)
  • LCS for Microsoft Dynamics 365 for Operations customers (https://ax.help.dynamics.com/en/wiki/how-lifecycle-services-for-microsoft-dynamics-ax-works-lcs/)
  • Developer topology deployment with continuous build and test automation (https://ax.help.dynamics.com/en/wiki/developer-topology-deployment-with-continuous-build-and-test-automation/)

The next link is useful background knowledge, but a lot of this is one for you when using an implementation LCS project:

  • Set up technical support for Microsoft Dynamics 365 for Operations (https://ax.help.dynamics.com/en/wiki/ax-support-experience/)

This link is for when we have a customer implementation project and demonstrate some of the synergy of leveraging VSTS and LCS with Operations.