Recently, we figured out a strange issue with the Real time workflow while designing it.
We had designed a workflow on Phone Call entity, which was supposed to run when record status changes as well as on update of few fields on Phone Call. We had selected Execute as the owner of the workflow as we were updating some entities on which user was not having any permission. Below is the screenshot:
Then, we activated it and it started working without any problem.
Later, we figured out that this workflow needs to run on update of few more fields on the Phone Call entity. So, we deactivated it and selected the required fields.
Before we activated it, we verified that Execute as is still selected as The owner of workflow. However, when we activated it the selection was changed to The user who made changes to the record.
We had not noticed this change of selection until we saw that the workflow is failing to update the records on which the user was missing permission.
So, we deactivated the workflow again and selected Execute as the owner of the workflow manually(by selecting the 2nd option and then the 1st). Then, activated the workflow.
Then it started working fine.
So, after making any changes to the workflow in Start When section(highlighted below), it’s better to make the selection manually to Execute as the Owner or the User based on the business requirement.
Hope it helps !!