10 December 2010

My Summary of "What's interesting" for CRM 2011

Just want to share it out ;)

23 November 2010

CRM 4.0 Update Rollup 14

Latest CRM 4.0 rollup 14 released on 19/Nov/2010.
Rollup 14 can be uninstall on server
Rollup 14 is cumulative.
Rollup 1,2,3,4,5,6,7,8,9,10,11,12,13 are not prerequisites for server portion.
Update Rollup 7 is a prerequisite for Microsoft Dynamics CRM for Microsoft Office Outlook and Microsoft Dynamics CRM Data Migration Manager.

KB: KB2389019

09 November 2010

Error installing outlook client: Cannot delete a subkey tree because the subkey does not exist

"Could not remove registry subkey HKEY_CURRENT_USER\SOFTWARE\Microsoft\MSCRMClient\AllowList. Cannot delete a subkey tree because the subkey does not exist."

I come across this error during the installation of Outlook client MSCRM 4.0
If you faced the same problem as me, most probably is you have install outlook client beta 2010 before.

Make sure the Beta 2010 outlook client was uninstalled,
uninstall version 4 outlook client; if any
Manually delete the folder Program Files\MSCRM
Reinstall the CRM 4 outlook client again.

This time it should work like charm :)

02 November 2010

The RSA key container could not be opened

Failed to decrypt using provider 'RsaProtectedConfigurationProvider'. Error message from the provider: The RSA key container could not be opened.

You hit the error when using encrypted web configuration section such as the connection string.
You can fix this with one of the following method:
1. I'm using Windows Server 2008
2. Open IIS
3. Navigate to the web site that is causing the problem
4. Under Security within the Home section of the web site, click Authentication
6. Disable ASP.NET impersonation

aspnet_regiis -pa "NetFrameworkConfigurationKey" "ASPNET"
aspnet_regiis -pa "NetFrameworkConfigurationKey" "NETWORK SERVICE"
aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT AUTHORITY\NETWORK SERVICE"
aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT AUTHORITY\SYSTEM"

18 October 2010

No organization was specified in the configuration file

Recently, one of the client reported that the outlook client configuration wizard prompt them this error message during the CRM 4 outlook client setup.
It seems like too general for system admin to figure out the issue behind.
Besically it is caused by the particular user was not add to CRM system, thats why setup wizard can't populate the related organization and its data.
Just add the user to CRM system and grant him related privilege, case close :)
I was thinking of showing access denied is more easy for us to find out the root cause, what do you think...?

13 October 2010

Always focus on solutions, not on problems.

One of the most memorable case studies on Japanese management was the case of the empty soapbox, which happened in one of Japan's biggest cosmetics companies. The company received a complaint that a consumer had bought a soapbox that was empty. Immediately the authorities isolated the problem to the assembly line, which transported all the packaged boxes of soap to the delivery department. For some reason, one soapbox went through the assembly line empty.

Management asked its engineers to solve the problem. Post-haste, the engineers worked hard to devise an X-ray machine with high-resolution monitors manned by two people to watch all the soapboxes that passed through the line to make sure they were not empty. No doubt, they worked hard and they worked fast but they spent a whoopee amount to do so.

But when a rank-and-file employee in a small company was posed with the same problem, he did not get into complications of X-rays, etc., but instead came out with another solution. He bought a strong industrial electric fan and pointed it at the assembly line. He switched the fan on, and as each soapbox passed the fan, it simply blew the empty boxes out of the line.

Lesson learned: Always look for simple solutions,devise the simplest possible solution that solves the problems. Agree?

26 September 2010

CRM 4.0 Update Rollup 13

Latest CRM 4.0 rollup 13 released on 23/Sep/2010.
Rollup 13 can be uninstall on server
Rollup 13 is cumulative.
Rollup 1,2,3,4,5,6,7,8,9,10,11,12 are not prerequisites for server portion.
Update Rollup 7 is a prerequisite for Microsoft Dynamics CRM for Microsoft Office Outlook and Microsoft Dynamics CRM Data Migration Manager.

KB: KB2267499

23 September 2010

Configuration registry key is invalid

I get error message from one of the server "The Configuration Registry key is invalid"
Google around looks like the server's performance counter in the registry, which has been corrupted and needs to be restored.

To resolve this, rebuild the performance counter library by using the follow command:

C:\WINDOWS\system32> lodctr /R

10 September 2010

CRM 2011 Beta Released!

You can get download from HERE  install and try it. Product Key can be found under Read Me file.
  • Support 64bits only
  • Support Window server 2008 & SQL 2008 only. (detail inside implementation guide)
  • No more "CRM Professional version"

01 September 2010

Error during installation of CRM Outlook Client for Office 2010

Just to share out, if you tried to install CRM4 outlook client for MS Outlook2010, the setup will failed because of office version validation.
To solve this, we need to modify something in regedit.

HKEY Current User\SOFTWARE\Microsoft\MSCRMClient

Create DWord (32 bit) value
Title: IgnoreChecks
Value: 1

13 August 2010

Taking the Covers Off of Microsoft Dynamics CRM2011

You need Silverlight to play this :)Get Microsoft Silverlight

11 August 2010

The path is not of a legal form - Data Migration Manager

I received the error message '"The path is not of a legal form" during installation of Data MigrationManager for CRM 4.0

Reason for this error is one of the key's value is empty, to solve this;
  1. Start>run>regedit
  2. Navigate to [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products]
  3. You will see many folder under it named with GUID. If you can see {59DD8CB00184F24E99A62CF4D6109FA}, then click it and goto InstallProperties
  4. Right click InstallLocation and select Modify
  5. Type in "C:\Program Files\Microosft Dynamics CRM"
  6. If you can't find the above mention GUID, you need to browse those GUID one by one and look DisplayName with value "Microsoft Dynamics CRM Server", then just change the InstallLocation value.
Hope this help :)

31 July 2010

CRM 4.0 Update Rollup 12

Latest CRM 4.0 rollup 12 released on 30/July/2010.
Rollup 12 can be uninstall on server
Rollup 12 is cumulative.
Rollup 1,2,3,4,5,6,7,8,9,10,11 are not prerequisites for server portion.
Update Rollup 7 is a prerequisite for Microsoft Dynamics CRM for Microsoft Office Outlook and Microsoft Dynamics CRM Data Migration Manager.

Special Considerations:
Update Rollup 12 will install the Microsoft Report Viewer 2008 Redistributable Package.
Update Rollup 12 will install the Microsoft Visual C++ 2008 Redistributable Package

KB: KB2028381

30 July 2010

Modify the recurring system jobs' interval in CRM 4

Default CRM4.0 come with 3 system jobs, "Update Contract States","Organization Full text Catalog index", and "SQM Data Collection". If you have duplicate detection rules published, then you will have more than 3 jobs.[Matchcode Update]

Default jobs run every 5 minutes, each time it run will create a record under the AsyncOperationBase table. This definately will make the tbale grow very fast if you have many duplicate detection rules. Simple math will be 12 records per minutes; 720 records per hour; 17280 records per day.

Of course there is service to help you remove old records, but for me the Matchcode Update seems no need to run so frequently if most of the time is use for browsing. For me update hourly or every 30 minutes is fair enough.

Example: run this query in MSCRM DB
<br /> SELECT name,RecurrencePattern FROM dbo.AsyncOperationBase<br /> WHERE RecurrencePattern is not null and name='Accounts' <br /> 

name is the duplicate detection job related entity.

You will see something like "FREQ=MINUTELY;INTERVAL=5;"
In this case i change to 7 minutes by using SQL update statement,
then restart service.

Reference http://msdn.microsoft.com/en-us/library/cc189846.aspx for all valid values.

*Information I post below is an unsupported customization, this might void your CRM warranty. Personnaly I have tried this in both my CRM development environment and is working like charm!

15 July 2010

CRM 2011 beta

Dynamics CRM 2011, the next version of Microsoft's customer relationship management software, will be released to beta in September and officially released by the end of this year, Microsoft announced today.

Microsoft is demoing the upcoming product at the annual Worldwide Partner Conference, which began Sunday and runs through Thursday in Washington, D.C. Along with Dynamics CRM comes its cloud-based counterpart, Dynamics CRM Online.

New to Dynamics CRM 2011 will be the Microsoft CRM Marketplace, where businesses can sell and buy CRM solutions, download them and then deploy them across their Dynamics CRM systems. Such solutions can include sets of configurations and document templates that help companies work with their customers...

Original Source : http://blog.seattlepi.com/microsoft/archives/214088.asp

16 June 2010

SQL divide by zero "isZero" function

Recently come across a requirement on SQL to divide 2 columns and populate in a custom fields. Infact is just something simple like "SELECT column1/column2 AS result"

Issue raised because the "column2" might contains zero or null value, what we need to do is if column 2 is zero replace it with another fix non zero varible.
  • Null issue can be easily solve by using isNull finction, but we don't have 'isZero' function
The solution is to use the nullif function with isnull function;
set column2 to null value if it is zero, outer level if is null replace with variable X.
ISNULL(NULLIF(column2, 0),variableX)

CRM 4.0 Update Rollup 11

Latest CRM 4.0 rollup 10 released on 3/June/2010.
Rollup 11 can be uninstall on server
Rollup 11 is cumulative.
Rollup 1,2,3,4,5,6,7,8,9,10 are not prerequisites for server portion.
Update Rollup 7 is a prerequisite for Microsoft Dynamics CRM for Microsoft Office Outlook and Microsoft Dynamics CRM Data Migration Manager.

Special Considerations:


15 June 2010

CRM 4 Build Number - Version

VersionBuild NumberRelease onLink ID(en)Patch ID(en)
Rollup 14.0.7333.111311/24/2008
Rollup 24.0.7333.1312, 4.0.7333.13161/15/2009, 2/8/2009
Rollup 34.0.7333.14083/12/2009
Rollup 44.0.7333.15515/7/2009150735&clcid=0x409{004A7E60-5DB7-4F05-B7C1-1D2DD653A1A6}
Rollup 54.0.7333.1644, 4.0.7333.16457/2/2009157191&clcid=0x409{592DDF5E-D0D7-46FE-81C3-A3BCAC5E8F22}
Rollup 64.0.7333.17509/27/2009162439&clcid=0x40{7E83D1E5-7B7A-45D1-8930-4FEFB4123B57}
Rollup 74.0.7333.213810/22/2009167830&clcid=0x409{657DF4CA-4167-48C2-937E-1B4940C0F3C9}
Rollup 84.0.7333.254212/17/2009179669&clcid=0x409{7D1C2874-9093-4563-83C6-C2F82C8D82B8}
Rollup 94.0.7333.264402/11/2010181054&clcid=0x409{45859F4D-AC35-4FB3-A474-40492079C74A}
Rollup 104.00.7333.27414/8/2010184388&clcid=0x409{C853A15A-5546-4F07-BF41-FC1C64570AB3}
Rollup 114.0.7333.28616/3/2010192046&clcid=0x409{77F3EBA0-20E8-403E-B43B-E5AC633E139E}
Rollup 124.0.7333.29357/30/2010194246&clcid=0x409 {99DA550E-457E-4339-A520-414AC14AE82C}
Rollup 134.0.7333.30189/23/2010199444&clcid=0x409{414017EA-201F-401D-BD4D-FDB8C2FD5AC8}
Rollup 144.00.7333.313511/18/2010202910&clcid=0x409{3A11783F-F1EF-431C-AB61-0B165502DBF0}
Rollup 154.00.7333.32311/10/2010206903&clcid=0x409{89833E9D-C22F-4EB9-A76F-A84623D67613}
Rollup 164.00.7333.33353/10/2011209024&clcid=0x409 {6EA3A2FA-08DF-40B5-842B-1C6B6EC6B028}
Rollup 174.00.7333.34145/5/2011214427&clcid=0x409 8{87297B34-767B-4E3B-A51B-C89DB849AE82}
Rollup 184.00.7333.35316/30/2011218855&clcid=0x409{E054D596-F999-4BB2-9130-662E11CC26FF}
Rollup 194.00.7333.36288/25/2011224158&clcid=0x409{2DEE4EFD-B1CF-49CA-A37E-DD9BE6C8E2B7}
Rollup 204.00.7333.373211/10/2011227975&clcid=0x409{A4CEC8ED-18B4-4682-9D4D-1BD0C4FC85AC}

11 April 2010

CRM 4.0 Update Rollup 10

Latest CRM 4.0 rollup 10 released on 8/April/2010.
Rollup 10 can be uninstall on server
Rollup 10 is cumulative.
Rollup 1,2,3,4,5,6,7,8,9 are not prerequisites for server portion.
Update Rollup 7 is a prerequisite for Microsoft Dynamics CRM for Microsoft Office Outlook and Microsoft Dynamics CRM Data Migration Manager.

Special Considerations:

  1. 64-bit versions of Office 2010 will not be supported in Microsoft Dynamics CRM 4.0.
  2. With Update Rollup 8 installed, Microsoft CRM E-mail Router Service supports Microsoft Exchange 2010. However, because of an issue with MAPI, the Rule Deployment Wizard does not support Microsoft Exchange 2010. This issue will be addressed in a future update of Microsoft Exchange 2010.


09 April 2010

Stop previous workflow instance.

Recently come across a business scenario where a workflow needs to be run after record being assign to others. The problem is workflow configured as wait after 1 hour, then update a field.

It is possible that during the 1 hour waiting time, user might reassign again~~again, result of that is multiple same workflow actually is running and waiting at the same time...what we want is just the running the latest workflow instance only.

To solve this problem, create a CRM 4 plugin to query related workflow with specific workflow name, check its status then update it to cancelled.

Register as pre-stage; synchronous, so that it won't cancelled the latest workflow instance .

string error = string.Empty;

   ColumnSet colsWf = new ColumnSet(new string[] { "name", "statuscode", "asyncoperationid", "regardingobjectid" });

   ConditionExpression conditionName = new ConditionExpression("name", ConditionOperator.Equal, workflowName);
   ConditionExpression conditionRegardingObjectId = new ConditionExpression("regardingobjectid", ConditionOperator.Equal, recordId);

   FilterExpression filter = new FilterExpression();
   filter.FilterOperator = LogicalOperator.And;

   QueryExpression query = new QueryExpression(EntityName.asyncoperation.ToString());
   query.Criteria = filter;
   query.ColumnSet = colsWf;

   BusinessEntityCollection results = service.RetrieveMultiple(query);
   if (results.BusinessEntities.Count > 0)
    for (int i = 0; i < results.BusinessEntities.Count; i++)
     asyncoperation singleWorkflowInstance = (asyncoperation)results.BusinessEntities[i];
     if (singleWorkflowInstance.statuscode.Value == AsyncOperationStatus.WaitingForResources || singleWorkflowInstance.statuscode.Value == AsyncOperationStatus.Waiting || singleWorkflowInstance.statuscode.Value == AsyncOperationStatus.InProgress || singleWorkflowInstance.statuscode.Value == AsyncOperationStatus.Pausing)
       Status statusCanceled = new Status();
       statusCanceled.Value = AsyncOperationStatus.Canceled;

       AsyncOperationStateInfo state = new AsyncOperationStateInfo();
       state.Value = AsyncOperationState.Completed;

       SetStateWorkflowRequest request = new SetStateWorkflowRequest();
       singleWorkflowInstance.statuscode = statusCanceled;
       singleWorkflowInstance.statecode = state;

       TargetUpdateAsyncOperation operation = new TargetUpdateAsyncOperation();
       operation.AsyncOperation = singleWorkflowInstance;

       UpdateRequest update = new UpdateRequest();
       update.Target = operation;
       UpdateResponse updated = (UpdateResponse)service.Execute(update);
      catch (System.Web.Services.Protocols.SoapException ex)
       error = "KillWorkflow Error " + ex.Message + "" + ex.StackTrace;
      catch (Exception ex)
       error = "KillWorkflow Error " + ex.Message + "" + ex.StackTrace;
    if (!string.IsNullOrEmpty(error))
     throw new Exception(error);

08 April 2010

CRM 4.0 Update Rollup 9

Latest CRM 4.0 rollup 9 released on 11/2/2010.
Rollup 9 can be uninstall on server
Rollup 9 is cumulative.
Rollup 1,2,3,4,5,6,7,8 are not prerequisites for server portion.
Update Rollup 7 is a prerequisite for Microsoft Dynamics CRM for Microsoft Office Outlook and Microsoft Dynamics CRM Data Migration Manager.


29 January 2010

Dataset Designer not working (Visual Studio 2008)

Recently, my development machine's VS 2008 suddenly can't open the designer view for dataset file [xsd].
If you guys facing the same problem with me, you can try to run the command below:-

Open Visual Studio Tools-> Visual Studio 2008 Command Prompt.

  1. devenv/resetskippkgs
  2. devenv /resetsettings 
  3. devenv /setup
For my case, 3rd option solved my problem without uninstall/reinstall.

10 January 2010

CRM 5.0 & Azure

The demo video on the latest CRM 5.0 + Azure

CRM 5 + Windows Azure

Windows Azure

The Azure Services Platform uses a specialized operating system, called Windows Azure, to run its "fabric layer" — a cluster hosted at Microsoft's datacenters that manages computing and storage resources of the computers and provisions the resources (or a subset of them) to applications running on top of Windows Azure. Windows Azure has been described as a "cloud layer" on top of a number of Windows Server systems, which use Windows Server 2008 and a customized version of Hyper-V, known as the Windows Azure Hypervisor to provide virtualization of services.

The platform includes five services Live Services, SQL Services (which is now Microsoft SQL Azure), .NET Services, SharePoint Services and Dynamics CRM Services which the developers can use to build the applications that will run in the cloud. A client library, in managed code, and associated tools are also provided for developing cloud applications in Visual Studio. Scaling and reliability are controlled by the Windows Azure Fabric Controller so the services and environment don't crash if one of the servers crash within the Microsoft datacenter and provides the management of the user's web application like memory resources and load balancing.

The Azure Services Platform can currently run .NET Framework applications compiled for the CLR, while supporting the ASP.NET application framework and associated deployment methods to deploy the applications onto the cloud platform. Two SDKs have been made available for interoperability with the Azure Services Platform: The Java SDK for .NET Services and the Ruby SDK for .NET Services. These enable Java and Ruby developers to integrate with .NET Services.

References: http://en.wikipedia.org/wiki/Windows_azure