Overview

Let’s say we have a database of Quotes that we want to review on a regular cadence. We can define a formula called Review by and provide some necessary properties to define how often we want to review each individual quote. We can then use this formula-derived date to create a review dashboard and utilize a Button property to mark it as reviewed for next time. The dates will automatically shift based on the Last reviewed on date.

Walkthrough

Untitled

What you’ll need

Any database of content you want to review regularly with…

The formulas

Review by

lets(
	/* How many periods per review? (default: 1) */
	ordinal, empty(prop("Ordinal")) ? 1 : prop("Ordinal"),
	
	/* What frequency do we want to review this on? (default: "day") */
	period, lower(empty(prop("Period")) ? "day" : prop("Period")),
	
	/* We start the review cycles from the "Captured on" date (default: "Created Time") */
	createdAt, prop("Captured on").empty() ? prop("Created Time") : prop("Captured on"),
	createdAt, createdAt.formatDate("YYYY-MM-DD").parseDate(),
	
	/* If "Last reviewed on" is set, use that, or default to "createdAt" value */		
	reviewedDate, prop("Last reviewed on").empty() ? createdAt : prop("Last reviewed on"),
	reviewedDate, reviewedDate.formatDate("YYYY-MM-DD").parseDate(),
	
	/* Add the period to the last review or created time */
	reviewedDate.dateAdd(ordinal, period)
)

Should review?

today() >= prop("Review by")

Demo

RBD Quotes