Allow empty due dates or TBD dates for unscheduled actions
This is relatively straightforward, if we make some gross assumptions; that is, a TBD action is always treated as if it was due today, so will always be matched by a "late" search, or a date search that covers today's date. I am assuming no extensions to search to support searching for TBD actions are required. The trick is to develop testcases that cover all the corner cases.
To simplify this, let's assume that any empty date it TBD. So we only have to support empty date. I think a very logical (and possibly simple) way to handle requires two changes:
- When an empty date is saved, it's translated to "9999-12-31".
- When a date of "9999-12-31" is displayed in %ACTION%, %ACTIONSEARCH% or the edit form it's an empty string.
- To search for all empty dates, you'd actually search on "9999-12-31". Search results when sorted by date, would display the empty dates last (chronologically as "9999-12-31").
Does this approach work?
It's really no advantage over storing 'TBD' in the date field. I already coded this; the only thing outstanding is the tests.