Events

Incoming calendar events

The first step is at any rate to set up a table in agileBase called ‘ab calendar intray’. You can prefix it with something, e.g. ‘z) ab calendar intray’ if you like, just to order it alphabetically in your tables list.

The table is where incoming events from your Google/Microsoft/Apple etc. calendars will be added.

We will be happy to set this up for you when you enable calendars in your system, if you prefer.

It must contain the following fields:

  • user - a text field
  • calendar ID - text
  • calendar name - text
  • event ID - text
  • summary - text
  • description - text
  • start - date with time
  • end - date with time
  • deleted - checkbox
  • location - text
  • participation status - text
  • event status - text
  • categories - text
  • attendees - text
  • created - date with time
  • updated - date with time
  • processed - date with time

Then, set up a second table called ‘ab calendar mapping. This is where the list of calendars each user has available will be automatically created. It should contain fields

  • username - text
  • calendar id - text
  • owner - text
  • calendar name - text
  • provider - text
  • profile ID - text
  • profile name - text
  • read only - checkbox
  • primary - checkbox
  • permission level - text

Once those tables are there, connect your calendar (or ask your users to connect their calendars) as per the top of the page and watch as the tables fill up with events! New records will be added immediately, whenever a user creates, updates or deletes a new event in their external calendar.

Then it’s up to you where this information goes. We typically recommend setting up a trio of workflow views based on ‘ab calendar intray’.

  1. a workflow to create copy new events from ‘ab calendar intray’ to your existing events table. One of the fields in that table should be ’event id’ to copy the data from ‘ab calendar intray’ so events can later be matched
  2. one to update existing events (search on the event ID field from ‘ab calendar intray’ to find new updates to existing events
  3. optionally, one to delete events in AB when an event enters ‘ab calendar intray’ with the deleted checkbox ticked

If you’d like details and examples on how to set these up, please let us know, we can supply some useful patterns, or do the setup for you.

Outgoing events

You can also send data created or updated in agileBase back out to your external calendar. To do this, set up a workflow view based on your internal events table with the following fields/calculations:

  • calendar ID - text. (This can be looked up from the ‘ab calendar mapping’ table, from the username of each record’s owner (e.g. the ‘created by’ field in agileBase)
  • event ID - text. (Copied from ’event id’ in ‘ab calendar intray’ when data was imported)
  • calendar owner - text. (A system user, e.g. the ‘created by’ field again)
  • title - text
  • description - text
  • location - text
  • reminder minutes - whole number. (A number of minutes before the event when the calendar should alert the owner)
  • attendees - text. (A list of email addresses or system users)

The later fields are optional - the field names must be present but the contents may be blank.


Last modified October 11, 2023: Rename events.md to events.md (139fdba)