Overdue task formula

Hi !
I have been trying for a while to create an overdue date formula where the state is true if the end date of a date property is before now.
If someone can help me i would be grateful

EndDate < Today()

Or if you mean the end date of a date range

Date.End() < Today()

Note: you can’t use Now() (a value with current date and time) in formula fields, but you can in automations

https://the.fibery.io/@public/User_Guide/Guide/Date-field-93
https://the.fibery.io/@public/User_Guide/Guide/Date-Ranges-in-formulas-42

I i would like to clarify, that I am trying to create a view for undone tasks that their end date have passed the current time by seconds or minutes (not by days),
and i am using 1 date field with en date functionality.

The best you can do in that case is to use an automation that runs every hour and checks which tasks have become overdue and mark a checkbox field accordingly.
It’s not possible to get resolution better than every hour.

Hi thank you for you advice
but i can’t seem to figure out how to create the automation formula for it, if you can help help me through it or point me in the direction to learn automation formulas, i would be grateful.
Just out of curiosity, why is the now() function only available in the automation formulas, and why is hourly rate the best resolution?

Here’s what an automation might look like:

Formulas for automations are basically the same as formulas for fields, except that in an automation formula

  • you refer to the entity that triggered the automation, using [Step 1 Xxx] (as seen above)
  • you can use the Now() function
  • you can perform ‘entity queries’ - they allow you to query any database in the workspace, e.g. Tasks.Filter(State.Name = "Done")

Automations and formulas run on the Fibery backend.
If a formula field included Now() (which changes every second) then the formula would need recalculating every second. This would overload the service.
Similarly, it would be unmanageable to have automations that re-ran every second. It was decided that allowing every hour would be acceptable.

In our planning space we have a checkbox that’s getting checked when a task is overdue. Therefore whe’re using the following formula.

(Due date < Today()) and (State.Final != true)

This way you can create a view to only show tasks with the checkbox checked.
You can also colorcode those tasks in your other views so they stand out.

Maybe this is what you’ve been looking for.

Hi thank you for your suggestion
but unfortunately this is not what I’m looking for I’m looking for, i want the checkbox to be checked as soon as the end date of a task has passed the current time not the current day.

Thank you for explaining

I am currently trying to implement a simplistic calendar-reminder solution while avoiding external/SMTP mailing functions. unfortunately state/workflow-changes do not seem to trigger any notifications; I guess automated commenting would be worth the next attempts.

I can understand that per-second updates would certainly overload backends/infrastructure. however it is close to impossible to automate anything reasonable in terms of mail/calendar timebased reminders when schedule granularity in automations is limited to once per hour:

are there any plans to increase granularities to 5 minutes or ideally once per minute?
it would enable users to seriously implement event/calendar reminders et al where needed.

Can you explain a bit more what you’re trying to achieve?
It sounds like you could just make an automation that triggers on a state change and sends a notification.

dear @Chr1sG - thank you for your swift reply. a lot of work going on right now so I’m delving into fibery on the sidelines unfortunately. quite some concepts like possibly data containers/collections like expected “json-format”, i.e. list of strings, list of dict/objects etc. not yet clear at all. especially in fields like singleselect, multiselect or assignees.

in any case I’ll try with some rough pseudo-code to hopefully make the goal a bit a clearer?

read list of assignees in appointment

  • if [due date] - Today()/Now() < Hours(24)
    ► notify or unassign+reassign list of employees…

… or whatever means lead to usecase of notifications and/or E-Mail notification without actually using external mail/smtp accounts.

Ideally this should also occur at arbitrary stages or by user preference: like 12h before due date, 2hours, 1hour, 15 minutes?

As you see “Now()” only being available in Automations and Automations being limited to granularities of 1h-schedules is a problem: not only for 15-min intervals but even in terms of implementing 1- or even 2-hour reminders as one is forced to somehow “catch” hours in a grid which is highly impractical.

As I said I understand realtime or second-intervals are a problem technically to be avoided: minute schedule intervals should still be feasible without much issues? while leading to way more possibilities in datetime-based automations and functionality. not the full feature set of every user is going to be around datetime or reminders in 1-minute granularities.

so this entire featureset on your end, including 1-hour schedules is basically EOL planned to be removed?

OK, I think I understand.

It was this line:

that made me think you needed triggering on a field value change, but it sounds like you need the granular triggering that Fibery doesn’t offer.

I guess it depends on people’s needs. For me personally, I don’t need greater granularity than 1-hour but I understand that others might.
TBH Fibery is not supposed to be a replacement for a traditional calendar.

It might be technically feasible, but the potential hit on performance is probably too much to accept, I’m afraid.

ty once again: how/where did you setup that notification step/update in automations - “notify users”… is that some sort of extension/integration? I do not see this option in vanilla setup. whats the clicking/menu-path for that specific extension to install via official/user-“integrations”?

nvm found it, vanilla. user error + samsungtablet + bluetooth mouse-wheel, I guess. :slight_smile: