Up to now, I have not needed to start a workflow conditionally. I have a reference library and each document in the library has a process owner. When a reference document is updated we have the workflow send a notice to everyone on the program so they are alerted, for example to an update in a policy letter. The issue we are having is that when a change is made to the process owner (just a field in the library) we do not want to trigger the workflow. This sounds like it should be simple but I am struggling to come up with an idea/strategy to do this.
I see where the option to compare "Process Owner (previous value)" to the "Process Owner" exists and a "Equals" comparison would do the trick in most circumstances...
...but what if the document is updated and the Process Owner is updated. IN that case we would want the alert to go out, even thought there was a Process Owner change.
Solved! Go to Solution.
if document is updated, it's version should change, shouldn't it?
if only process owner is changed, document version should not change.
so you could base your condition on these two fields.
If you mean by "document version" the sharepoint-version, then this will change if you change any meta-data. You could try to go by file-size ... but this could be tricky as well, since you might change the content without changing the file-size.
So the need is..
I stared at the conditional abilities for a bit and it's definitely a logic puzzle I will be thinking about .. very fox, goose, grain.
I am going to continue thinking about this but it might come down to a checkbox .. "Run Workflow?" on form. (That's the cheating way out, though.)
I will keep thinking.
I started down the path of considering each field as a numerical item... Process Owner as 0 and everything else as 1 ... and all updated fields added together in a calculated field to produce either a 0, or a number larger than 0. That'd make a conditional start quite easy ... but ... I am trying to figure out how to determine whether or not a field in a form is updated from what it last was.