here is the link that I have posted in another MS CRM forum
here is the link that I have posted in another MS CRM forum
We have received issue when user do create/update records which call some plugin to action.
This is message from Window Event View:
The Web Service plug-in failed in OrganizationId: 5cba9fb3-edb3-e311-a433-000c299cbd8b; SdkMessageProcessingStepId: 6accbb1b-ea3e-db11-86a7-000a3a5473e8; EntityName: systemuser; Stage: 30; MessageName: RetrieveMultiple; AssemblyName: Microsoft.Crm.Extensibility.InternalOperationPlugin, Microsoft.Crm.ObjectModel, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; ClassName: Microsoft.Crm.Extensibility.InternalOperationPlugin; Exception: Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values)
at Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IServiceProvider serviceProvider)
at Microsoft.Crm.Extensibility.V5PluginProxyStep.ExecuteInternal(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context)
Inner Exception: System.InvalidOperationException: There is already an open DataReader associated with this Command which must be closed first.
at System.Data.SqlClient.SqlInternalConnectionTds.ValidateConnectionForExecute(SqlCommand command)
at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader()
at Microsoft.Crm.CrmDbConnection.InternalExecuteWithRetry[TResult](Func`1 ExecuteMethod, IDbCommand command)
at Microsoft.Crm.CrmDbConnection.InternalExecuteReader(IDbCommand command, Boolean capturePerfTrace)
at Microsoft.Crm.CrmDbConnection.ExecuteReader(IDbCommand command, Boolean impersonate, Boolean capturePerfTrace)
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.ExecuteQuery(CrmDbConnection dbConnection, IDbCommand command, ISqlExecutionContext context, Nullable`1 commandTimeout)
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.QueryAndFillEntityCollection(CrmDbConnection dbConnection, IDbCommand dbCommand, BusinessEntityCollection entities, EntityExpression entityExp, PagingHelper pagingHelper, Boolean useEntityExpression, String aggregateLimitExceededName, ExecutionContext context)
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.DoRetrieveMultiple(BusinessEntityCollection entities, EntityExpression entityExp, DatabaseQueryTarget queryTarget, PagingHelper pagingHelper, ExecutionContext context)
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.DoRetrieveMultiple(BusinessEntityCollection entities, EntityExpression entityExp, DatabaseQueryTarget queryTarget, ExecutionContext context)
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.RetrieveMultiple(EntityExpression entityExpression, DatabaseQueryTarget queryTarget, ExecutionContext context)
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.RetrieveMultiple(EntityExpression entityExpression, ExecutionContext context)
Our solution:
Refactor all plugin code: do not user global variable
Change the setting configuration:
1) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\OLEDBTimeout
a. In seconds
b. The OLEDBTimeout value controls the SQL time-out value that is used for a single SQL query
c. Set it to 60 seconds
2) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\ExtendedTimeout
a. In milliseconds
b. The ExtendedTimeout value controls the ASP.NET time-out value
c. Set it to 1,000,000
3) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\NormalTimeout
a. In milliseconds
b. Specifies the SOAP call timeout for most operations
c. Set it to 300,000
After apply above solutions we have double check CRM server and the old error don’t occur. Could you give us advice about the root case so we can solve the problem effectively?
Currently, our client are using standard MS functionality to export data to excel. They want to export around 50.000 records. The export function do as they expected. Do you know any advice or link to this issue that could help us to do.
Our system
- MS Dynamics CRM 2013 On-premises system (version 6.0.1.61, rollup 1).
- About database on production environment, currently there are about 7.5M records Lead, 430K records Account, 2.8M records Phone call.
Your help is very appreciated!!
Our clients use the standard search function of MS CRM, but search with wild word like "*abc", there is no response, the IE is not responding, and users have to exist.
We have also got complaint about searching by lead name or lead's phone number, users told that it is slow to show response. The standardized system is not able to search by "contain" operator, only "begin with" operator.
We set searchable fields on 5 fields on Lead (lead name, phone number, ID, identity no., residence phone)
Background:
- MS Dynamics CRM 2013 On-premises system (version 6.0.1.61, rollup 1),We have migrated large data from Salesforce.com system to MS CRM system.
- About database on production environment, currently there are about 7.5M records Lead, 430K records Account, 2.8M records Phone call.
=> Currently, We has not found out solution to solve this. We are just using the standard MS functionality.It would be better if Microsoft can help on this.
Hello guys ,
Our business uses ui to show customer details and list of phone no
User can add as many phone nos as he wishes to.
If user want to delete existing phone and add new ones , he can.
This data is linked to Ms Crm Databse so customer is parent entity and phone no is associated child entity.
If user updates phone no as below :
Old Customer Phone Nos : 111, 222 ,333
New List of Phone No : 111 , 444
Case 1) I want to overwrite new list of phone no to old list.
Insert : 444, Delete : 222 ,333 Keep 111 untouched
Case 2) But in our c# code
We retrieved all phone no by linq
We Deleted all old phone no list using Delete method of Crm Sdk
then inserts new phone no 111 , 444 using Create method of Crm Sdk
Is there any method provided by crm sdk that will automatically do Case 1)
Or any other way to do this
Case 2) will unneccesarily delete 111 phone no each time.
I want to avoid delete - insert of same data in database
Also My requirements is
I do not want to check this manually whether
oldphoneno = newphoneno
If anyone has some idea , I would really appreaciate it
Thanks,
Om
---------------------------
Microsoft Dynamics CRM Setup
---------------------------
Setup was unable to retrieve settings from the Internet Information Services (IIS) metabase.
---------------------------
OK
---------------------------
Thanks
Dynamics CRM 2013 when a user creates new opportunity then there should be an option for recurring opportunity. If user wants to create recurring opportunities,is it possible through workflow without coding.
I have created very simple test report. It's works just fine in VS. I created a report in the CRM and chose exisitng file. When I run the report from the CRM I get the following error: "The report cannot be displayed. (rsProcessingAborted)"
Can anyone help?
Thanks.
Hi Everybody,
I am working on CRM 2013 and created some addons,
Exported those addons as a solution zip file.
what is the better way to give those addons zip files to client, it is good to give as zip file only or
do we need to make some installation package where it will import the zip solution to CRM.
Please suggest over this what is the better way and which is recommended.
Thanks in advance.
I have a single default SLA set up on our on-premise organization. when i do not associate business hours with the SLA my new cases are created and the relevant SLA timers are populated. When I add a simple 0800-1800 business hours schedule i get a Business Process Error with a message TimeTrackingCacheLoader encountered some errors{0}, see log for more detail. I've set up an identical SLA on an online instance and do not get the error. I'm assuming the issue is the calendar but cannot see why it is working online but not for the on-premise. Has anyone encountered this?
I have the code below that is giving me an error:
#region
if (entity.Contains("account") && entity["account"] != null)
{
EntityReference a = (EntityReference)entity.Attributes["account"];
//DateTime today = DateTime.Today;
Entity notes = new Entity("account");
notes.Id = a.Id;
notes.Attributes.Add("new_callstoday", new DateTime(today));
service.Update(notes);
}
#endregion
I am trying to add todays date to a field.
Can anyone help?
hi,
i am getting Error:unable to get property 'getValue' of undefined or null reference in javascript
while i am writing a snippet to retrieve contactid from lookup.
here is my snippet:
function contactField_Onchange()
{
var jobTitle = Xrm.Page.data.entity.attributes.get("new_title");
var fullName = Xrm.Page.data.entity.attributes.get("new_fullname");
var emailAddress = Xrm.Page.data.entity.attributes.get("new_email");
var mobilePhone = Xrm.Page.data.entity.attributes.get("new_mobile");
var contactjobTitle = "";
var contactName = "";
var contactEmail = "";
var contactMobile = "";
///contact
//Get parentcustomerid lookup value
var lookupItem = new Array();
lookupItem = Xrm.Page.getAttribute("contactid").getValue(); //getting error here..
if (lookupItem != null)
{
var guid = lookupItem[0].id;
var parentcustomeridValue = guid;
var entType = lookupItem[0].entityType;
var parentcustomertypeValue = entType;
if (parentcustomeridValue != null && parentcustomertypeValue == "contact")
{
//get entity contact
var entity = "Contact";
var fields = "*";
var filter = "ContactId eq guid'" + parentcustomeridValue + "'";
var ret = retrieveMultipleSync(entity, filter, fields);
if (ret != null)
{
if (ret[0].jobtitle != null)
{
contactjobTitle = ret[0].jobtitle;
jobTitle.setValue(contactjobTitle);
}
if(ret[0].fullname != null)
{
contactName = ret[0].fullname;
fullName.setValue(contactName);
}
if(ret[0].emailaddress1 != null)
{
contactEmail = ret[0].emailaddress1;
emailAddress.setValue(contactEmail);
}
if(ret[0].mobilephone != null)
{
contactMobile = ret[0].mobilephone;
mobilePhone.setValue(contactMobile);
}
}
}
}
else
{
jobTitle.setValue(contactjobTitle);
fullName.setValue(contactName);
emailAddress.setValue(contactEmail);
mobilePhone.setValue(contactMobile);
}
}
can anyone help me to resolve this issue.
Thank You
Habeeb.
Code Here
function AlertGUID()
{
debugger;
var cFullname = Xrm.Page.data.entity.attributes.get("new_fullname");
//var cJobtitle = Xrm.Page.data.entity.attributes.get("new_jobtitle");
//var cEmailaddress = Xrm.Page.data.entity.attributes.get("new_emailaddress");
//var cMobilenumber = Xrm.Page.data.entity.attributes.get("new_mobilenumber");
var contactfullname = "";
//var contactJobTittle = "";
//var contactEmailAddress = "";
//var contactMobileNumber = "";
var primaryContactGUID = Xrm.Page.data.entity.attributes.get("new_primarycontact").getValue()[0].id;
alert(primaryContactGUID);
if(primaryContactGUID !=null)
{
var value = primaryContactGUID.getValue();
if ((value ! = null))
{
var textvalue = contactObjectvalue[0].name;
var contactid = value[0].id;
}
}
//var guid = contactid;
var parentcustomeridValue = contactid;
var parentcustomertypeValue = primaryContactGUID[0].entityType;
if(parentcustomeridValue !=null && parentcustomertypeValue == "contact")
{
var entity = "Contact";
var fields = "*";
var filter = "ContactId eq guid'" + parentcustomeridValue + "'";
var cret = retrieveMultipleSync(entity, filter, fields);
if(cret[0].fullname != null)
{
contactfullname = ret[0].fullname;
cFullname.setValue(contactfullname);
}
}
}
Please help me out regarding this Error
Hi all
In CRM 2011 facility Equipment is Mapping with Provider (another Entity).
Suppose we have 4 FE the provider is Associated (Example:-FQ1,FQ2,FQ3,FQ4)
Example :- In facility Equipment One Person is Working with one more facility Equipment
once i will provide provider UserID i need to Display the
Name :-XXXXXX
Location XXXX and Working hours using java script ..
Please Suggest me ..
thank you
naveen
Hello guys
I am wondering why the case auto create rule does not create any cases from internal emails (email from CRM users to the support email address). They are in the same domain. But when I send an email from the support address to the support address itself, it creates a case.
The support address is a queue.
Can someone give me an explanation?
BR
Raphi
I request for some help on how to remove commas from the all "Whole number" fields. I want to remove those commas also from the columns in custom or standard view as well.
I tried with Settings > Administration > System Settings > Format
But it didn't work
For the past few weeks, any new computer we set up with CRM 2011 outlook fails to go offline. Existing users can go offline without issue.
Outlook offline sync goes through all the steps, but upon reaching the "Propagating Customizations" step, it fails with the following error:
Bulk load: An unexpected end of file was encountered in the data file. The OLE DB provider "BULK" for the linked server "(null)" repored an error. The provider did not give any information about the error. Cannot fetch a row from OLE DB provider "BULK for lin
Upon researching this error, all I found were issues with SQL Server 2005 that have since been patched. This is not applicable anyway, since SQL Server 2008 is being used.