Monthly Archives: June 2015

Using Alternate key to update entity record- Microsoft Dynamics CRM 2015 Update 1

If you have worked on integrating CRM with another system like ERP, you might have maintain different keys for your ERP records for the synchronization purpose. But now you do need to that any more !! Microsoft Dynamics CRM 2015 Update 1 introduced new feature which allows us to assign alternate unique keys to entity which can help us to update entity record, this is specially useful for integration because you need to keep both keys from both the system to synchronization of the data between two systems. This key can help you to create/update data in CRM without querying entity record primary GUID, which means alternate key will act like a primary key. You can add alternate keys by following below steps

  1. Navigate to Settings-> Customizations->Customize the System
  2. Select your entity and expend it, let’s say in our case we want to use Account entity.
  3. Click on Keys->New to setup alternate key for account.
  4. Provide display name for your alternate key, let’s say we want to name it as Integration key
  5. Select source field where want to store this key, so let’s say want to utilize Account Number field, select Account Number and click on Add button.
  6. Save and Close key dialog.

alternamekeys

Now this field will be holding another key field for us that we can use to update this record. So let say first we want to create account record and by setting this key, we can use following code:

//Create Account object with alternate key field and value

Entity account = new Entity(“account”, “accountnumber”, “ERP12345”); 

account[“name”] = “Alternate Key Test”;

service.Create(account);

So our account record is created like below

Capture

Now as this account is created with alternate key, we can simply update this account with the help of alternate key without using accountid field (primary key) like below

Entity accountUpd = new Entity(“account”, “accountnumber”, “ERP12345”);

accountUpd[“name”] = “Alternate Key Demo”;

accountUpd[“websiteurl”] = “www.himbap.com”;

service.Update(accountUpd);

Now our account record is updated:

Capture11

So, we can use alternate keys to update entity records now !!

HIMBAP | Need any help in Microsoft CRM 2015 Development Contact US !!

Leave a comment

Filed under MS CRM 2015, MS CRM 2015 Update 1

Improved update method –Microsoft Dynamics CRM 2015 Update 1

Microsoft Dynamics CRM 2015 Update 1 released some new features that will be very help for developers. In this post we will discuss new improvement in Update method. In earlier version we had different request for the special operations for example AssignRequest for changing owner once record is created, SetStateRequest to change the status of entity record. But now with the release of CRM2015 Update 1 we don’t need to use request (they are deprecated). We can simply apply these operation in the update request only.

For example below is the request to update account record and assign to another user and change status to inactive:

OrganizationService service=GetCrmService();

//Create account object

Entity account=new Entity(“account”);

//set account id

account[“accounted”]=new Guid(“af393105-2a98-407b-9215-6113f19498ad”);

//Assign this record to dev user

account[“ownerid”]=new EntityReference(“systemuser”, new Guid(“af80d7b3-e5e1-4b52-a141-a594f24ee015”);

//set account status to inactive

account[“statecode”]=new OptionSetValue(1);

account[“statuscode”]=new OptionSetValue(2);

//call update method

service.Update(account);

Before: 

Capture1

After:

Capture2

HIMBAP | Need any help in Microsoft CRM 2015 Development Contact US !!

Leave a comment

Filed under MS CRM 2015 Update 1, Uncategorized