In soSIMPLE Calendar Setting, click the “Edit” button next to “Data Source”. Then double-click the selected FileMaker data source, or create a new one.
Once you’ve chosen a database file and a layout, these fields should have drop-down lists of field choices. The fields with an asterisk are required fields.
- Start Date* & End Date
Date-type fields. Start date is required. If there’s no end date field, the end date will always be the same as the start date.
- Start Time* & End Time*
Time-type fields in FileMaker storing the start and end time.
- Event ID field*
Every event must have its own unique ID. If you’re showing multiple databases on your calendar, event IDs must be unique between databases. A FileMaker serial number field is usually just fine, as is FileMaker’s get(UUID).
- Event Text field*
This is the text of the event.
- note: for calendars set up as “Server-side Async”, this needs to be an editable text field (not a calculation). For all otehr calendars, it can be a calculation that results in the display of each event. In those cases, you can leave the next field (“Event Text Display field”) blank.
- Event Text Display field
This field is not required or recommended unless you are are using “Server-side Async.” It determines what is displayed on the event. By using a calculation field, you can show any event details you’d like.
- Tip: you can format your fields with different fonts and colors by using the FileMaker calculation function getascss(). If you don’t choose anything here, the Event Text field will be used to display your event.
- Event Resource field
The resource field is the where you store the name of the resource (a person, room, equipment, etc.). The resource should be selectable from a value list on the layout you’ve selected.
- To show resources on your calendar, you’ll need to do some initial setup.
- Show Only Records Flag field
This is an optional field indicating whether you’d like an event to show on the calendar. If you use this field, the calendar will only show events with a “1” in this field.
- Event Color/Text Color field
By specifying a color in this field in your database, you can highlight specific events in the calendar in a different color. Use web hex code (e.g. #9900FF), or standard web color names (which most colors are).
- Read Only
By resolving a calculation to 1 or 0 for this field, you can define specific events as read-only. This will stop you from dragging the events on the calendar. You can also use the variable in the soSIMPLE Action Script to control what happens when you double-click a readonly event.
- Unscheduled Event FLAG
Any records with a 1 in this field will show in the “Unscheduled” column of your calendar. This should be a regular number field, not a calculation, as that will allow you to manually drag items to and from this column from the main part of the calendar.
- Custom Tooltip
What will show up when you hover over an event? Unlike regular tooltips, you can add fancy formatting to your tooltip using html code in your calculation or getascss().
- Event Location/Latitude/Longitude
These fields work with each other when using the Map view. (Map view is in beta, and is only recommended with Server-side Async). When viewing your calendar in Map view, the latitude and longitude will determine where the event shows on the map. If these fields are empty, we will attempt to set these fields using geolocation, based on the location field.
- Event Display Type
Used for our “Background” feature. The value of this field can be:
- Normal – events display as events
- Background – events show as shaded background on calendar
- Block – events show as shaded background and block users from creating events at the same time.
- Event Height
Height of the event in the “week column” view.
- Custom Fields
For Server-Side Async, use specific fields on your web-based calendar for data entry. The fields will show in the order in which you choose them here
- Important: you cannot chose fields with special characters or spaces in the name of the field for this feature.
Script to run on interaction
This script is run whenever you drag an event on the calendar, drag or double-click a blank area on the calendar, or double-click an event on the calendar. It is also run when you click the “delete” button from the icon bar in the calendar (this icon is off by default).
This setting applies to any mode. It runs in FileMaker Pro/Go client in Standalone mode, or when using Client-Side Scripting in Server-Powered mode. It also runs as a server-side script when you are using “Server-Side Async”. (Our script accounts for this with an if/then section in the script).
We STRONGLY recommend using our default script as a starting point.
Clicking the button next to this field will copy the default script to the clipboard. You can then go to the Script Manager in your database, and paste this script into your solution.
Export Script for Standalone
This script performs the export required for calendars operating in Standalone mode. It is reponsible for choosing the events to export, and the resources to show on the calendar.
Optional Find Script (advanced/beta)
This script only runs on Server-Powered mode. Since we’ve provided so many powerful filtering mechanisms for this mode, you may never use this feature.
This script is run on the server, right after the events for your calendar are found. You can use this script to modify your found set, or set a global that will affect your found set or your resource list. The records resulting from this script are the ones that the calendar will use when it renders. You can only use server-compatible steps in this script, since it is run on the server.
These settings allow you to change how ALL events in this datasource show up on your calendar. The field mappings above take priority, so these values will be overridden by values assigned in your FileMaker file.
- Event Display Type: all events can show up as background or blocked events.
- Event Color & Text Color: all events can share the same color.
- Resource: Enter the ID of the resource you’d like these events to be assigned to and any events without a resource already assigned will show up under this resource. If you’re using Resource names instead of IDs, enter that here instead.