Showing posts with label crm4. Show all posts
Showing posts with label crm4. Show all posts

Tuesday, November 29, 2011

CRM 2011 - Import Organization - Errorcode: 0x80131904 The login already has an account under a different user name

Using Import Organization on a CRM 4 Database results in
Errorcode: 0x80131904 The login already has an account under a different user name

The problem are different users and schemas in the sql-database of the installed system (CRM2011) and the source system (CRM4). The system language of the CRM 2011 database is another language than the CRM 4 database has been.


Example (de/en):

CRM 4 based on Windows Server 2003 / SQL 2005 GERMAN
CRM 2011 based Windows Server 2008 R2 / SQL 2008 ENGLISH

The german systems contains the user and schema 'NT-AUTORITÄT\NETZWERKDIENST'.
CRM 2011 database contains an user and a schema 'NT AUTHORITY\NETWORK SERVICE'. This is what the CRM 2011 system is expecting in the import org database.

Solution:

  • Create Database with name of CRM 4 source (_MSCRM) in SQL-Server of CRM 2011
  • Restore from backup of CRM 4
  • Delete the user and schema 'NT-AUTORITÄT\NETZWERKDIENST' from restored database
  • Use Deploymentmanager and import the organization
Cheers,
Markus

Friday, November 19, 2010

Problems removing CrmAuthentication from web.config

There are many posts in the web describing, how you can resolve issues like
System.Net.WebException: The request failed with HTTP status 403: Forbidden.
in Custom ASPX-Pages in the ISV-Folder.

Many of them offers web.config stuff like this:

<system.web>
<httpmodules>
<remove name="CrmAuthentication">
</remove>
...

<system.web>
<httpModules>
<remove name ="CrmAuthentication"/>
</httpModules>
...


Important:
This is ok if you are using default "OnPremise" professional-deployments. It will lead to further problems if you work on an enterprise deployment or with "IFD" Stuff. For example, it is not possible to use CrmImpersonator in this configuration. Keep this in mind for further iterations of your software.

cheers.


Friday, July 17, 2009

Speedup Microsoft CrmService

The CrmService has huge amount of functions. One of them is the execute method, which delivers the possibility to update, retrieve, retrieveMultiple and so on.

For best performance, you should NOT use the execute method for default actions like retrieve create, update et cetera. Therefor you should use the specific functions, which are also provided from the CrmService.

Fast:
BusinessCollection taskCollection = crmservice.retrieveMultiple(queryExpr);

Slow:
RetrieveMultipleResponse retrMultiResponse = (RetrieveMultipleResponse) crmservice.execute(retrMultiRequest);

For specials like opening activities, you must use the execute method.

Alongside you should only call the service, if there is no other option. If you have to calculate huge amounts of crm data, create caching objects to avoid more than one call for the same set of data.

Kind regards
MK

Edit:
Only available if you are using the WSDL-Proxy Classes.