As most you already know, the ability has been added in Microsoft Dynamics CRM 2011 Beta Online to run code in the cloud. This is unprecedented in any cloud computing scenario (especially for CRM products) because it means that Microsoft had to build watcher programs to ensure that code uploaded by the user community wasn’t going to kill servers (either via Infinite Loop or Exploitation). Microsoft came up with the Sandbox method to handle just that issue, a playground for your custom code where it is watched closely to ensure it isn’t naughty code and plays well with others.
So, how does someone go about uploading code to his or her shiny new CRM 2011 instance? Glad you asked! Follow these steps and you’ll be on your way to custom development.
- Download the CRM 2011 Beta SDK, and extract it somewhere on your machine
- Navigate to sdk > tools > pluginregistration
- Open the pluginregistration.snl file in Visual Studio 2010
- Build the solution
- Navigate to sdk > tools > pluginregistration > bin > Debug
- Open the PluginRegistration.exe file
- In the “Label” field type “CRM Online”
- In the “Discovery Url” field type “https://dev.crm.dynamics.com”
- In the “User Name” field type your WLId email address. Below is what mine looks like

- Click “Connect”
- When prompted enter your WLId password, and press OK

- Now, all your organizations associated with this Username and Password will display, press “Connect” at the bottom

- Click the “Register” button on the toolbar

- Select “Register New Assembly”

- In the window that follows select the Plug-In code you wish to register
- Once loaded, ensure that the “Sandbox” and “Database” radio buttons are selected. Then press “Register”

- Press OK to the pop-up announcing a successful registration
- Now, you can register steps to the assemblies you just uploaded to the CRM Cloud. Assuming you wrote the Plug-in code, or are following instructions from someone else’s development; these steps and step types will differ between every scenario and Plug-In. For the purposes of this blog, I am using the SamplePlugins.dll from the SDK and will register a step for Pre-Create of Account.
- First, I will choose “Register”, and then “Register New Step”

- The subsequent window should look like the below if you are following along

- Press “Register New Step”

Hi Paul,
As I understood, actually developers can create any solutions/add-ins which will work with CRM Online 2011 in cloud? If yes – only SDK needed for that? Could you please clarify, can developers integrate own UI to CRM Online, work (e.g. indexing) with CRM Online Database, etc.? Or it will be available only for CRM 2011 On-premise?
Thanks in advance for your answers.
Alex.
Alex,
So in order to answer your question you have to understand what an acceptable or “Supported” customization is for Microsoft CRM 2011. Items that are supported customizations include:
JavaScript Changes on Forms
Plugins to modify CRM behavior for supported Messages (create, update, delete, set state, etc.)
Modifying Navigation Items (Sitemap.xml)
Adding Buttons (ISV.config)
Creating Websites / Silverlight items to store/view from CRM
Everything else, is unsupported
.. ie:
Customizing the UI for CRM
Modifying the CRM database directly
Changing any standard CRM aspx/js/css/htc files
Whether you’re talking Microsoft CRM Online (cloud) or CRM On-Premise, an unsupported customization is still UnSupported. This means you won’t be able to upgrade and Microsoft will not help you if you run into trouble (and probably no partners will either).
Be careful about what you want to do that is unsupported. If you want a custom CRM UI look at the CRM 4.0 UII (Supported).
Can you let me know how to debug plugin in CRM 2011 Online? To elaborate I have my code developed on my client machine and I registered the plugin successfully on server. But I am not able to debug the same while I am getting error which leaves me clueless.
Yugesh, I always perform an InvalidPluginExecutionException to throw the results of either variables or errors within my plugin. Use this while performing a try/catch and I’m sure you’ll be able to troubleshoot your code. Also, check this thread for more details:
http://social.microsoft.com/Forums/en-US/crm2011beta/thread/8c580739-ad54-4f41-8193-0501b633e256
Hi Paul,
We are trying to install a call connector application, a CISCO product in our client’s CRM 2011 Online. How should we go about doing this? The software essentially requires an installation in the server
Girish,
The Cisco CUCC is built for CRM 4.0 OnPremise, it requires a connection to 2 items:
1. A server running the CUCC Service (which is connected to your phone system and internal network)
2. The CUCC Service configured to connect to the CRM 4.0 Web Service
That said, it very well *might* be possible to re-configure this for CRM 2011 Online, but the required customizations (to the ISV.Config) will have to be manually re-written as they provide the click to dial functionality. I would first look to find anyone who deployed the CUCC for CRM 4.0 Online/Hosted to see what they did to get around the NTLM logon method (and use LiveID); but my best guess is that no one has and Cisco hasn’t released an update for this.
Should you choose to still try to get CRM 2011 running with Cisco CUCC, I recommend doing an on-premise deployment of CRM 2011
Paul,
Is the Cisco CUCC compatible for CRM 2011? We had use the CUCC against CRM 4.0 on-premise, works well but should run on WinServer 2003, WinServer 2008 not supported.
Thanks
Mario,
Technically there is no CUCC version for CRM 2011 as of yet, and I don’t know if Cisco will be releasing an updated version either. That said, the endpoints for CRM 4.0 still exist in CRM 2011, so there is a possibility that the application will still function. The only things that probably wont work are the URL addressable forms (the pop-ups), since I think they will likely be broken via an upgrade. Other than that, you’d have to upgrade your organization from 4.0 to 2011 because there is not set of customizations for the pop-ups and click-to-dial for 2011, but the upgrade will handle that.
Bottom line, some of it should still work (like click to dial), but other parts might not.
Can i make direct selects with inner joins to database?
or singles selects?
Thanks
Hi Paul,
I need to develop a plug-in to make a call to an external web service. Do you think I can do it through a new custom plug-in sandbox Microsoft Dynamics CRM Online 2011?
Can you include the steps automatically when you register the plugin assembly? We have a plugin but when we register the plugin assembly online the steps are not included and we have about 70 steps to setup manually but I would think they can be included when registering the plugin by including them in the build of the plugin.dll?
Jeremy,
This is actually really simple, in the registration tool, select the plugin you have and choose the “Export Solution” button at the top of the screen. Choose your plugin and all substeps, and export it to the “export.xml” file. Save the xml file in a folder, and stick your plugin dll in the same folder. Go to your new server (or crm online) and instead of clicking “register new dll” click “Import solution”; choose your xml file, and as long as the dll is in the same folder, it will import the plugin and register all steps. Hope that helps.
-Paul
Juan,
This is a pretty broad statement, yes you can select data from CRM, and you can do an inner join (or outer join, or left inner, etc. etc.). This is implying you are running CRM On-Premise, as CRM Online you have no access to the SQL server itself to run a select. If you are running CRM On-Premise, what you *cant* do via SQL is
Insert New Rows
Update any data
Select Into
Delete any rows
Create Stored Proceedures
Create Triggers
Do anything other than Select statements