Forum Discussion
Gantt Tasks - Circular dependancy
Dear all,
I created a simple table containings tasks like this:
- taskId
- startupGoalDate: target date of start
- previousTaskEnd: calculated with a LOOKUPVALUE on the 'forecastedEnd' of the previous task
- duration: number of days
- forecastedStart: calculated, MAX(startupGoalDate, previousTaskEnd+1)
- forecastedEnd: calculated, forecastedStard + duration
I compute the forecastedStart date of a task using the forecastedEnd of the previous task in order to avoid task overlapping.
PBI raise a circular dependancy error because I calculate forecastedStart with the forecastedEnd of the previous task, calculated with the forecastedStart of this task.
i guess this error came for the columnar behaviour of vertipak.
does anyone knows a workaround ?
cheers,
François-Xavier
2 Replies
- v-juanli-msftCommunity Support
Hi @fxzak
In your scenario, forecastedStart use previousTaskEnd, previousTaskEnd use forecastedEnd, forecastedEnd use forecastedStart, it is weird?
As you said, these columns above are all calculated column, so they are not in your original dataset.
While you create one column based on another one, there must be one in the beginning, but both of them depend on each other, the logic is uncorrect.
Could you please share your original table and which formula used to calculate the three columns for further analysis?
Best Regards
Maggie
- fxzakRegular Visitor
Hi Maggie,
Thank you for your response.
To start, I have to indruducte the context: manufacturing.
Each task is an assembly operation. Astasks are chained, task B can't stard until task A is completed, task C can't stard before completion and task B and so on...
For each task, i got a schedule with targeted start date and end date.
Constraints change the rules, so dates have to be postponed and schedule must be re-calculated.
This this the purpose of my PBI project: rescheduling tasks based on constraints.
For the row with [taskId] = 1 : [parent] is null and [worstConstraint] is null then [forecastedStart] has the same value than [startGoal] (01/01/2018). [forecastedEnd] equals [forecastedStart] + [leadtime]
For the row with [taskId] = 2 : [parent] = 1 and [worstConstraint] is not null then [forecastedStart] equals to the maximum value of [startGoal], [worstCosntraint] of the current row and the [forecastedEnd] of the parent row.
Unfortunately, this approach creates a circular dependancy, because my logic might be wrong.
any chance to get this result on power bi ?