Hourly timesheet

I’m actually working on a time tracking doc for myself right now.

My basic approach is as follows.

  • Two main tables: tasks and time entries. Time entries are each linked to a task and have a start and end time. I also have a “time entries” column on Tasks that contains all the time entries associated with that task.
  • A start timer button column on the tasks table creates a time entry and links it to the task. Sets start time to Now(). It leaves the end time blank but a “calculated end time” column basically says the end time is the difference between start time and now. This way we can still represent the end time and duration easily when we need to.
  • A stop timer button column on the tasks table modifies the latest time entry for that task (the one that is running) by setting the end time.
  • I also have a “running” column that these buttons set to true or false that allows me to do some other cool things (like conditional formats, disabling appropriate buttons etc).

I can’t share the doc because I’m doing some redacted futuristic stuff in there (including making this pretty sweet with our upcoming mobile experience) but here is a GIF to give the gist.