Extending Microsoft Dynamics 365 Finance and Supply Chain Management Cookbook
eBook - ePub

Extending Microsoft Dynamics 365 Finance and Supply Chain Management Cookbook

Create and extend secure and scalable ERP solutions to improve business processes, 2nd Edition

  1. 534 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Extending Microsoft Dynamics 365 Finance and Supply Chain Management Cookbook

Create and extend secure and scalable ERP solutions to improve business processes, 2nd Edition

About this book

A practical recipe-based guide to extend your Dynamics 365 Finance and Supply chain management implementation.

Key Features

  • Extend Dynamics 365 Finance and Supply Chain Management features in a cost-effective manner
  • Learn how to integrate with other applications and services securely using Business Events, OData and the Service Bus
  • Extend and hook into standard processes safely using Chain of Command

Book Description

Dynamics 365 Finance and Supply Chain Management is Microsoft's ERP solution, which can be implemented as a cloud or on-premise solution to facilitate better decision-making with the help of contemporary, scalable ERP system tools. This book is updated with the latest features of Dynamics 365 Finance and Supply Chain Management including Chain of Command (CoC), Acceptance Test Libraries (ATL), and Business Events. The book not only features more than 100 tutorials that allow you to create and extend business solutions, but also addresses specific problems and offers solutions with insights into how they work.

This cookbook starts by helping you set up a Azure DevOps project and taking you through the different data types and structures used to create tables. You will then gain an understanding of user interfaces, write extensible code, manage data entities, and even model Dynamics 365 ERP for security. As you advance, you'll learn how to work with various in-built Dynamics frameworks such as SysOperation, SysTest, and Business Events. Finally, you'll get to grips with automated build management and workflows for better application state management.

By the end of this book, you'll have become proficient in packaging and deploying end-to-end scalable solutions with Microsoft Dynamics 365 Finance and Supply Chain Management.

What you will learn

  • Understand the importance of using patterns and frameworks for creating unique solutions
  • Write code that can make your solution extendable
  • Leverage new frameworks that allow your solution to adapt as your business grows
  • Design the UI and business logic to fit standard patterns
  • Understand how to not only write unit tests, but also perform efficient unit testing to automate the testing process
  • Design your security model and policies to provide code access privileges

Who this book is for

This Dynamics 365 book is for anyone who wants to learn Dynamics 365 Finance and Supply Chain Management development or migrate from C# or Microsoft Dynamics AX 2012 (or prior) development. Although finance and Supply Chain Management experience is not necessary, a background in software development is required. You will also need access to Microsoft's Lifecycle Services to download the necessary development tools.

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, weโ€™ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere โ€” even offline. Perfect for commutes or when youโ€™re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Extending Microsoft Dynamics 365 Finance and Supply Chain Management Cookbook by Simon Buxton in PDF and/or ePUB format, as well as other popular books in Computer Science & Business Intelligence. We have over one million books available in our catalogue for you to explore.

Information

Data Structures

In this chapter, we will cover the tasks required to write the data dictionary elements commonly used within Supply Chain Management (SCM) development.
Data structures in SCM are not just tables and viewsโ€”they also include the ability to define a data dictionary. This is now called the data model in SCM. The data model hasn't changed much in structure since AX 2012, but is much more refined, with many more features to aid development and minimize the footprint when extending standard tables and types.
This chapter does not cover creating extensions of standard types, but it does cover how to create types that allow your structures to be extensible. Extensibility is covered in Chapter 5, Application Extensibility.
Most development in SCM is based on patterns, even if we are not aware of it. This classically means code patterns, but SCM unifies the code, data model, and user interface design. So we have patterns to follow when creating the data model. For example, the vendor and customer lists are very similar and are called main tables. Purchase orders and sales orders are also very similar, which are worksheet tables; in this case, order headers and lines.
Tables in SCM have a property that defines the type of table, and each type is associated with a particular style of form for the user interface. We could, therefore, consider these types as patterns. If we think of them as patterns, it is far easier to apply the recipes to our own development.
The following list is of the common table types, listed with the usual form design and the typical usage:
Table group Form design pattern Usage
Miscellaneous None This is essentially "undefined" and shouldn't be used, other than for temporary tables.
Parameter Table of contents This is used for single-record parameter forms.
Group
Simple list
Simple list and details-ListGrid
This is used for the backing table for drop-down lists. The Simple list design pattern is suitable for when only a few fields are required; otherwise, the Simple list and Details patterns should be used so the fields are presented in a useful way to the user.
Main Details Master This is used for main tables, such as customers, suppliers, and items.
Transaction header
Transaction Line
Simple List and Details with standard tabs
This is used for datasets, such as the invoice journal form, which contain posted transactional data with a header and lines.
Transaction
Simple List and Details w/ standard tabs This is used for tables, such as the inventory transaction form, which contain posted transactional data but at a single level.
Worksheet header
Worksheet line
Details transaction This is used for data entry datasets, such as the purchase order, where the dataset is made up of header and line tables. The pattern has two views, a list view of header records, and a detail view where the focus is the lines.
Worksheet
Details Master
This is a single-level data entry dataset, which is rarely used in SCM.

In this chapter, we will create types and tables for the common types of table, but we will complete the patterns when we cover the user interface in Chapter 3, Creating the User Interface.
In this chapter, we will cover the following recipes:
  • Creating enumerated types
  • Creating extended data types
  • Creating setup tables
  • Creating a parameter table
  • Creating main data tables
  • Creating order header tables
  • Creating order line tables

Technical requirements

You can find the code files for this chapter on GitHub at https://github.com/PacktPublishing/Extending-Microsoft-Dynamics-365-Finance-and-Supply-Chain-Management-Cookbook-Second-Edition/blob/master/Chapter%202.axpp.

Creating enumerated types

Enumerated types are called base enums in SCM, which are similar to enumerated types in C#. They are commonly referred to as enums. An enum is an integer referenced as a symbol, which can be used in code to control logic. It can also be used as a field in a table that provides a fixed drop-down list to the user. When used as a field, it has the ability to provide user-friendly labels for each symbol.
Base enums are usually only used as a drop-down list if we need to understand, in code, what each value means. They should contain a small number of options, and when used as a field, the list cannot be searched or extended by the user.
All enums have to be defined in the data model before we use them and can't be defined within a class or method.
Base enums are given the ability to be extensible in this release; the mechanics of this are covered in more detail in the There's more... section.

Getting ready

The following tasks continue the vehicle management project, ConVehicleManagement, which was created in Chapter 1, Starting a New Project, although this is not a prerequisite. We just need an SCM project that was created as an extension project.

How to do it...

In order to create a new Enum, follow these steps:
  1. Either right-click on the project (or any sub folder in the project) and choose Add New item....
Always try to use keyboard shortcuts, which are displayed next to the option. In this case, try Ctrl + Shift + A.
  1. This will open the Add New Item window. From the left-hand list, select Data Types, which is under the Dynamics 365 Items node.
  2. This will filter the available options in the right-hand list. From this list, choose Base Enum.
  3. Enter a name, prefixed appropriately. In this example, we are creating an enum to store the type of vehicle; so, we will enter ConVMSVehicleType as Name and click Add.
This should have created a folder called Base Enums or added the new Enum to the folder if it already existed. This is regardless of the folder we selected when the Enum was created. If this did not happen, th...

Table of contents

  1. Title Page
  2. Copyright and Credits
  3. Dedication
  4. About Packt
  5. Contributors
  6. Preface
  7. Starting a New Project
  8. Data Structures
  9. Creating the User Interface
  10. Working with Form Logic and Frameworks
  11. Application Extensibility
  12. Writing for Extensibility
  13. Advanced Data Handling
  14. Business Events
  15. Security
  16. Data Management, OData, and Office
  17. Consuming and Exposing Services
  18. Unit Testing
  19. Automated Build Management
  20. Workflow Development
  21. State Machines
  22. Other Books You May Enjoy