The most recent trend of Dynamics 365 system users, especially Supply Chain Management, is trying to extend their business outside the existing system. As for example, imagine a company named Contoso System USA that wants to extend its business to cope with employees and not operate directly in Dynamics 365.
In other words, they are eager to access up-to-date on-hand inventory data and analyze it afterward, in real-time. There are also various tasks from different stakeholders:
- IT team wants to access near real-time inventory to show on their new online store;
- Sales manager wants to trace the best sellers among the selected items to make comparisons;
- Business strategist needs to store the data for offline analytics;
- Dynamics 365 SCM developers want to apply customization logic to the above processes.
Hopefully, there is a way to satisfy them all.
There is the inventory data inside Dynamics 365 Supply Chain Management which is accessible with On-Hand List or Report under the inventory management module. This is a typical way of doing it from Dynamics 365 SCM.
You move the data outside Dynamics SCM and store it in a memory cache, where it would be making API calls via an HTTP request. Not only it provides a way to read the data, but also makes it possible for external systems to be aware of the inventory data of each other.
By leveraging the entry visibility service as the single source of truth, the MS team built extensions on various systems querying. For example, you can have the Web Store that queries the real-time unhand image tree. Or, you can have a third-party system, i.e., POS query, that makes queries to make sure they are enough quantities to put on orders that customers ask.
On-Hand Query inside Dynamics 365
Let’s also explore the inventory on-hand through Dynamics 365 as well as how to make API queries to inventory visibility.
We can also make the queries through Dataverse, as the inventory visibility service has a built-in solution on top of Power Platform, where we store the data in entities – so then you can leverage the flexibility provided by Power Platform.
Furthermore, there is a brand new feature named Query Pre-loading Entity that allows us to define a query and make a periodic update to an entity that stores query results every 15 minutes. The idea is to store the query results periodically so they are not real-time. The advantage is to put it in a more user-friendly way than Power Platform provides.
The cool thing about this feature is that users do not even need to bother making queries by themselves – simply go to feature management and enable one.
Still, what is the use? As we store data in entities, we are generally connecting imagery visibility service with Power Platform so you can read the data in a more user-friendly way. There are a lot of business-oriented people who wish to read excel-like data, exporting it from a direct UI access or Excel format.
Data Flow: Continuous Syncing of On-Hand Inventory
Finally, how is data synced from inventory visibility from Dynamics 365 to imagery visibility, keeping near real-time updates? There is a recurrent batch job behind the background to ensure that.
Let us consider a time when initial thinking is succeeded, and your on-hand data is on both sides. Within a short time interval, there is an operation in your Dynamic 365 SCM (let’s say someone added the on-hand quantity for an item), and the changes records during this time interval will be synced to inventory visibility service periodically, depending on the recurrent batch job that runs every minute from the background.
As a result, we have one-minute intervals where you’d get changes and refresh the imagery visibility in a very short delay. Currently, the batch job runs in a fixed interval of 1 minute. However, this is not the only way you can post data to imagery visibility with the built-in integration. You can use your own customizations to send more data in a more flexible way.