When building solutions with Flow and SharePoint I often come across the same problem. The solution should do something every time the user updates item in SharePoint list. But this "something" depends on column user has updated.
Unfortunately, there is no action for this use case. You can call SharePoint Rest API from Flow and find the previous version of the list item. Compare it with the current one and figure out which fields the user has edited. Solved!
Sounds too complicated for me. You can achieve the same functionality way easier. Just store items previous values in another SharePoint list. By using Flow of course.
Example - Order Processing
Let's build a light order processing solution using PowerApps + Sharepoint + Flow. Orders are stored in a SharePoint list having the following fields:
When order item is updated we like to do the following
First, we create a new list where previous values of each item are stored. For our example we need
And of course, the original item id (OrderID).
Now we create a Flow that is triggered when a new order is placed. It creates a corresponding item in our history list.
Now, whenever a new order is created in the order list.
The corresponding item is created on our history list.
Next, we create a Flow triggered whenever an order item is modified. The first action gets a matching item from our history list. This can be done by utilizing the OData filter.
Now we can find out whether the order status is changed or not. In other words, whether the modified order line status is different from the status of the corresponding item on the history list.
If the status is changed, we will do different actions depending on what the new status is (approved orrejected).
Next, we find out if approver has changed. If it is an e-mail notification is sent to the new approver. If the approver isn't changed we do nothing.
At the end of Flow, we update new values into the history list.
So straightforward that I almost feel ashamed.
Final Flow looks like this.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.