I have a [Status] column with {Not Started}, {In Progress}, and {Done}.
When it changes to {In Progress}, I want it to record the current Date/Time in a [Date Started] column.
If I change it back to {Not Started}, I want it to clear the date.
If I change it to {Done} without ever selecting {In Progress} I want it to record the date then.
If I change it from {In Progress} to {Done}, I don’t want it to update the date.
Seems simple enough, here was my best guess at an elegant solution:
I created a [Started] Checkbox column that checks automatically if [Status] is one of {In Progress} or {Done}, then I put this formula into my [Date Started] column calculation: If(thisRow.Started=True(),Modified(thisRow.Started),“”).
This didn’t work and I’m not sure why…
I’m guessing it’s because the [Started] Checkbox column was ‘changed’ by it’s calculation but was not ‘modified’ manually by me.
I’m sure I could use an automation, it’s a hidden column anyway; I just usually try to avoid them if possible for inputting due to the delay.
Maybe the solution is simpler than I’m making it out to be, but I’m stumped. If the only way to accomplish this currently is with automation that’s fine, I would definitely recommend either adding a “Changed” function for this scenario, or extending the “Modified” function to encompass changes made by calculation the same as those made by the user.
I’m afraid automations would probably be the way to go then. [Started] won’t record any info for Modified() to use, you’d have to give it the [Status] instead but then your target logic probably fails: If(thisRow.Started, Modified(thisRow.Status), "").
I mean that if I group by status, I can’t drag the card from Not Started → In Progress → Done to change the status and still have it update when it started.
I hear what you’re saying, it’s just not the most elegant solution IMO. I usually prefer to not have to go an extra step to accomplish something. If my brain is going to intuitively think “change the status from the dropdown” I don’t want to have to remember that it’s actually controlled from some other button.
Same thing with moving cards, naturally I think, “okay, now drag to the next bucket” and I would then have to have another button on the card and remember to click it to initiate the action.
It’s not that it wouldn’t work, just that it doesn’t feel very clean.
I ended up using automation. I think I’m just hoping that coda introduces a Changed() function or updates the Modified() function to include when columns are ‘modified’ due to calculations.