by Upsert, LLC

See the events from all activity modules plus your custom modules in one calendar. Create shared calendars by users, teams, and roles, see your activity lineup in agenda view, and manage employee shifts in scheduling mode.

Free 30 day trial
Try it Now

By clicking you consent to share your profile with the developer

User Guide

System requirements for installation

Supported Versions

  • 9.x
  • 10.x
  • 11.x

Supported Editions

  • Sell
  • Serve
  • Enterprise
  • Professional

Supported Databases

  • MySQL
  • Oracle
  • DB2

Supported Languages

  • English


Upsert Calendar is a scheduling and time management tool that provides enhanced functionality over Sugar’s stock calendar module to cover more complex scheduling needs such as:

  • Viewing schedules of multiple users, teams, and roles
  • Scheduling events with multiple attendees at once
  • Scheduling across multiple modules, as well as unavailable time
  • Creating and maintaining work schedules

Upsert Calendar is available to all users.

Installing the Plug-In

Once you have completed your order for the Upsert Calendar plug-in, you should receive an email with instructions to download the necessary file. Once you obtain the file, complete these steps to install the plug-in to your Sugar instance:

  1. Log in to your Sugar instance as an admin user

  2. Go to Admin > Module Loader

  3. Select the Upsert Calendar ZIP file and click ‘Upload’

  4. Click the ‘Install’ button

  5. Review the license agreement, toggle the option to ‘Accept’, and click ‘Commit’

Once the installation is completed, proceed to the ‘Configurations’ section.


Once Upsert Calendar is installed, you will need to enter your license key to enable functionality on the Configurations page.

Configuring the License

Enable the functionality of the plugin via the following steps:

  1. Go to Admin > Upsert Calendar > Configuration Settings Configuration.png
  2. Enter the subscription key that you received via email from your initial purchase Note: If you installed and configured other Upsert plug-ins, the license key will prepopulate into this screen and not require re-entry
  3. Click ‘Save’

Validating the License

If access to the Upsert Calendar functionality is interrupted, you can manually validate your license with the following steps:

  1. Go to Admin > Upsert Calendar > Configuration Settings License Config.png
  2. In the right pane, click ‘Validate License’ License.png
  3. If successful, the status will be updated to ‘Enabled’ and the service start and end dates will be populated. License Validate.png If unsuccessful, there will be a message indicating the reason for the failure with further instructions. Note: The server hosting your Sugar instance must be able to reach to validate your license successfully.

Configuring Refresh Interval

Upsert Calendar has the ability to refresh the calendar view on a timed interval. By default, the view will refresh every 10 minutes. This setting can be adjusted by updating the "Refresh Interval" configuration value to the number of minutes you would prefer. Setting this value to "0" will disable the refresh interval entirely. We recommend a value of "10" minutes or higher for production environments. Refresh Interval.png

Configuring Preview Edit in Drawer

Upsert Calendar allows administrative users to determine the view in which a record is modified within the module. Configuration1.png

By default, the ‘Preview Edit in Drawer’ checkbox will be selected. When modifying an event from Upsert Calendar’s ‘Preview’ side pane, this setting will launch a drawer view of the event where changes can be made. We recommend leaving this setting enabled as it provides a more thorough view of the record, including guest schedules and conditionally visible fields. Configuring Drawer.png

However, if administrators determine that the more detailed view of the record is unnecessary, the setting can be disabled. Once turned off, edits will simply occur in the side pane ‘Preview’.

Configuring Calendar Sources

Upsert Calendar has the ability to display records from any module provided it meets specific criteria. By default, the Tasks, Calls, and Meetings modules are enabled for viewing in Upsert Calendar and they can be modified or removed. Additional modules can be added provided they have at least one datetime field that is not the date created or date modified field. To add a new calendar source: Calendar Source.png

  1. Click the plus (+) icon at the top right of the panel Calendar Source1.png
  2. Complete the fields for the new source: a. Source Module: A list of all available modules with at least one datetime field that is not the date created or date modified field. b. Start Date/Time Field (optional): The datetime field that determines when a record from this module shows as starting on the calendar views. Note: If a Start Date/Time Field is not defined, a Lead Time must be set. c. End Date/Time Field: The datetime field that determines when a record shows as ending on the calendar views. d. Lead Time (optional): If a Start Date/Time Field is not used, you must set a lead time. Enter the amount of minutes (minimum of 30) that a record will show as blocking a user’s calendar before the End Date/Time Field value expires. For instance, with task records, you may not want to define a start date since tasks can span multiple days before they are due. Instead, you can use the lead time to ensure the associate has enough time set aside leading up to the due date to complete or address the next steps with the task. e. Participants Fields (optional): A list of custom field(s) with a relationship to the Users module to determine whether events should show for their calendar in addition to the assigned user. f. Status Field: The status field for the module. This setting is required to utilize the Ignored Statuses, Completed Status, and Canceled Status configurations. g. Ignored Statuses (optional): A list of statuses that determine when a record will not be shown on a user’s calendar. For instance, you may have a task due 7 days from now that is already completed. Using this feature to ignore the ‘Completed’ status will ensure that the time does not appear blocked on that user’s calendar. h. Completed Status: The status that determines when a record is marked as complete via the Event Action Menu. Note: We do not recommend configuring the ‘Completed Status’ setting if the module is utilizing any Sugar Logic or fields with requirements/visibility that is dependent on the record’s status, as this setting will bypass that logic. i. Canceled Status: The status that determines when a record is marked as canceled via the Event Action Menu. Note: We do not recommend configuring the ‘Canceled Status’ setting if the module is utilizing any Sugar Logic or fields with requirements/visibility that is dependent on the record’s status, as this setting will bypass that logic.
  3. Click the ‘Save’ button at the end of the row to finalize the changes.

Hiding the Stock Calendar Module

Once you have Upsert Calendar configured, we recommend hiding the stock Calendar module with Sugar to eliminate any confusion for your users. If left enabled, users will see two options labeled ‘Calendar’ in the navigation bar. To disable the stock Calendar module:

  1. Go to Admin > Developer Tools > Display Modules and Subpanels Hide Calendar Module.png
  2. Drag the ‘Calendar’ option from ‘Displayed Modules’ to ‘Hidden Modules’. Note: Upsert Calendar appears as ‘Upsert Calendar’ in this menu to eliminate confusion when configuring visibility. Module Settings.png
  3. Click ‘Save’

Calendar Navigation

All users can access Upsert Calendar from their navigation bar by clicking the ‘Calendar’ tab, which will open to a screen of the current month’s activity view and the Calendar Settings side pane.

Note: We recommend hiding the stock Calendar module from the navigation bar to avoid user confusion. Please review the ‘Hiding the Stock Calendar Module’ section for steps to hide this module. Calendar Navigation.png

Modifying Calendar Settings

Under the settings area, users can specify what is shown on their personal calendar view. Calendar Settings.png

To add Calendars to the view:

  1. Click into the ‘View Calendars’ field
  2. Begin typing the name of the user/team/role associated with the schedule you want to include Calendar Settings1.png
  3. Select the appropriate result from the dropdown

To add Activities to the view:

  1. Click into the ‘Activities To Display’ field
  2. Select the activity from the dropdown Calendar Settings2.png

To remove Calendars or Activities from the view:

  1. Click the ‘x’ located next to the item Calendar Setting3.png

Viewing the Calendar

Upsert Calendar provides users with multiple options for their calendar view, depending on their personal preferences and needs. These views can be navigated with the buttons located in the top right corner of the Calendar screen. Calendar View.png

These views include:

  1. Activities - Best used for displaying scheduled events by the Month, Week, or Day calendar view, or by a weekly Agenda view Calendar View1.png
  2. Scheduling - Best used viewing user work schedules, locating open time slots, and creating scheduled events for one or more users.

Scheduling Events

An event can be created from both ‘Activity’ and ‘Scheduling’ views. Because it is easier to view availability, we recommend scheduling be performed using a ‘Scheduling’ view.

To schedule an individual event:

  1. Click into an open slot on the schedule
  2. Select the desired event type from the dropdown Calendar Schedule.png
  3. Enter event details Event Details.png
  4. Click ‘Save’

Scheduling Calls and Meetings for Multiple Users

Calls and meetings have the option to add multiple attendees to the event. Upsert Calendar provides a utility to quickly add multiple users when creating an event. To schedule an activity call or meeting for multiple users:

  1. Go to Calendar Settings > View Calendars and add the user(s), team(s), or role(s) that should be included. Event Scheduling.png
  2. Locate and click into the desired day or time for the event and select either Call or Meeting Event Scheuling2.png
  3. Select ‘Yes’ on the ensuing pop-up to add all selected users Confirmation.png
  4. Enter the event details Event Schedule3.png
  5. Click ‘Save’

Scheduling Events Across Multiple Days

  1. Click and drag your mouse from the event’s start date to end date
  2. Select the event type from the dropdown Note: Only modules with a defined Start Date and End Date field in the Upsert Calendar configuration will be available in this menu. For more information on configuring modules, please refer to the ‘Configuring Calendar Sources’ section. Event Schedule4.png
  3. Enter the event details Event Details1.png
  4. Click ‘Save’

Editing Events

Updating the Time of an Event

Event times can be updated by either dragging the event to a time day or time slot on the calendar, or you can drag the borders of the event to increase or decrease the duration of an event.

Using the Event Action Menu

When you right click a calendar event, you ou will be presented a list of actions that are contextual based on the type of event record and the configuration of Upsert Calendar. The options that may be available are:

Action Description Modules Requirements
Respond Indicate event attendance (accept, decline, tentative) Calls, Meetings The user must be an invitee on the event
Complete Set event to a completed status All Module must be configured with a completed status in admin configuration
Cancel Set event to a canceled status All Module must be configured with a canceled status in admin configuration
Edit Edit the record All
Share Generate an email with a link to the event All
Copy Create a duplicate of the event All
Delete Delete the event All

Work Schedules

Work schedules can be created for individual users or teams to easily identify the times that those users will generally be available during the workday. These Work Schedules will appear highlighted on Upsert Calendar’s ‘Scheduling’ view. Work Schedules is best utilized for users who have schedules that repeat on a specific interval so that you can minimize the repeated maintenance. Work Schedules.png

Creating Work Schedules

To create a Work Schedule:

  1. Click on the Calendar module
  2. Select ‘Create Work Schedule’
  3. Enter the following required fields: a. Name: The name of the Work Schedule b. Start Date: The date and time the Work Schedule will go into effect c. End Date: The date and time the Work Schedule will discontinue Note: The ‘Start Date’ and ‘End Date’ should reflect the time span needed for one instance of the Work Schedule.
  4. Create a repeating schedule if necessary
  5. Assign to user or team

Maintaining Work Schedules

Once an associate’s schedule changes, we recommend updating the historical schedules to reflect the end date of the last date they worked that schedule and creating a new record for their schedule moving forward.

Unavailable Time

In addition to the activities records, such as Tasks, Calls, and Meetings, Upsert Calendar also provides the option to schedule ‘Unavailable Time’. A user can add Unavailable Time to their calendar to reflect any scheduled event unrelated to the available Sugar modules. For example: - PTO - Company Functions - Work Trips - Breaks

Creating Unavailable Time

To create Unavailable Time:

  1. Click into an open slot on the schedule
  2. Select the type of activity you would like to schedule from the dropdown Unavailable Time.png
  3. Enter event details Event Details2.png
  4. Click ‘Save’ and the event will populate on the user schedule in gray Event Details3.png

Creating Recurring Unavailable Time

To create recurring Unavailable Time:

  1. Create an Unavailable Time event from the calendar schedule Recurring UT.png
  2. Expand the ‘Repeat Type’ field and select an interval from the dropdown list Note: Our use case requires an interval of weeks (e.g. occurs every week), so we will select "Weekly" and specify our interval number in the next step.
  3. Upon choosing a Repeat Type value, a new row of fields will appear on the form to gather the series information
  4. The fields displayed are dependent upon the values you select as you go. Please refer to the Meeting Fields section for complete details on the available options. To schedule a meeting that recurs every other Monday until the end of the 2020 calendar year, set the following values: a. Repeat Interval: 1 b. Repeat on Days of Week: Monday, Tuesday, Wednesday, Thursday, Friday c. Repeat: Until d. Repeat Until: 2021-12-31 Recurring UT1.png
  5. Confirm that the remaining fields and guests are configured appropriately
  6. Save the record and confirm that all recurrences appear as separate records on the calendar Recurring UT2.png

Uninstalling the Plug-In

Follow the steps below to remove the plug-in from your Sugar instance.

  1. Log in to your Sugar instance as an admin user
  2. Go to Admin > Module Loader
  3. Locate the ‘Upsert Calendar for SugarCRM’ package in the list of installed packages and click ‘Uninstall’
  4. Select the desired option for handling the related database tables: a. Do Not Remove Tables - You either want to upgrade the plug-in to a newer release or you want to retain the lockout audit log data. b. Remove Tables - You want all data associated with the plug-in to be deleted and you have no intention of upgrading.
  5. Click ‘Next’

The uninstall will process and provide confirmation upon successful completion.

Saving Comment Saving Comment...