Contents
- Dynamics CRM Solution
- CRM Updates Service Component
- Custom Dynamics CRM Workflow
- Creating Reports for CRM Workflows
Many clients who use SharePoint to manage their customer facing websites also use Microsoft Dynamics CRM to monitor leads and maintain client relationships. CardioLog allows you to integrate Dynamics CRM into the workflow for more robust report data. Here is a general outline on how the Microsoft Dynamics CRM integration works:
- A website visitor ID is saved in Dynamics CRM with other form submission fields. This ID (called CardioLog ID) is used to map CRM entities to specific website visitors, including Lead, Opportunity, Contact and Customer.
- In Dynamics CRM, one can view the web analytic reports for a single entity (ie., web visitor) through an embedded iFrame or by clicking a direct link to CardioLog reports.
- In Dynamics CRM, a "status update" event is logged in CardioLog when an entity status changes. The update is then made available within analytic reports for the entity (ie., web visitor).
- Dynamics CRM entity fields are automatically imported into CardioLog, and can be used to filter reports using visitor segments.
- In CRM, a "behavioral scoring" field is added to entities and is automatically populated by CardioLog (based on the visitor's web activity).
Note: Adding customer CRM entities requires customization.
Dynamics CRM Solution
This custom Dynamics CRM Solution is implemented through the CRM UI, and creates the following entity fields:
- CardioLog ID - used to map CRM entities (Lead, Opportunity, Contact and Customer) to specific website visitors.
- The customer is responsible for populating this field when importing form data from his website. For example, if the client's web site has a "Contact Us" form and this form sends the data to Dynamics CRM, we assume that the CardioLog ID is stored in CRM as well.
- The CardioLog ID is populated for the original entity (lead) that was browsing the website.
- The CardioLog ID can be retrieved from the client side (browser cookie named "userid") or from the server side (Request.Cookies["userid"])
- CardioLogGroupID - when qualifying a lead, any entity generated in the process (account, contact and opportunity) will have its CardioLogGroupID field populated with the CardioLogID of the original lead. This field can be imported into CardioLog and used in report filtering.
- CardioLog Score - score for a single CRM entity. Updated by CardioLog's CRM Updates service.
- CardioLog Report - web analytic report for a single CRM entity.
The CardioLog Report iFrame
Installing the SharePoint Marketing Suite - Dynamics CRM Solution:
- Download the solution file from here.
- Open CRM > Settings tab > Solutions > Import > select the solution zip file (CardiologIntegration_0_2_0_5_managed.zip)
- Reload the Dynamics CRM main page
- Under SharePoint Marketing Suite, click Configuration and add the following 3 fields:
- Name = Cardiolog.API.URL, Value = http://[CardioLog App]/cardiologapi/events.asmx/SendEvent?param1=¶m2=&useragent=&clientip
The CardioLog SendEvent web service URL. Edit the CardioLog application server name.
- Name = Cardiolog.Group.CategoryID, Value = [Category ID]
The CardioLog Category ID. After the first execution of the CRM Updates Service component, a new category will be created. This category contains the possible values for CardioLogGroupID.
To retrieve the Category ID execute the following query against the CardioLog database:
select Category_Id from tab_category_categories
where Category_Name = 'int_cardiologgroupid'
- Name = Cardiolog.Report.URL, Value = http://[CardioLog App]/CardioLog/CLReport/ContextBasedReport.aspx?timeframe=0&timeInterval=864000000000&startDate=30d&endDate=today&templateId=[user template ID]&entityId=[entity id]
The CardioLog web analytics report URL. Edit the CardioLog application server name.
Creating the CardioLog web analytics report for CRM entities:
- Open SharePoint Marketing Suite > Administration tab > Templates > create a new report template under the User content type and publish it. For more information about report templates, see http://support.intlock.com/entries/20746103-6-report-templates
- Open SharePoint Marketing Suite > Report Center tab > Sample Reports > Visitors > Unique Visitors > edit the report filters and click on Go > drill down on a user in the Unique Users tableand select the report template. For more information about drill down see http://support.intlock.com/entries/20445137-5-visual-controls#5.7
- Copy the report URL.
The Dynamic CRM Solution Settings dialog
CRM Updates Service Component
This service component has 2 functionalities:
- Updating the score field for CRM entities.
- Retrieving CRM entity fields for filtering and segmenting reports. User names correspond to CardioLog ID.
Configuring the SharePoint Marketing Suite CRM Updates service component:
- Configure the User Categories Updates service in SharePoint Marketing Suite in order to retrieve CRM entity fields:
- Open [CardioLog Installation Folder]\CardioLogScheduleServices\Settings.config and edit the following:<param><handlerId>4</handlerId><name>webServiceURL</name><val><![CDATA[http://[CardioLog App]/VisitorSegments/DynamicsCRM2011Users.aspx]]></val></param>
- Open [CardioLog Installation Folder]\VisitorSegments\CRMSettings.xml and edit the following:<CRMSettings><instance id="1" type="dcrm"><webServiceUrl url="http://[DCRM server]/MSCrmServices/2007/CrmService.asmx" /><organizations><organization id="1" name="[Organization Name]"><entities><entity name="[Entity Name]" cardioLogIDFieldName="int_cardiologid"><attributes><attribute id="1" name="[Field Name]" /></attributes></entity></entities></organization></organizations></instance></CRMSettings>
- DCRM server name
- Organization Name
To retrieve the organization name, open CRM > Settings > System > Administration > Business Units > Name - Entity Name
To retrieve the entity name (only entities supported by CardioLog - Lead, Opportunity, Contact and Customer), open CRM > System > Customization > Customizations > Customize the System > Components > Entities > Name (for example the name of the Lead entity is lead) - Field Name
To retrieve the field name, open CRM > System > Customization > Customizations > Customize the System > Components > Entities > Entity Type (for instance Lead) > Fields > Name (for example the name of the Lead Source field is leadsourcecode)
3. Open SharePoint Marketing Suite > Administration tab > CardioLog Scheduling Service > CRM Updates > set the desired scheduling type for this service and restart the CardioLog Scheduling Service windows service.
Note: The CardioLog application pool account should have read/write access to CRM.
Filtering and segmenting SharePoint Marketing Suite Reports by CRM entities and entity fields:
- Filtering reports by CRM entities:
- Open SharePoint Marketing Suite > Report Center tab > click the desired report and select Edit
- Click Users and Groups and select the Customize option
- Enter the CRM entity name (CardioLog ID) in the Name field and then click Add
- Segmenting reports by CRM entity fields:
- Open SharePoint Marketing Suite > Report Center tab > click the desired report and select Edit
- Click Visitor Segments and select the Customize option
- Click the CRM entity field (under User Categories) and select the Customize option
- Enter the field value in the Name field and then click Search. Select the desired result and click the Add button to add it to the filter
Custom Dynamics CRM Workflow
This custom CRM workflow sends entity (Lead, Opportunity, Contact and Customer) events (such as status update) by calling the CardioLog SendEvent web service:
- CRM asynchronous workflow rules (using a custom workflow assembly) will react to the desired entity events.
- For each event the workflow calls CardioLog's web service and sends the relevant data.
- Event URL has the following format: CRM | entity | status | reason
For more information about the default Microsoft CRM values for status (StateCode) and reason (StatusCode), see http://msdn.microsoft.com/en-us/library/ms914670.aspx
The Custom CRM Workflows dialog
Creating Reports for CRM Workflows
- From the Navigation Pane, click on Report Center tab > create a new report. For more information about how to create a report, see http://support.intlock.com/entries/20451026-6-report-center#6.1
- Add the Page Views > Events and Visitors > Unique Users by Events reports
- Enter "CRM" in the Portal Item URL field and click Go