Adding a Custom Calendar to the CRM UI

August 10, 2009 at 10:38 am | Posted in Uncategorized | Leave a comment

Adding a custom event calendar to Dynamics CRM 4.0 can help team members stay in synch on events, milestones, and deadlines and can help provide visibility into major events. Although CRM 4.0 provides a calendar view in the product, a custom calendar is often needed to show events that are not time-based and are not linked to appointments or service activities.

This blog post provides examples of how various industries can utilize a custom calendar and provides technical details for how a custom calendar can be implemented.

One example of the potential use of a custom calendar is in the real estate industry. If the major milestones of a real estate transaction (appraisal, inspection, closing, possession, etc.) are stored as dates on the Opportunity record, then those dates can be shown on a calendar along with the client’s name and milestone description. This can help keep office team members, clients, and third-parties informed of major milestones for a real estate office’s transactions.

Another industry or team that can benefit from a custom calendar within Dynamics CRM is one that manages deadlines for tradeshow participation. Having been involved with several tradeshows in my own career I know that it takes a tremendous amount of coordination effort to make sure everything comes together.


In the following example, I created a custom entity named “Tradeshow” to track the various shows that a company could participate in and the related deadlines.

Although it’s possible to list the tradeshows and deadlines in a view or in a custom report, using a calendar view is often beneficial to show overlaps in deadlines and to better visualize upcoming events.

A calendar view showing “MS Gold Partner Expo” and another trade show might appear like this:

Each entry in this calendar is a hyperlink that will display the Tradeshow record when clicked. Also, the calendar could be extended to show a checkmark image when the milestone or deadline is completed.

Choices for Implementing a Custom Calendar
There are several approaches you can take to populate and display a calendar within Dynamics CRM.

Build It
Depending on your company’s technical expertise, you might choose to build the calendar from scratch as an ASP.NET application, as a SQL Reporting Services report, or entirely in JavaScript. For instance, you might decide that the look and behavior of the Microsoft Webcast Calendar is exactly what you need so you fire up Visual Studio and start in on the application.

Start with Open Source
Rather than start from scratch, though, it’s often best to visit Open Source sites such as CodePlex, SourceForge, or The Code Project to obtain the source code for calendars that might provide most of the functionality that you need. Here are some Open Source options:

Event Calendar (The Code Project)
DayPilot (SourceForge)
License a Component
Another approach is to purchase a license to a programmable pre-built component. There are numerous components available including:
DayPilot (Full version)
Dundas Calendar
Infragistics WebSchedule
Quickwebsoft EventCalendar
Rather than deploy a component to your web server it’s also possible to incorporate a web-based calendar within Dynamics CRM. You can simply add a link in your CRM instance’s SiteMap or ISV.Config settings to point to an online calendar. Many online calendars exist including the following:
Google Calendar
Windows Live Calendar (Note: At the time of this blog post, Microsoft had not yet released an API/SDK for this calendar. However, the word is that it will be programmable soon.)
30Boxes Calendar

Other Uses for a Custom Calendar

Other examples of industries or teams that can use Dynamics CRM combined with a custom calendar to better manage events, milestones, and deadlines include the following:
Project managers
Information technology firms
Sales teams
Legal firms
General contractors
Recruitment firms
Financial advisors
Essentially, any company or group that coordinates or tracks milestones, events, or deadlines can make use of a standard or custom entity in Dynamics CRM to store important dates and a custom calendar to better visualize the information.


Leave a Comment »

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at
Entries and comments feeds.

%d bloggers like this: