Relationship and Contact Management with Dataview - When was the last time I called / thought about my friend

Hi @mnvwvnm and @Bayerse - we were last talking about keeping track of our relationships over here, when the forum abruptly closed on us.

Thank you so much for your groundwork, @mnvwvnm - it took me a while to understand how FLATTEN was working and how your columns were pulling in data. But I was steadily able to tinker and come up with a solution that I think is a little more robust and will work well for me.

My set up

  • #:bust_in_silhouette: - all my People notes have this tag
  • each People note needs a Contact Frequency:: field - set this to a time period ( 7 days, 1 month, 2 years)
  • #:notebook: - all my YYYY-MM-DD daily notes have this tag. The formula pulls in any notes with this tag
  • β€œ_System” folder - is where my templates/attachments live, so I exclude this
  • I grabbed an online emoji for aesthetics to indicate it is time to call the person :+1:

Catch up with friends table

TABLE WITHOUT ID
	Person,
	reverse(sort(rows.IN))[0] as "Last Contact",
	choice(date(today) - date(reverse(sort(rows.IN))[0]) >= default(Person.contact-frequency, " "), "![call emoji|35](https://i.pinimg.com/474x/db/07/d1/db07d10fbeefc4653b376003717c977f.jpg)", " ") AS "Call_now?",
	date(today) - date(reverse(sort(rows.IN))[0]) AS "Days since last contact"
FROM #πŸ‘€ and !"_System"
FLATTEN file.inlinks as IN
WHERE contains(IN.file.tags, "#πŸ““")
GROUP BY file.link AS Person
SORT reverse(sort(rows.IN))[0] ASC

Desktop

Mobile - Looks good!

7 Likes