Business Events in Dynamics 365 Finance and Supply Chain – How To
It is time to shine some light on a lesser known tool in D365, the Business Event. The Business event has been around since early 2019 but somehow has managed to fly under the radar. It can be a very valuable tool in connecting D365 with a variety of external systems and resources. We are here to help introduce you to where Business Events have been hiding and how to get started.
But first, a word from our sponsor, Technical Garbledy-goo: Business Events is only available in D365 Finance version 10.0.2 (May 2019) with platform update 26 or later. Any user of AX 2012, or its aging ancestors, should consider calling us for some words of comfort and directions to the upgrade path!
Let’s start with a deconstruction of the key components of a Business event: Business event catalog, Endpoints, and Download schema/Field list. To get to the Business events catalog in D365, start in Modules, navigate to System administration>Setup>Business events> Business events catalog or search Business events.
The Business events catalog is list of all the available Business event triggers in the system. There are a few basic bits of information in the grid: Catalog, Business event ID and Name. The catalog is the field that indicates from where the event originates. For example, Business events that are created in the workflow system will show in the catalog in the Workflow category. Let’s look at an event in more detail.
The Business event, Purchase order received, is highlighted above. When an event is highlighted, context sensitive information appears on the right. It will have a description of the Business event and the fields that are sent when the event is triggered.
The description shown below will describe how the event is triggered. In this case, it can be a manual process, batch, or programmatically in code.
The next section shows the fields that are used in the Business event. We can see below the familiar fields from the Purchase order like PO number and Vendor ID.
Notice there is an option to “Download schema.” This will output a text file that might be required when integrating with external systems.
The Endpoints allow the system to manage the external resources that can be accessed when a Business event is triggered. There are currently seven (7) supported endpoint types: Azure Service Bus Queue, Azure Service Bus Topic, Azure Event Grid, Azure Event Hub, Microsoft Power Automate, HTTPS, and Azure Blob Storage. To view available Endpoints setup in the system, click on the Endpoints tab. Available endpoints will be listed, if there are none showing, one will need to be created. Clicking the New button will open up the Configure new endpoint sidebar and the dropdown will display the Endpoint types. Creating endpoints does require some additional knowledge and you can check out our upcoming blog on setting up Endpoints for more detailed information.
Once Endpoints are in place, go back to the Business events page and the Business event can be Activated. Click on the Activate button and the system will open the side bar. There are two values to configure: Legal entity and the Endpoint. A Business event can be active in one, multiple, or all legal entities. Note, that there will be an activation for each legal entity.
Now that we have seen the various parts of the Business event, let’s examine a simple Business event use case.
IKeyYah, a fictional home goods store, sells a very popular bedroom dresser, the Naalm. The Naalm is constantly moving in and out of stock and insatiable customers are waiting impatiently to buy one. If IKeyYah is using D365 they can set up a Purchase order received Business event to inform waiting customers that the product is available.
The system will trigger an event when then product is received and this will start the event logic. During this process, the event can store document information in the Azure cloud for future consumption. It can then use various handlers to grab the document information, in this case the STOCK LEVEL, and send it to a customer portal. This information can be consumed by attached mobile applications and inform the customer that the desired item is in stock. The illustration below shows this in action. The robot is optional, it just looked cooler than gears.
Some of this functionality might require custom code and because D365 allows custom events to be created, it opens the ability for many applications. When a custom Business event is created, it will show up in the Business events catalog.
Hopefully, this blog has examined the basic premise of the Business event and provided a solid example of how it is used.
Check out our other blog posts related to this topic:
Data, Data, Data Part 2: Thinking Logically – Azure Logic Apps for D365