02. xSchedule

The xSchedule BlackBox is used to display an interactive calendar, pulling in items from FileMaker data - and writing back when applicable.. It utilises the dhtmlxScheduler library.

 (Please scroll down to the bottom of the above link to view licensing details)

Our BlackBox xSchedule demo utilises the Free GNU GPL v2 license, which provides the following:
  • Day, Week and Month views
  • The ability to move items, and add/edit/delete, using an interactive edit box

There is a Pro license available, that allows such things as multiple calendars on a single page and the ability to export to PDF/PNG.

It has a Month, Week and Day view. The following interactions are included:
  • Creating an appointment record by double clicking onto empty area
  • Modifying an appointment record (including deletion) by double clicking onto any appointment, it opens a dialog where you can change the description, and start/end timestamps (see screenshot below)
  • Switching between Day/Week/Month views, and moving forward/back in time
  • Appointments can be dragged to change date/time


The parameters are as follows:

xSchedule ( id_field ; startdate_field ; enddate_field ; description_field ; sort_field ; colour_field ; chart_start_date { ; chart_options_js } )

A unique identifier used for each appointment record
Eg, "bb_data_schedules::id"
A field indicating the start date/time of an appointment record, can be a Date or Timestamp field
Eg, "bb_data_schedules::tstamp_start"
A field indicating the end date/time of an appointment record, can be a Date or Timestamp field
Eg, "bb_data_schedules::tstamp_end"
A field with some text content that will appear as the label for the appointment
Eg, "bb_data_schedules::description"
A field with a number that represents its order when appointments take place at the same time
Eg, "bb_data_schedules::sort"
A field that determines the colour an appointment is given on the calendar, contents can be text (eg, Blue) or a hex-code (eg, #ff0000)
Eg, "bb_data_schedules::bar_color"
A FileMaker date that tells the calendar where to start
Eg, Get ( CurrentDate )
Text content with javaScript that applies additional settings to the calendar (optional)
Eg, "scheduler.config.readonly = true;"