CSP Localization Exception !!!

Jan 6, 2009 at 1:49 PM
Edited Jan 6, 2009 at 1:51 PM

Hi Team,

We are working on a CSP project and there are several problems with localization in Bulgarian language.

I have successfully installed localized version of Internet and Intranet portals.  When I am trying to submit the localized version of “CLAIM” form, an error message appears to the user, because of this exception in CrmFacade class , row 342:

CreateResponse resp = (CreateResponse)crm.Execute(req);

"Server was unable to process request"

Stack trace:
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)  

   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)

   at Microsoft.Crm.SdkTypeProxy.CrmService.Execute(Request Request)

   at CSP.Integration.CrmFacade.CreateProcedure(String infoPathXml)

 

 

 

 

 

where can I find the reason? My supposition is somewhere in CRM localization, but please give me a hint!

Regards,
Tihomir Ignatov

Developer
Jan 7, 2009 at 1:32 PM
Hi, Tihomir

Though it looks like the code passed the XSL transform without problem, I would look at the *csp_claim.xsl* file in the CrmConnector folder.
Look for bugs regarding things like picklist values. You can try to comment the stylesheet step by step to determine where the error lies.

Regards

Daniel (CSP Team)
Jan 7, 2009 at 3:09 PM
Edited Jan 7, 2009 at 3:12 PM
Hi, Daniel,

The problem is not in the XSLT, the result XML is correct (csp_claim.xsl is localized correct ).


<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
 <DynamicEntity Name="csp_claim" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2006-12-14T10:15:01">
 <Properties xmlns="http://schemas.microsoft.com/crm/2006/WebServices">
 <Property xsi:type="StringProperty" Name="csp_city">
  <Value>Sofia</Value>
  </Property>
 <Property xsi:type="StringProperty" Name="csp_postalcode">
  <Value>1000</Value>
  </Property>
 <Property xsi:type="StringProperty" Name="csp_emailaddress">
  <Value>xxx@mycompany.com</Value>
  </Property>
 <Property xsi:type="StringProperty" Name="csp_phone">
  <Value>123-456-789</Value>
  </Property>
 <Property xsi:type="CrmDateTimeProperty" Name="csp_date">
  <Value>2009-01-06</Value>
  </Property>
 <Property xsi:type="StringProperty" Name="csp_details">
  <Value>zzzzz</Value>
  </Property>
 <Property xsi:type="PicklistProperty" Name="csp_type">
  <Value>3</Value>
  </Property>
  </Properties>
  </DynamicEntity>



I found the following message in the Event Log

Event Type:        Error

Event Source:    MSCRMWebService

Event Category:                None

Event ID:              18176

Date:                     1/7/2009

Time:                     4:33:18 PM

User:                     N/A

Computer:          VM-CSP-01

Description:

Web Service Plug-in failed in OrganizationId: 4945ea28-a9cb-46a1-bdae-25b203a77317; SdkMessageProcessingStepId: f5bb4082-abdc-dd11-a430-0003ffa7a57a; EntityName: csp_claim; Stage: 50; MessageName: Create; AssemblyName: CSP.CRM.Plugins.LinkIncidentToProcedure, CSP.CRM.Plugins, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a81ba2f1a249d831; ClassName: CSP.CRM.Plugins.LinkIncidentToProcedure; Exception: Unhandled Exception: System.Web.Services.Protocols.SoapException: Server was unable to process request.

Detail: <detail><error>

  <code>0x80040220</code>

  <description>SecLib::CrmCheckPrivilege failed. Returned hr = -2147220960 on UserId: 819f9b8b-aadc-dd11-a430-0003ffa7a57a and PrivilegeId: 39f1e2e1-dc31-41cc-ae7e-211c1431b660</description>

  <type>Platform</type>

</error></detail>

   at Microsoft.Crm.Extensibility.SdkTypeProxyCrmServiceWrapper.InternalInvoke(MethodInfo methodInfo, Object[] parameters)

   at Microsoft.Crm.Extensibility.SdkTypeProxyCrmServiceWrapper.Create(BusinessEntity entity)

   at CSP.CRM.Plugins.LinkIncidentToProcedure.CreateIncident(Guid procedureId, String procedureName, DynamicEntity procedure)

   at CSP.CRM.Plugins.LinkIncidentToProcedure.Microsoft.Crm.Sdk.IPlugin.Execute(IPluginExecutionContext context)

   at Microsoft.Crm.Extensibility.PluginStep.Execute(PipelineExecutionContext context)

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

39f1e2e1-dc31-41cc-ae7e-211c1431b660 is Privilege with name prvCreateQueueItem  (see here for more info http://technet.microsoft.com/en-us/library/cc150743.aspx )

According the link above we added our CRM user to the group CEO-Business Manager , because all standard Roles have that Privilege!!! This fixed the problem and now the form submit works!


 

My suggestion to dev team is to add “prvCreateQueueItem“ to RoleDeployer.Run()<o:p></o:p>

Best Regards,
Tihomir