Another significant update for nubiDO, v6.6.0 contains a sophisticated filtering mechanism for tasks.
If you've ever used SQL (Structured Query Language) for querying databases, you'll feel right at home with nubiDO's new task query language.
It's simple to learn yet expressive enough for even the most complex queries.
Our new query language has even been incorporated into the global search feature so you can quickly test and execute queries and then save them for future use.
With over 80 query rules, you can create custom lists to match any workflow.
Here's a simple query to try that displays all completed tasks within the last 7 days (including today), sorted in descending order based on the task's completed date:
SELECT TASKS WHERE TASK
was completed within the last 7 days
SORT BY
descending completed date
In this example, the query has two commands, the SELECT statement and SORT BY clause. The SELECT statement determines the filtering criteria for tasks, whereas the SORT BY clause determines the order in which to display tasks. As an alternative shorthand notation, you may exclude the statement "SELECT TASKS WHERE TASK" from most queries. So the above query can also be re-written as follows:
was completed within the last 7 days
SORT BY
descending completed date
The choice of the expressive statement or shorthand notation is completely up to you.
Note that the query language is case insensitive so you can capitalize letters or words as you see fit such as "SORT BY" or "sort by" or "Sort By", etc.
Let's try a more complex example that selects tasks that have an inherent importance and then organizes them in a specific order:
SELECT TASKS WHERE TASK
is active AND
( is overdue OR is due today OR has focus OR is high priority OR is within the list "Today" )
ARRANGE BY
overdue date,
current date,
focus,
future date,
active
SORT BY
due date,
descending priority,
effort,
created date
There are a few new concepts in this example, but the first thing that you'll likely notice is the inclusion of the ARRANGE BY clause.
This clause determines the display order for the tasks.
In the results of this query, tasks will be displayed in 5 distinct groups.
The first group will display tasks that are overdue, the second group will display tasks that are due today,
the third group will display tasks that have been assigned focus, the fourth group will display tasks that have a due date in the future and finally,
the fifth group will display tasks that are active (not completed).
The SORT BY clause then sorts by due date, then descending priority, then effort and then created date for each group.
You'll also notice that only the priority attribute is prefixed with the term "descending".
If you omit this prefix, the sort is automatically defaulted to an ascending order.
However, If you wish to be more verbose and expressive, you may also prefix sort attributes with the term "ascending".
Lastly, you'll notice the compound statement and boolean logical operators (AND, OR) in the SELECT clause.
You can group filter statements together by enclosing them within parenthesis to form a logical block.
So in this example, our filter will have to match all active tasks and at least one of the filters in the group.
Also note that the order of selecting, arranging and sorting is important.
The SELECT statement must be defined first in the query, followed by the optional ARRANGE BY clause and then optionally the SORT BY clause.
If you omit both the ARRANGE BY and SORT BY clauses, nubiDO will automatically arrange and sort tasks based on their relative importance (similar to nubiDO's Auto-Organize algorithm).
As you can see, this combination of filtering, arranging and sorting allows for innumerable combinations of custom filtered lists.
Now that you have a good understanding of the query language, take a look at the following list of rules and try some queries on your own.
name contains "[phrase]"
has notes
notes contains "[phrase]"
has focus
has priority
has high priority or is high priority
has medium priority or is medium priority
has low priority or is low priority
has effort
has high effort or is high effort
has medium effort or is medium effort
has low effort or is low effort
has tags
has tag "[tag name]"
is overdue
is recurring
has due date
is due on [day]
is due [relative day]
or
was due [relative day]
is due on [date]
is due after [date]
was due before [date]
is due after today
was due before today
is due in [x] days
is due within [x] days
is due after [x] days
was due [x] days ago
was due within the last [x] days
was due more than [x] days ago
was created [relative day]
was created on [date]
was created after [date]
was created before [date]
was created within the last [x] days
was created more than [x] days ago
was updated [relative day]
was updated on [date]
was updated after [date]
was updated before [date]
was updated within the last [x] days
was updated more than [x] days ago
was completed [relative day]
was completed on [date]
was completed after [date]
was completed before [date]
was completed within the last [x] days
was completed more than [x] days ago
is active
is complete
is within list "[list name]"
is within project "[project name]"
not (phrase)
overdue date
current date
future date
focus
active
completed
priority
high priority
medium priority
low priority
effort
high effort
medium effort
low effort
tag "[tag name]"
name
due date
priority
effort
focus1
created date
updated date
completed date
tag position1
New York, NY
support@gennubi.com
Follow us on Twitter
Copyright ©2009 - x Gennubi, Inc. All Rights Reserved.
Apps | Getting Started | Help | Terms | Privacy