In case you aren’t aware, Silverlight and JavaScript Web Resources support the SOAP service(Organization.svc) of CRM 2011 in addition to the REST service(OrganizationData.svc). For more details, see here.
SOAP service provides additional capabilities that are currently not present in the REST service. Few of these that I personally like are:
- Execute Fetch XML based requests for RetrieveMultiple. Users can create Fetch XMLs using Advanced Find UI.
- Use dynamic entity objects(Entity class).
- Execute messages
To understand which service to use for your requirement, see here. Here is an excerpt from the article:
Task |
Appropriate Web Service |
Create, Retrieve, Update and Delete records. |
REST Endpoint |
Associate and Disassociate records |
REST Endpoint |
Assign Records |
SOAP Endpoint |
Retrieve Metadata |
SOAP Endpoint |
Execute Messages |
SOAP Endpoint |
I’ve created few applications using SOAP endpoint:
BING MAP BROWSER FOR MULTIPLE ENTITIES
This is a Silverlight application that shows multiple entity records on the Bing map. The idea is to show records from any number of entities and provide user some additional capabilities(explained below). Also, the content displayed on the map is configurable.
SOAP endpoint is used in Silverlight control to get the data from CRM. Silverlight Bing map control is used to display records in Silverlight type Web Resource.
You can download the solution from here.
Here are some features of this solution:
- All the settings, starting from entities to be displayed to the fields and filters applicable, are configurable and are defined in XML file (Web Resource).
- Clicking the pushpin shows a display pane that contains links and list of fields of the record clicked. Again, links and fields are configurable.
- You can find nearby records. Click on the map from where you want to find the nearby records. Then fill the distance (in KMs) and click Load. You will get a list of nearby records. To open a record, first click on the row and then right click.
- Contains HTML Web Resource to locate the latitude and longitude on Entity form. You need to provide address fields in the XML file.
Detailed information is available in codeplex.
RELATED RECORDS TREE EXPLORER
The Silverlight tree control can be used to see the related records (up to any level) of the current opened record in CRM form.
The entities and the relationships to display are configurable. Click on the item to open its form.
You can download the solution from here.
Detailed information is available in codeplex.
Cheers,