Hello everyone,
I need help adjusting the display of a Dataview query.
Based on the ideas of DeeConstruct, I decided to use log lines.
What I’m trying to do
Either they are entered manually (a template and some corrections or Espanso) or they are created by QuickAdd as a task.
Here is an example of the LOG and TASKS that are in my daily notes.
Then I have two queries that show me all the lines with LOG:: (I haven’t found how to make one for both cases - your suggestions are welcome):
In the first one (thanks again to DeeConstruct) I see my daily notes with all log entries. The logs are grouped by date. It is what I need.
I try to do the same in the second one, but I can’t group the tasks by day.
Of course, I tested with the Tasks Plugin, but the display is different.
I would like to have the same display in both results.
Things I have tried
Here are my Dataview scripts
For LOG
table without id
link(Source, dateformat(date(Source),"yyyy-MM-dd")) as "", rows.Details as "Details"
from !"Modèles" and "8. Q"
flatten LOG as Details
where contains(Details, "/test")
group by file.name as Source
sort rows.file.day desc
For TASKS
table tasks.text
from "8. Q/2023"
flatten file.tasks as tasks
where contains(tasks.text, "LOG::") and contains(tasks.text, "test")
sort file.day desc
Does anyone have an idea?
Thanks in advance to all
I’ve not seen any good ways to combine various queries from different sources like you’re talking about. I can see some ways to combine them within a dataviewjs script, but not in an ordinary DQL query like you’re presenting here.
One way however to achieve your goals would be to go away from those non-task entries (or manual entries as you call them), and change them into task entries, and use a designated custom checklist (or task decoration as I call them) for those tasks. In other words, that your markup for the manual entries changed to something like:
Now you could use the task query to list all your log entries, and they’ll all look the same. And if you’re using Minimal theme (or LYT ( or Tasks plugin)) you can make this tasks stand out with an icon of their own, and since they’re now tasks, they can have a backlink to their definition.
To achieve the grouping of the manual entries queries, you could try doing the same grouping and change to use rows.* on the tasks query, so something like:
```dataview
table rows.tasks.text
from "8. Q/2023"
flatten file.tasks as tasks
where contains(tasks.text, "LOG::") and contains(tasks.text, "test")
group by file.day
```
Do however, note that in your current manual entries query you do group together all of the entries related to the date, so that it’s presented within one row of that table. This could be intended/wanted, but it does also imply that you’re a little limited in how to handle/limit/filter the individual entries if that would be a need in the future.
Doing everything as tasks, would also allow for pure task queries with grouping related to the file.day or similar options. That would also open up the possibility to complete tasks which are not finished from the task query.