Monday, August 31, 2015

FAV Plugin for Microsoft Dynamics CRM: Formula, Aggregation and Validation


InfoStrat has developed the FAV Plugin for use with Microsoft Dynamics CRM to support data validation, aggregate operations, and formula support without programming.  Many business applications for Dynamics CRM require complex business operations that are not supported in Dynamics CRM out of the box but can be implemented through plug-in configuration.

Typically, in a complex Dynamics CRM deployment, business rules, complex calculations and additional security measures are scattered across multiple layers.  Often all of the above are implemented in JavaScript code on various Dynamics CRM forms, in Plugins, and in other extensions such as external portals and data integration components. This proliferation of implementation decisions makes a solution extremely hard to maintain and modify, breaking the development agility inherent to Dynamics CRM. The FAV Plugin allows an implementer to concentrate these functions in a single location and implement all requirements declaratively.

Background

Microsoft Dynamics CRM includes a flexible SDK framework that allows developers to modify the standard behavior of the CRM platform.  One of the approaches to customization in Dynamics CRM is custom compiled code—a Plugin—that runs against events triggered by actions in Dynamics CRM. These Plugins can be run on the Dynamics CRM server either synchronously or asynchronously.

The Dynamics CRM framework is designed for extension: the metadata for core entities is exposed in the API for creation of custom entities. Due to this high degree of extensibility, Dynamics CRM development can address the business functions for a wide variety of organizations.

InfoStrat has developed the FAV Plugin for use with any Dynamics CRM instance, whether based in the 2011, 2013 or 2015 version, hosted on premise or online. The context for the FAV Plugin operation is driven entirely by configuration objects located in the FAV Plugin registration properties, enabling developers to use this FAV Plugin against many CRM instances with increasing economies of scale for each implementation. As a result, the FAV Plugin can be used to implement declaratively complex business rules and additional security measures.

Thursday, August 27, 2015

Dynamics CRM for Political Campaigns

With the presidential campaigns taking so much of our national attention, I have been think about how candidates can benefit from customer relationship management technology.

My company InfoStrat has implemented Microsoft Dynamics CRM to provide constituent management, executive scheduling and correspondence management for elected officials such as governors and county commissioners.

Candidates have similar requirements to communicate with voters as elected officials . These communications come from multiple channels, including website forms, emails, in-person meetings and, yes, even letters.  Dynamics CRM and Parature allow you to respond in kind, using the appropriate communications channel.  With ClickDimensions email marketing automation, you can create richly formatted emails and event invitations, and track responses in Dynamics CRM.

Communications should be handled consistent with the policy positions of the candidate and often require escalation and staff action to respond to requests. You can publish a knowledge base of candidate positions and documents, and organize them for easy searching and browsing.




Dynamics CRM social capabilities allow you to track voter sentiment and social engagement. 

Political candidates also have requirements to comply with federal and state election laws, so tracking relationships with donors is vital.  Integration with your campaign contribution system helps ensure compliance and associate activities with donors. 

CRM gives a 360 degree of people which interact with the campaign. Their role and relationship can change over time, such as contributing, volunteering, or even taking a staff position after a successful election bid.

You can use Dynamics CRM to sign up volunteers and track their activities.  With a portal like PortVue, volunteers can sign up online.

Mapping capabilities of Dynamics CRM offer visualizations to show where donors and supporters are located.

Getting organized and communicating clearly and consistently are important to political campaigns, so Dynamics CRM is a tool that can help you get elected. 


Tuesday, August 25, 2015

Planning for Dynamics 365 (formerly Dynamics CRM) Solutions

NOTE: Updated to include Dynamics 365

Microsoft Dynamics 365 (formerly Dynamics CRM) allows a developer to package  a number of customizations as a solution so they may be installed and managed as a unit rather than individually.  For instance, you could put all your custom entities and attributes as well as reports in a solution.  The solution may be installed into an instance of Dynamics 365 -- online or on premises.

Managed solutions are a type of solution which prevents unintentional changes to the customizations. You must start by creating an unmanaged solution and then deploy it as a managed solution in another instance of Dynamics 365.

There are many approaches to defining solutions.  One extreme is to put all customizations in a single solution.  The other extreme is to use dozens of solutions.

For Microsoft Grants Manager, we would use one solution for the standard Grants Manager Plus customizations, and another which contains customizations unique to a particular agency. A third solution is used for the customizations that relate to the PortVue portal.

Be careful about dependencies among solutions, because this can complicate deployment. If you end up with proliferation of too many solutions, you may want to re-examine them and determine whether some should be merged into fewer solutions.

Solutions are not designed as a tool for managing a multi-developer project.  There are better ways of coordinating coding than to have a solution for each developer.

You need to consider maintenance implications of Dynamics 365 solutions.  For instance, today we were updating a client's CRM to a new version, only to find that a managed solution was installed that no one recognized.

Solutions are not backwards compatible to earlier versions of Dynamics CRM, as shown in the following figure:

Source: Microsoft https://msdn.microsoft.com/en-us/library/gg328109.aspx




Friday, August 21, 2015

Dynamics CRM and Azure Together at Last

It's no secret that Dynamics CRM 2015 and the Azure cloud are both high priorities for Microsoft. This summer has seen a series of announcements that bring them closer together than ever before.



Dynamics CRM 2015 and Dynamics CRM Online 2015 now support integration with Microsoft Azure. This means that you can use Azure as a channel to communicate runtime data from Dynamics CRM for requirements such as synchronization with other CRM servers.

In more news, Microsoft has published the Azure Mobile Connector SDK to connect to Dynamics CRM Online and allow built-in sync and integration with Azure Active Directory.

Azure can fill in some of the gaps of Dynamics CRM Online, such as offloading reporting or loading CRM data into business intelligence tools.  You can use Azure blob storage for document storage in order to reduce storage requirements for Dynamics CRM Online.

Azure can provide a great development platform for Dynamics CRM so you avoid the short lifespan of Online trial accounts as well as the performance demands of local virtual machines on the developer's laptop.  There are step-by-step instructions by Microsoft MVP Jukka Niiranen.

Please tell me more about how you are using Azure and Dynamics CRM together.


Monday, August 17, 2015

Dynamics CRM for Correspondence Management

InfoStrat has developed a correspondence management solution that complements its constituent management and executive scheduling solutions.

Elected officials need correspondence management in order to respond to letters and other communications such as phone calls, emails, and website comments. 

You can use the system to respond in kind, that is to use the same communications channel that was used to initiate the contact. For instance, you would respond with a letter if you received a letter, or send an email if you receive an email.

Microsoft Dynamics CRM provides the foundation of the solution by including activity tracking, a workflow engine, integration with email and Microsoft Word for merges, and even mobile clients to view activity on your phone or tablet device. 

When you implement the solution, you choose how to handle frequent inquiry topics, and can build a library of templates and standard responses which may be combined as needed. 

If you used Dynamics CRM to track everyone with whom you interact, you end up with a full picture of these relationships and better visibility on the work of staff members.


Thursday, August 13, 2015

Dynamics CRM for Executive Scheduling

Microsoft Dynamics CRM has obvious uses for sales force automation, customer service, and marketing.  Even more interesting are the uses for other functions.

Elected officials, particularly those in some form of executive office such as governors and mayors, receive numerous requests to appear at public events or private functions, for interviews, and a host of other events. The InfoStrat Executive Scheduling solution enables the official’s scheduling team to conduct these activities in a standard way that ensures all requests are managed and that a timely response is provided.

Microsoft Outlook is the most popular professional scheduling application, and is used in nearly every government agency.  Outlook is a great way to manage a calendar, but Dynamics CRM can add the workflows needed by someone with a staff of assistants whose calendar is much more complicated and fluid.

The solution tracks incoming requests for attendance by the executive at various events. Requests can come in via phone, letter, email or a form on the executive’s website. Details about the event are gathered to provide a briefing to the executive as part of the Calendar record, so that the executive is able to review event details while en route or as part of a daily briefing.

If the event is one in which the executive will not be able to attend, the solution provides the option to select a surrogate. The appropriate surrogate would be identified and an email is sent to that person to coordinate their attendance as well as notification to the event organizer.

Executive Scheduling provides a calendar view of all the executive’s scheduled events for each day. CRM Appointments are used to integrate the executive’s personal calendar with official calendar events.  Executive Scheduling is available for Dynamics CRM 2013 and 2015, on Microsoft Dynamics CRM Online, hosted by InfoStrat or on premise.