so as I understand it, you wont the flow to trigger when status is set to Completed, and after that not to run again.
Right now your trigger condition will run on every edit as long as the Status is set to Completed. So you need to add one more condition so that it only runs the first time it is set to Completed. There are different ways this can be achieved, but I think in your case this makes the most sense:
- Add another field "WorkflowHasRun" and set the fields default value to "No"
- Update the trigger condition to
@and(equals(triggerOutputs()?['body/Status/Value'], 'Completed'),equals(triggerOutputs()?['body/WorkflowHasRun/Value'], 'No'))
- Add an update item action to your workflow that sets the "HasWorkflowRun" value to "Yes"
This way the workflow will only fire once per item after it is set to Completed.
There is of couse also the possibility to let the flow check if the Status field has changed (with the Get Changes action), but this is perhaps more suited if items can go back from the Completed status and then later again go to Completed.
Hope it works :)