Thursday 30 October 2014

IOrganizationService

What is IOrganizationService?

Is the web service that accesses data and metadata for your organization. 

Why do I need a IOrganizationService?

You need IOrganizationService when you want to work with data in our Microsoft Dynamics CRM system. The methods available are:
  • -          Create (Create a record of an entity)
  • -          Retrieve (Retrieve a record of an entity)
  • -          RetrieveMultiple ( Retrieve a collection of records of an entity. This can be used with query expression or fetch XML)
  • -          Update (Update a record of an entity)
  • -          Delete (Delete a record of an entity)
  • -          Associate (Create a link between two records)
  • -          Disassociate (Delete a link between two records)
  • -          Execute (Execute a process. The must common is workflows, imports and detect duplicates)


How can I get IOrganizationService?

To get the organization service you need 3 thing:
  • -          User (username of a valid user on the CRM organization)
  • -          Password (valid password for the user)
  • -          Uri (You can get the organization service Uri in your Dynamics CRM system. Go to Settings à Customizations à Developer Resources.)


How can I use it on code?

Need a reference to the microsoft.xrm.sdk.dll from the SDK

C#
//organization url  
 IServiceManagement<IOrganizationService> orgServiceManagement = ServiceConfigurationFactory.CreateManagement<IOrganizationService>(new Uri(“Uri”));  
 //Put Credentials  
       AuthenticationCredentials authCredentials = new AuthenticationCredentials();  
       authCredentials.ClientCredentials.UserName.UserName = “user”;  
       authCredentials.ClientCredentials.UserName.Password = “password”;  
 AuthenticationCredentials tokenCredentials = orgServiceManagement.Authenticate(authCredentials);  
 //connection to CRM  
 OrganizationServiceProxy Service = new OrganizationServiceProxy(orgServiceManagement, tokenCredentials.SecurityTokenResponse);  
       Service.EnableProxyTypes();  
       IOrganizationService _service = Service;  

No comments:

Post a Comment