cancel
Showing results for 
Search instead for 
Did you mean: 

Disable Event Firing when Flow updates a SharePoint list item

Add a feature that will allow flow to disable event firing when updating a SharePoint list item, so that the Flow doesn't get stuck in a loop. Currently if I create a flow with a SharePoint list trigger when item is created or modified and have the Flow update a field in the item the loop gets stuck in a loop. One workaround is to add logic to check if the field(s) still need to be updated and if not then don't update the item but even in that case the flow will be triggered twice. It just makes sense to have an option that will allow Flow to update an item without triggering an event that will cause the same Flow or another Flow to run against the item again.

Status: Declined

Hi all,

 

After thoroughly reviewing this idea, we have decided not to proceed with this idea for a couple of reasons.

  • SharePoint events are no longer event receiver based and are performed using webhooks or polling where applicable
  • Other Office 365 applications and internal systems like auditing may and will rely on such changes like updates to items, files and other entities in SharePoint

However, that said, we understand the crux of the issue which is to help avoid loops. We will work with the flow team to come up with a generic model/pattern that applies across data source/connections for similar scenarios.

 

Thanks all for your input and please submit/vote your ideas as we are actively monitoring the ideas forum.

 

Thanks,

Chaks

Comments
New Member

@Gristy thanks for responding and for the tip I will have to try that control at some point but was able to stop my looping by putting in a few hidden fields to based my conditions on.  

Anonymous
Not applicable

I've got a Power Automate Flow that runs whenever the user modifies an item in a List. It checks to see if the Status on an item changed by comparing a Status field with a Status_Old field on the list. I created that 'Status_Old' field to always mirrors the Status field (unless there's a change.) If the Status field was changed by a user (Condition: Status =/= Status_Old), it sends some emails and then at the end changes the Status_Old field to the new Status so that they equal each other again and awaits a Status field change again in the future.

 

The workflow runs successfully when I change the Status field on an item, sends emails successfully, updates status_old field successfully and then ends. Then a minute later runs again, for some reason passes the 'Status =/= Status_Old' condition near the top of the flow (workflow history shows the condition came out 'true') and runs the email and update actions again.

 

This exact workflow design had no issues running in SharePoint Designer. The same steps/logic in Power Automate result in this inadvertent looping. After reading some of the suggestions here, I tried throwing this as a Trigger Condition but it didn't help:

 

@not(equals(triggerOutputs()?['body/contract_status'], triggerOutputs()?['body/contract_status_old']))

 

Am I missing something?