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 Dynamics CRM, a "behavioral scoring" field is added to entities, and is automatically populated by CardioLog according to the visitor's web activity.
Note: Adding customer CRM entities requires customization.
Dynamics CRM Solution
This custom Dynamics CRM Solution is implemented through the application UI. The solution 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 importing form data from their website to complete this field. 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 Dynamics 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 including 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 analytics report for a single CRM entity.
The CardioLog Report iFrame
Follow these steps to install the Dynamics CRM Solution:
- Download the solution file from our site here.
- Open Dynamics CRM and go to the Settings tab > Solutions > Import > and select the solution zip file (CardiologIntegration_0_2_0_5_managed.zip)
- Reload the Dynamics CRM main page
- Under CardioLog, 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.API.URL, Value = http://[CardioLog App]/cardiologapi/events.asmx/SendEvent?param1=¶m2=&useragent=&clientip
- 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.
Create the CardioLog web analytics report for CRM entities:
- In the CardioLog navigation pane go to Settings > Templates > click Add next to User content type and publish it. See Report Templates for more information.
- In the CardioLog navigation pane go to Report Center and browse to the Individual Report Samples folder > Visitors folder > Unique Visitors > Drill down on a user in the Unique Users table, and select the report template.
- 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 IDs.
Follow these steps to configure the CardioLog - CRM Updates service component:
- Configure the User Categories Updates service in CardioLog 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. In the CardioLog navigation pane, go to Administration > CardioLog Scheduling Service > CRM Updates > and set the desired scheduling type. Click Restart Service in the upper right hand corner of the CardioLog Scheduling Service window.
Note: The CardioLog application pool account should have read/write access to Dynamics CRM.
Filtering and segmenting CardioLog Reports by CRM entities and entity fields:
- Filtering reports by CRM entities:
- Open CardioLog and from the navigation pane select Report Center, then click the desired report and select Edit
- Under Filters, 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 CardioLog and from the navigation pane select Report Center, then click the desired report and select Edit
- Under Filters, 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 include it in the filter setting.
Custom Dynamics CRM Workflow
This custom CRM workflow sends entity events (eg., status updates) by accessing the CardioLog SendEvent web service:
- CRM asynchronous workflow rules that use a custom workflow assembly will react to the desired entity events.
- For each event, the workflow accesses CardioLog's web service and sends the relevant data.
- Event URL has the following format: CRM | entity | status | reason
For more information about Microsoft CRM status and reasons, see the Microsoft StateCode and StatusCode Values table.
The Custom CRM Workflows dialog
Creating Reports for CRM Workflows
- From the Navigation Pane, click on Report Center > Click the folder where you would like to create a new report, and select New Report.
- We recommend adding either the Unique Users table or Visitors by Events table widget to your new report. Although tables that include user information should filter results accurately according to CRM data.
- From the Filters menu, select "CRM" in the Website Item and click Go.