Template for date grouping

At the moment, Fibery only natively supports the standard date field, which requires the user to pick the day, month and year.
Sometimes it’s useful to deal with time periods other than just dates, e.g.
what if you want to do some high-level planning, assigning projects to a specific quarter?
or maybe you log activity month by month?

Here’s a template that might make things easier for you:
'Dates

It has databases to cover the various levels of date granularity you might need, and the databases are automatically related, so that e.g. ‘January 2022’, ‘February 2022’ and ‘March 2022’ are all auto-linked to ‘2022 Q1’.

It contains all entities needed to cover the period from Jan 1st 2022 to Dec 31st 2028, with the following caveat: due to size limitations for sharing templates, the ‘Date’ database has no entities(!)
To fix this, the following CSV file should be imported into the Date database after installation (it contains all the needed Date entities for the above range).

Once fully installed, there are a lot of nice things you can do…

If you create a relation to a database in this template, you can use that database as the column or row setting in a board view.

There are also some cool things you can do with Smart folders/hierarchical lists:

…plus lots of fancy stuff with the use of formulas/lookups/automations :man_mage:

Note: the screen grabs above include dates in 2021, but the template actually starts in 2022 :confused:

Why not have a play with it, let us know what you use it for, and how you think it could be made more useful.
In the long-term we plan to make this kind of functionality available more natively, but it’ll be good to hear feedback first.

5 Likes

This is great: I had done something similar (but much less ambitious) and I very much look forward to this being integrated more natively: eg. I often want to reference a date in a rich text field but they only way to ‘#’ a date is by creating your own database of dates (like this), so if you can make the native date picker work like this also that would be awesome.

That link doesn’t seem to be working for me. I’ll have to take a look again in a bit. It just asks me to sign in each time and the dates template doesn’t seem to be showing up in the templates area.

Fwiw, I started building something like this to help with our high-level roadmapping, but I haven’t gone back and updated it to leverage automation, which I think is a really key part of making this work. Without automation, I was using auto-relations to associate the month, quarter, etc to any particular entity from my dates app. This worked great, except it required a complicated setup of a number of fields and didn’t fully mimic the functionality I was trying to re-implement from Roadmunk described More Flexible Board Columns/Rows.

With automation, then it should be possible to support applying the relationships automatically, but then still allow manual editing of that relationship, which is crucial to allow moving an entity between columns, then updating the specific date field. However, there are some preferences that would need to exist to adjust how the date is updated.

Another thing I found was that it seemed easier to leverage the built-in date picker for specific date selection, rather than using the relation to a specific day. You could always associate the day from the app to an entity to have the common relationship across entities, but still leverage the built-in picker.

1 Like

Please try the link again (there’s something strange about the way Discourse embeds urls that breaks them). I’ve now updated it.

In terms of your comments, indeed, the real benefits come from automation. Here’s an example of something useful you could do:
Imagine you have a (normal) date field for a task db. You can create a relation to the Year-quarter database, and define an automation so that whenever the date field is updated (and not empty) the Year-quarter field is updated, based on finding the Year-quarter for which the date is within its range (e.g. Date >= Year-quarter.First date AND Date <= Year-quarter.Last date).
You could then also have an automation so that when the Year-quarter is updated, the date field is updated (to the First date or Last date as is your preference).

If you wanted it to be even more complicated, the automation for updating the date field when the Y-Q changed could calculate the relative position of the date field within its quarter and then update it to the same relative position in the new Y-Q.
In other words, if the date was 15th August (i.e. ~midway in Q3) and the quarter field was changed to Q4, the automation would change the date to 15th November (~midway in Q4).

Yep, that is exactly where I was heading, but haven’t had a chance to go back into it.

I haven’t had a chance to go through what you put together, but this template takes where I was heading and supports automatically generating dates without having to upload them.

There is still a lot to do, like handle weeks, but when working with this I found it important to take a specific approach to how the data was being related. This takes a top down approach where each date type knows how to create missing related date entities.

I do wish there was better support for applying a consistent approach to entities you want the dates related to, so I ended up framing out an area associated with the Dates (Date Settings), which would provide a place to configure how the template behaves and potentially having it apply stuff to other databases that you configure there.