I am trying to use automation to calculate values and store them in columns. The purposed of this is to avoid having virtual columns with 10+ select statements in them and this gets messy to read and slows things down.
So the idea was to run a process every night to perform these calculations. To break the logic up in smaller pieces and to re-use formulas, I created a couple of sub-processes that return data.
What I discovered was that the variables returned only work for the first record that is updated.
I created a small example to test this. so I did the following:
An event is triggered by a times and it has a condition [_ROWNUMBER] > 3
The first step calls a process which returns a variable called timeNow. The sub-process that is called sets timeNow = TEXT(NOW())
The next step calls an empty process and it sets the value of two columns, col4 and col5.
col4 = TEXT(NOW())
col5 = [calling process].[timeNow]
The updated table looks like this:
If I update the condition in the event to say that the row number should be greater than 6, I get this:
The result is the same if i click “run” or if the process is triggered by the timed event. Looking at the monitoring, the variable is set correctly for each record.
Surely, this is not the intended behaviour?
My understanding is that automation is not in beta and you are requiring us to move all workflows to it.
That is fine, but could you guys please get the variables to work properly?
In addition to the problem here, we still have the limitations that variables set inside a fork are not accessible and that variables can’t be accessed in tasks.
I think variables are a really good idea but, at the moment, they are not really very useful.