Hi there, I want to track the amount of progress on a project over time. For example, I want to show on Week 1 it was at 0% complete
Week 2 10% complete
Week 3 30% complete
etc.
How do I do this in Coda?
Hi there, I want to track the amount of progress on a project over time. For example, I want to show on Week 1 it was at 0% complete
Week 2 10% complete
Week 3 30% complete
etc.
How do I do this in Coda?
Incorrect flag, you meant to use “Ask the community”
I moved the topic @SureKT.
And @Lorraine_Becker, I’ll see if I can draft up an idea.
Hi @Lorraine_Becker,
If you only need to see real-time data, then a table with a column for progress works great. If you need to track the progress each week, then we need to write that data to a new table each week so that it isn’t rewritten every time the current progress changes.
Here is an example using several features in Coda that might help. The first table is the main “Projects” table and the second table uses a Lookup column to the first table. There is a button that will write the current values to the second table and we can use an automation to do this every week automatically if we want.
This is a basic idea and can be customized and built on top of if you have other requirements, but it’s a pretty good starting point for the concept.
Let us know if you have questions on this setup!
That’s a quick and dedicated support, I wish I was treated the same
You have a slightly more complicated question @Laurent_Auneau
Dear @Laurent_Auneau,
Please be aware that this community exists by the sake of free support of the Coda enthusiast and Codans.
As Ben mentioned, some questions are more complex and need more research to see if a solution can be found.
More community members and me have questions that never have received a reply/solution
I am sure your response was more emotional, finally we all are humans
My response was purely a joke Jean-Pierre!
That’s why I added a in the end.
I think Ben got that right (and just answered me anyhow).
Even though I was not expecting it
-L
Thank you BenLee!
LORRAINE BECKER
T +1 403-804-4177
Calgary, Alberta, Canada (MDT)
lorraine.becker.yyc@gmail.com lorrainebecker.ca
Thank you SO much BenLee. This is awesome. I can use this to work from to build what I need. Thank you!
Much appreciated.
Instructions for this should be placed in the Help section somewhere.
Thank you
Lorraine
Hi @benlee is there a way to set this up with an automation so that the progress is automatically captured once per month? I have tried a few different things but the formula in automations is different from the Button settings.
Thank you!
Lorraine
I actually have an automation included in the doc, it’s just turned off since it’s a sample. If you copy the doc, you’ll be able to see it.
The automation is set to push that button every week on Sunday morning. You can check the settings there and test it as well. You can also change the time interval to whatever you need.
And to keep the automation from recording every project even after it’s done, you could go to the button options and in the disable field you could add something like if the progress is equal to “100”, then disable the button. The automation will only push buttons that are enabled. This will keep your table cleaner.
The automated solution requires that the doc is actually open, right?
Could one instead store the date when a status is changed to done and when rows are created? Then one could do all kinds of neat things, I think.
@Stefan_Singer automations will run whether the doc is open or not! coda magic
Hi @BenLee this is a great solution. As it is 3 years old just wondering if it is still the way you would address this problem.
I want to do the same thing but I need to capture progress over time (monthly) of individual tasks of which I might have a 100 in a project - do you foresee any issues with adopting the above approach?
Many thanks
Andrew
Hi @Lorraine_Becker ,
I had a solution to a problem with a few similarities to yours, maybe it can help you in a different way. I was needing to see something like:
Im my code, I group by week using WithName(), and then filter:
WithName(
Today() - Days(IsoWeekday(Today()) - 1),
startOfWeekCurrent,
WithName(
startOfWeekCurrent - Days(7),
startOfWeek1,
WithName(
startOfWeek1 - Days(7),
startOfWeek2,
List(
// week 1
WithName(Round(
ToHours(
Timesheet
.Filter(
[Start time] >= startOfWeek2 AND
[Start time] < startOfWeek1 AND
)
.[Time Spent]
.Sum()
),2),
totalHoursWeek1,
"Two Weeks ago: " + totalHoursWeek1 + " hours" +
If(
totalHoursWeek1 > ToHours(Hours(40)),
"Two weeks ago: " + Round((totalHoursWeek1 - ToHours(Hours(40))),2) +
" hours overtime",
Character(10) + "Two Weeks ago: 0h overtime"
)
),
// week 2
WithName(
Round(
ToHours(
Timesheet
.Filter(
[Start time] >= startOfWeek1 AND
[Start time] < startOfWeekCurrent
)
.[Time Spent]
.Sum()
),2),
totalHoursWeek2,
"Last Week: " + totalHoursWeek2 + " hours" +
If(
totalHoursWeek2 > ToHours(Hours(40)),
"Last Week: " + Round((totalHoursWeek2 - ToHours(Hours(40))),2) +
"hours overtime",
Character(10) + "Last Week: 0 hours overtime"
)
),
// current week
WithName(
Round(
ToHours(
Timesheet
.Filter(
[Start time] >= startOfWeekCurrent
)
.[Time Spent]
.Sum()
),2),
totalHoursWeekCurrent,
"Current Week: " + totalHoursWeekCurrent + " hours"
)
)
.BulletedList()
)
)
)
Let me know if you have any question