NOTE: by adding 1 decision gateway and two branches at the final state it sums both sides of the gateway to the beginning and then finally adds them together so the sum is double.
Thanks
Hi John
Thank you for contributing to the Lucid Community! Sorry for the trouble you have been experiencing. This issue actually sounds like something we've seen before in this thread where another user was attempting to sum the "time to completion" across a process with different paths that branched at a decision node. There we observed that even though the user had configured her custom data and formula correctly the upstreamdeep
formula simply was not calculating the values as intended and concluded it was a bug. While your set-up sounds a bit different I believe the core problem is the same. If so I can confirm this is a known issue that has been reported to our development team who is actively looking into it. I apologize for any disruption this may cause and I will update this thread here as well as the other thread with this issue with any new information about a fix.
Just in case it's helpful here's an additional resource you can explore: the Lucid Developer Docs! They show a wide variety of formulas that are available and details for how they work. I've linked the page that discusses the upstreamdeep
formula in case you find it helpful. Please let me know if you have any additional questions.
Thanks for the information. I created the following test case that CAN be made to work as long as NONE of the decision branches become re-entrant:
Question is can I add a re-entrance gateway with a formula that will look back at the previous branching gateway to see property DECISION and follow a property on the lines BOOLEAN=TRUE or BOOLEAN=FALSE to then "lookup" only the member objects on the line whose BOOLEAN value is equal to the DECISION property at the gateway? This likely would have to support some kind of recursion. Alternately the branching gateway could stop further recursion but would have to provide a {{=SUM(UPSTREAMDEEP.'tte')}} to pass on the previously summed value up to that gateway to the next branches calculations.
Please advise.
addendum:
{{=SUM(UPSTREAM2GATEWAY.'tte')}}
Therefore summation would be localized only to the linear tasks between gateways + the property in the initiating gateway.
Accumulation would have to happen at each gateway so that values could be "passed forward" to the select branch.
Hi John
Thank you for the reply and insight on your current workflow! You can use =LABEL(this)
to reveal the shape's unique ID which can then be used to reference this shape's "decision" boolean.
To be specific at your decision shape you can create an additional custom data field "uniqueShapeID" with the input:
=LABEL(this)
This will generate a unique ID (e.g. "9IB5o+Hp6pGIw7dO2x13OC1rq9o=") for the decision shape. The final shape can calculate the sum using a logical expression with the format =IF(expression resultTrue resultFalse).
Finally you can reference the "decision" data field using the shape's unique ID as is displayed below:
=IF(#"9IB5o+Hp6pGIw7dO2x13OC1rq9o="."decision"=TRUE resultTrue resultFalse)
I hope this helps! Please let me know if you have any further questions or concerns.