Recurring Events Calendar - sample base

Schedules Example Base

This is my first post to forum; hope I get the mechanics right.

You may find this base handy if you need to schedule recurring events.

I work for a community radio station and wanted to be able to offer users the ability to schedule our on-air broadcasts and various meetings as recurring events. I wanted to give users the same flexibility they have in Google Calendar and Outlook.

I’ve encapsulated recurring date calculation logic in a single table: “Schedules”. I’ve seeded the table with example rows and the primary field’s default formula describes each row using the user-entered fields.

The Schedules calendar view shows a set of example recurring dates, with the primary field documenting each recurring pattern. Check out the calendar view to get a quick idea of scheduling features.

Since all recurring dates are calculated off of the value of the built-in Airtable TODAY() function, the calendar is always automatically up to date. Recurring dates that slip into the past are recalculated into the future as each day passes.

The implementation is not complete: The design and usage document in the Documentation trable of the base outlines design issues and the implementation backlog. I’m publishing this early for selfish reasons. If I’m lucky others will have better ideas and/or implementations. I’m thinking of you, W_Vann_Hall, and all those experienced developers that can poke holes in this thing and/or point me to better ideas and code.

I intend to deploy the schedule table by adding it to our bases where needed and to keep the date logic encapsulated in the table. I’ll use links, lookups and rollups to integrate the date logic into the tables that need it.

The ‘’'Documentation ‘’'table holds source listings and more detailed user documentation.

Recurrence Patterns

The date logic supports the following types of recurring dates:

  • Weekly events on a specified weekday.
    ** ‘‘Every Wednesday’’
    ** ‘‘Every other Thursday’’
  • Monthly events on a certain day of the month.
    ** ‘‘Every month on the 15th of the month.’’
    ** ‘‘Every other month on the 1sth of the month.’’
  • ‘‘Monthly on a certain weekday’’
    ** ‘‘Every month on the last Sunday’’
    ** ‘‘Every 4th month on the 3rd Tuesday’’
  • ‘‘One time events’’
    ** ‘‘Just once, on July 17th’’
  • ‘‘Ad Hoc events. These are like one-time events but the date field is not a formula, enabling the user to drag and drop the event to a different date time.’’