I set up my table with a Predecessor field (linked field back to the table). I’ve been using this to drive some calculations on dates for sequencing and showing in the Gantt chart. However I want to also use the successor for some other calculations.
Here’s my question.
In the Gantt Chart view you can click on a record and it will show the predecessor and successor (if they exist). I have only set up Predecessors in my table. However for a record that is “in the middle” of a chain - the Gantt Chart view will show the predecessor (which I set) AND the successor (which it knows as that successor record is set as a predecessor for the record selected).
Is there a way (via a formula?) that I can access what the Successor record is? Clearly it’s available as it’s shown in the Gantt view but I can’t seem to determine it from a formula.
Hello and welcome to the Community @Kevin_StellarAlgo!
The Gantt view dynamically displays the “Successor” of a record based on the relationship of the records involved.
For example, in the below image we can see the successor for the
Prep timelines for presentation record is the
Company-wide presentation record. The Gantt view displays these records, in order, using the date ranges on each record.
In this scenario the manual linking we did was to link
Prep timelines for presentation as
Company-wide presentation's predecessor:
The Gantt view can extrapolate based on the timeline, and the predecessor relationship we already set up, that
Prep timelines for presentation comes before
Company-wide presentation so it dynamically asserts that
Company-wide presentation is the successor in that scenario.
So essentially, there is no static value kept on a record to keep track of its “Successor”. May I ask what formula your are trying to build that would require knowledge of a record’s “Successor”? We might be able to figure out a workaround together if you fill me in a little more on the use case.
Rose - thanks for the explanation. It’s a bit of a rabbit hole - i’ve created some calculations that will automatically adjust dates based upon some rules. e.g. When determining the calculated Start Date for a task … check if there’s a predecessor task, and if so, make the start date one workday after the end of the predecessor. Otherwise … “bunch of logic unrelated to linked tasks”
That works well as I have set up my dependencies all as predecessors. However, I now have a use case for back scheduling … taking the start date of the LAST task in a chain , and calculating the end date of the predecessor as being the prior workday of the start of the successor task. That will allow me to slap in a target date at the end …and have it calculate when the various tasks before it should be starting.
Clear as mud? lol
I can probably find another way … but I already have a boat load of calc “helper” fields that i use to make this magic happen (in large part because if I did it the way I wanted to … it results in a circular/recurisive formula in AirTable - so I do a bit of “store the calc’d date”, “copy to another field” … and then that other field is used to calc the next.
This sound super nifty—but I’m having a bit of a hard time visualizing it. If you’d feel comfortable, I would love to see a video/screenshot, or base share, of the what you are working with now and the formulas available to you? I’m a hands-on problem solver so this is situation I’d need to build out an example to play around with to get a better grasp of the problem.
I’m a bit swamped at the moment but I could walk you through it in a couple of weeks likely via a zoom call). It’s one of those things that started off simple and then got real complicated (mainly due to AirTable constraints on formulas, and I didn’t want to get into scripting or writing code on it - excluding my overly-complicated cell formulas lol). You’ve answered my initial question about if there was a way to access the “successor” that is reported on for the Gantt - so I’ll stop trying to figure that out.)
What time zone are you in? i’m in North America Mountain (UTC - 7). though we’re on “daylight savings time” so it’s currently UTC - 6.