Sunday, December 14, 2014

Dynamics CRM 2013 - Multiple Request

Have you ever wonder how does the multiple "Multiple Request (create/update/delete) Object" is working in the background?

The image below show's the captured "Multiple Request" (1000 request) traffic to update an attribute on top of current CRM context in one invoke of "SaveChanges" method.


Thursday, December 11, 2014

Dynamics CRM 2013 - Activity Custom Field

Issue: 

So there is a requirement for our Dynamics CRM Online instance to house the list of Activities from the previous system.

However, the Activities from the previous system has more fields.

This is when I discovered, custom field to Activity entity is not possible as of this writing.

Solution

Is to create a "custom entity" derive from Activity entity. Using this custom entity, you can introduce new field.

Tuesday, December 9, 2014

Dynamics CRM 2013 - Plugin Registration Timeout

I just encountered a timeout when I tried to register my plugin via Plugin Registration Tool (included in the SDK) and the "Deploy" action in Visual Studio.

Here are the few things I found out in this situation:
  1. The Plugin Registration Tool and Visual Studio Deploy feature timeout is set to 2 minutes. Therefore, if you have a slow internet connection and considerable big dll to register, you might encounter this error.
  2. The dll output of my plugin is almost 4MB. It is huge file when you consider, I only use 4 early bound classes. In my case, all the classes are defined only in one file.
  3. Using Early Bound classes and creating a class in file won't cut it. Why? Because of relationships, basically you have to include "most" of them, in order for you to use the 4 classes (or the few classes you'll need).
There are two solution in this situation.
  1. First, (has more benefit in my opinion), is to stick in using early bound classes, and just find a fast internet connection.
  2. Second (more work/effort), is to take advantage of late bound classes which will eliminate the huge dll size output of your plugin.
I could not wait to go to the office tomorrow.

Update

After going to our office, having a fast internet resolve my issue when trying to register the tool.


Saturday, December 6, 2014

Dynamics CRM 2013 - Re-Opening an Opportunity

We just finished migrating our data to Dynamics CRM Online 2013. One of the requirements was to populate the Opportunity Products.

However, the Opportunity objects are mostly close. That's where I found out, that you cannot re-open and opportunity using the early bound classes. 

The work around is to create an UpdateRequest, use the SetState and execute. Below is the code froma fellow CRM Developer.



Decode URL with confidence

Yesterday, while configuring a Unified Service Desk to automatically display a dashboard, I need to obtain the Dashboard GUID. The fi...