Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / web / IIS

Microsoft Office Sharepoint Server 2007(MOSS 2007) And Microsoft CRM Integration

3.42/5 (34 votes)
17 Mar 2008CPOL 1   942  
The purpose of the integration is to create collaboration sites on SharePoint 2007 as new accounts or opportunities are created in Microsoft CRM.

Introduction

The purpose of the integration is to create collaboration sites on SharePoint 2007 as new accounts or opportunities are created in Microsoft CRM.

Whenever a new account or opportunity in Microsoft CRM is created, a workflow will be triggered. The workflow will execute a .NET assembly called "{SomeName}.dll". This assembly is responsible to create the corresponding collaboration site on SharePoint server.

Using the code

Workflow Architecture  See figure Workflow rule.jpg



Code to Apply Logo to Sharepoint Site

private static void ApplyLogoToSharepointSite( string siteName , string entityName)
 { 
 SPGlobalAdmin globalAdmin = new SPGlobalAdmin();
  string siteURL = ConfigurationReader.GetSharepointSiteUrl(); 
 SPVirtualServer dashboaordServer =       globalAdmin.OpenVirtualServer(new Uri(siteURL));
Microsoft.SharePoint.SPWeb _web =   dashboaordServer.Sites["sites/"+siteName].RootWeb;
  Logger.Instance.LogComment( _web.Url );
if (_web != null)
 {
_web.AllowUnsafeUpdates = true;
_web.SiteLogoUrl =  ConfigurationReader.GetSharepointSiteLogoUrl(entityName);
 _web.Update();

 }

Points of Interest

Creating Workflow rule in CRM

1.Open Work flow manager.

WorkFlowRule1.jpg(see in document)

<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"><formulas /><f eqn="if lineDrawn pixelLineWidth 0"><f eqn="sum @0 1 0"><f eqn="sum 0 0 @1"><f eqn="prod @2 1 2"><f eqn="prod @3 21600 pixelWidth"><f eqn="prod @3 21600 pixelHeight"><f eqn="sum @0 0 1"><f eqn="prod @6 1 2"><f eqn="prod @7 21600 pixelWidth"><f eqn="sum @8 21600 0"><f eqn="prod @7 21600 pixelHeight"><f eqn="sum @10 21600 0"></formulas /><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"><lock aspectratio="t" v:ext="edit"><shape id="_x0000_i1025" style="WIDTH: 6in; HEIGHT: 4in" type="#_x0000_t75"><imagedata src="file:///C:\DOCUME~1\AVINIS~1.AWA\LOCALS~1\Temp\msohtml1\02\clip_image001.png">

WorkFlowRule2.jpg(see in document)

WorkFlowRule3.jpg(see in document)

Here we specify the parameter value which will be passed from workflow rule to .net assembly code. We need to pass the accountid and opportunityid respectively for Accounts and Opportunities.

WorkFlowRule4.jpgDownload Proteans.zip - 2,475.7 KB

Then after successfully creation of workflow rule, we need to activate the workflow rule.

History

Update will be coming very soon.............

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)