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 event handler methods

We have already created an event handler in the previous recipe.

So far, we have created an event handler for data events using the DataEventHandler decoration and a delegate event handler using the SubscribesTo decoration. We can also add handlers directly to any public method.

There are two types: a pre-event and a post-event handler. One example of where we may need to do this is the SalesTable.insert() method. This doesn't call super(), so we can't use a data event handler.

The actual insert occurs within the SalesTableType class in the insert()method. If you want access to the sales table record, you need to add the handler to the table as the record being inserted is a private variable to the class.

Event handlers like this are used to integrate specific solutions, so the handler will be in a class in the specific package.