Summary

K2 blackpearl and K2 blackpoint integrate with CRM 4 out of the box. CRM 2011 was introduced with K2 4.6.2, available for download on the K2 Customer and Partner Portal. The wizards that work with CRM4, however, do not work with CRM 2011, which means all CRM 2011 interaction is accomplished via SmartObjects. However, you can configure your K2 environment to use the CRM4 SDK files to integrate with a CRM 2011 server. How to configure your environment as well as important limitations of this approach are detailed below.

Before you begin

You will need to GAC the appropriate version of the CRM4 SDK files on the server running the K2 Server. Download the SDK from http://www.microsoft.com/en-us/download/details.aspx?id=38.

Secondly, you should plan to switch over test environment to integrate with CRM 2011 before making these changes to a production environment. There are certain limitations of using this approach, including:

  1. Not all CRM 2011 entities are supported, whether they are new to CRM 2011 or exist in CRM 4. See Table 1 below for a full list.
  2. New CRM 2011 entity attributes may or may not work.
  3. The integration through the CRM 4 SDK with a CRM 2011 server is slower than integrating using the CRM 2011 SDK.

Known Limitations
Table 1 lists the following limitations of using the CRM 4 SDK with a CRM 2011 server.

CRM 4 Entity CRM 2011 Entity Works with CRM 4 Broker
Account Account
Activity
Address Address
Appointment Appointment
Article
Article Template
Business Unit Business Unit
Campaign Campaign
Campaign Activity Campaign Activity
Campaign Response Campaign Response
Case Case
Case Resolution
Competitor Competitor
Competitor Address
Connection
Connection Role
Contact Contact
Contract Contract
Contract Template Contract Template
Currency
Data Map
Dialog Session
Discount List
Document Location
Duplicate Detection Rule
E-mail E-mail
E-mail Attachment
E-mail Template
Facility/Equipment Facility/Equipment
Fax Fax
Field Security Profile
Goal
Goal Metric
Internal Address
Invoice Invoice
Lead Lead
Lead Address
Letter Letter
Mail Merge Template Mail Merge Template
Marketing List Marketing List
Note
Opportunity Opportunity
Opportunity Close
Opportunity Relationship
Order Order
Order Close
Organization
Phone Call Phone Call
Price List Price List
Process
Product Product
Publisher
Queue
Quick Campaign
Quote Quote
Quote Close
Recurring Appointment
Report
Resource
Resource Expansion
Rollup Query
Sales Literature Sales Literature
Saved View
Scheduling Group
Security Role
Service
Service Activity Service Activity
SharePoint Site
Site
Solution
Subject Subject
System Chart
Task Task
Team
Territory
Unit Group
User User
User Chart
View


Other Limitations
Since CRM 2011 introduces new or updated functionality with most entities, such as Notes, Activities, Connections, Queues and E-mail, and these are optional features that can be added to an entity, there may be additional incompatibilities when using the CRM4 SDK. These incompatibilities will be updated here on an ongoing basis as they are discovered or reported to K2. If you discover any, please use the K2 Feedback page to report them.

Entity Incompatibility Error Message
Activity Server was unable to process request. The 'Create' method does not support entities of type 'activitypointer'.

Steps to Configure the K2 Environment
Follow these steps to configure the K2 environment to work with a CRM 2011 server.

      1. GAC the appropriate versions (32-bit or 64-bit) of the following files from the CRM SDK (located at sdk\bin or sdk\bin\64bit):
        • microsoft.crm.sdk.dll
        • microsoft.crm.sdktypeproxy.dll
        • microsoft.crm.sdktypeproxy.xmlserializers.dll
      2. Add assemblyBinding nodes to the <runtime> section of the following files to force the server and design environments to load the CRM 4 SDK files.
          • <install drive>\[K2 blackpearl or K2 blackpoint]\Host Server\Bin\K2HostServer.exe.config
          • <install drive>\[K2 blackpearl or K2 blackpoint]\K2Studio\K2Studio.exe.config
          • <install drive>\inetpub\wwwroot\wss\VirtualDirectories\[SharePoint Web Application]\web.config
      3. Restart the K2 Server.
<configuration>
       <runtime>
              <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
                     <dependentAssembly>
                           <assemblyIdentity name="Microsoft.Crm.Sdk" publicKeyToken="31bf3856ad364e35" culture="neutral" />
                           <publisherPolicy apply="no" />
                     </dependentAssembly>
              </assemblyBinding>
       </runtime>
</configuration>

 

Notes: 
  1. Only the dependentAssembly node and the child nodes will be necessary to copy.
  2. The K2Studio.exe.config file must be updated on each development machine in your organization.
  3. The web.config file must be updated on each web front-end (WFE) server that has the K2 Designer for SharePoint activated.
Using the CRM Entities in K2
Once you have configured your environment, you can use CRM entities within the K2 designers.

Image

Important: You will see a full list of CRM 2011 entities because the list is not filtered to hide CRM 2011 entities that the CRM 4 SDK files do not support.
It is up to you and your workflow designers to use the entities that are known to work with the CRM 4 SDK. If you do not, you may start seeing errors such as the following:
  • Object reference not set to an instance of an object.
  • SmartObject: 'Connection Role' contains a Property with the same name 'Solution'
  • SmartObject: 'Quick Campaign' contains a Property with the same name 'Activity Type'