Hi,
I have a trigger condition (shown below) to filter a SharePoint Item by Column 'Gate Review Status' is 'Complete'. I have this expression: @equals(triggerOutputs()?['body/Gate_x0020_Review_x0020_Status/value'], 'Complete').
I've also tried as
@equals(triggerbody()?['body/Gate_x0020_Review_x0020_Status/value'], 'Complete').
I tried
@equals(triggerBody()?['Gate_x0020_Review_Status']?['value'],'Complete'). Every time my test doesn't fail, but it just keeps running. If I take the
Solved! Go to Solution.
this was the expression that ended up working...
Take a look at the incoming JSON when the trigger fires. I've found that you can't do a trigger condition on a complex object like a choice column. But if you look closely you will see a section of the incoming JSON similary to the one below. This highlights a Status Choice column. As you can see there is a Status#Id property. This is the index of the selected choice. Although you can't filter the trigger on the value of Status you can filter on this Id.
I'm not having any luck with that, either.
Not the ID of the Status field. There should be a property in the first level that is a simple integer called something like 'Status#Id' where Status is the name of the field. The trigger query can't expand the complex object but it can access the first level simple properties.
this was the expression that ended up working...
@Pstork1, I am trying to use a trigger condition to execute only when my Sharepoint List's Status column choice is changed to Completed. I tried both trigger condition expressions in the "When an item is created or modified" action but only works when I have nothing specified in the trigger condition under settings of this action.
I saw your first comment from 1/22/21 in this post, that trigger conditions do not work for choice columns. Do you know if this is still the case? I would like to only have this flow execute upon the Status field changing to Completed vs. anytime any column change in the list. In my No condition I am using Terminate with the Cancelled output so I know when the Status column has/ has not been set to completed.
@equals(triggerOutputs()?['body/Status/Value'],'Completed')
@not(equals(triggerOutputs()?['body/Status/Value'],'Completed'))
You can't do a trigger condition that will only pick up that the Status has been Changed. The following will fire whenever the item is changed if the Status is "Completed"
@equals(triggerOutputs()?['body/Status/Value'], 'Completed')
To do what you want you then need to have something in the flow that fires that first time which records that the Status was changed to Completed. Your Second Trigger condition would then be based on whether that value was still in its initial State. If it isn't in that initial state then the modification isn't the first time the record was modified with Status Completed and the flow shouldn't trigger.
The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.
Announcing a new way to share your feedback with the Power Automate Team.
Learn to digitize and optimize business processes and connect all your applications to share data in real time.
User | Count |
---|---|
71 | |
26 | |
19 | |
15 | |
15 |
User | Count |
---|---|
143 | |
43 | |
42 | |
34 | |
32 |