Hi all,
I have a pretty straightforward but catastrophic issue going on in regard to one of our business processes.
The need: Immediately auto save/commit all dirty changes on a record as they occur, at least for one specific entity
The reason for the need: We have a robust custom system in place that helps us keep track of inventory levels across all warehouses' product inventories in D365 field service. The problem is that when products are used in work orders, or products are added to a product inventory via an inventory adjustment or transfer, the product inventories are not committing the changes to the quantity available/quantity on hand values.
This is a big issue because there are rollup fields on each parent Warehouse record that aggregate the total number of all products across all product inventories, and reports are run on this data. With unsaved changes lingering on the product inventories after adjustments, the rollup fields become inaccurate and thus affects any reports drawn from them. The same issue occurs when a new product inventory is added; the quantity available is not reflected in the parent rollup fields until I physically open the record and manually save it.
(I can tell the changes are not being saved, as every time one has its quantity updated, the record shows unsaved changes)
I have exhausted myself unsuccessfully attempting to put together a solution to this, including creating power automate flows to update the record and force the changes to commit, workflows, custom ribbon commands, on change events. An ideal solution would be javascript code that would always save/refresh the record when the quantity field is modified, or a custom ribbon command that would allow me to select records from either a grid or subgrid and save/refresh all selected, committing any unsaved changes.
If anyone has any insight at all on why this might be occurring, please let me know. Thanks so much!