A working prototype of time logging (Timeless Update)
One thing I love about FileMaker is being able to quickly create a working prototype. Without getting bogged down with systems and dependencies, I can really fly in FileMaker. Today I did just that.
Starting work on the work bench
Keeping the schema quite simple for now, I added a global field to indicate the focus date for data entry. This field is used in a relationship that allows the creation of records in the log table. In my legacy version of Timeless, each activity can have multiple log records per date. In this version, I decided change that: one log, per activity, per date.
Then I created a simple split view using a portal that shows records from the current table. I’m using the portal to show a found set of activities and the detail section for the display and data entry of related time logs. I’ll cover each of the controls below.
Data Entry Controls
Focus Date
This is the global date field that I mentioned above. On file open, this field is set to the current date. I may replace this in the coming weeks, as I’m considering the idea of a virtual list to show an entire week of dates instead of focusing on a single date. For now, this gets be a usable interface.
Mode
Button that toggles the value of a configuration variable. When this value is set to add
, the buttons below will add to the duration value, remove
subtracts the value.
💡 I stashed this in some JSON in a global variable. I might make an interface for these config variables using Custom Functions. Timeless Config
Time Buttons
These buttons were copied out of my legacy version. They all call the same script, passing in a number of seconds that will be applied to the duration field. I’ve already started tinkering with the idea of 🤷🏻♂️ this in JavaScript with some additional features and configuration options. For now, these buttons will do.
Duration Fields
- duration: number field holds the current value
- duration_display: a calculation field that converts the duration number to time. The field control has a few formatting options to display it correctly (no AM/PM, no seconds…)
Summary
All of that took less than an hour. In fact, I spent longer writing these notes then I did on the work itself 🤷🏻♂️.
While this prototype is far from perfect, it does have the core functionality that I need. I’ve even started tracking my time for the Timeless project in this prototype, so if you download the current development version you can see how long I’m spending on the project.