Thursday 28 November 2013

How to get the Contact Guids from a PartyList in a Plugin?

EntityCollection Recipients;
Entity entity = (Entity) context.InputParameters["Target"];

IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);
Content = entity.GetAttributeValue<String>("subject");
Recipients = entity.GetAttributeValue<EntityCollection>("to");
for (int i = 0; i < Recipients.Entities.Count; i++)
        {
            ActivityParty ap = Recipients[i].ToEntity<ActivityParty>();
            string contactid = ap.PartyId.Id.ToString(); 
            Contact c = (Contact) service.Retrieve(Contact.EntityLogicalName,ap.PartyId.Id,new ColumnSet(new string[]{"mobilephone"}));
            string mobilephone = c.MobilePhone;
              //Do something with the mobile phone nr

}

Friday 11 October 2013

DYNAMICS CRM IN 2014


Looking ahead to 2014 with the next release due in Q1 (codenamed Mira), Microsoft have indicated their CRM roadmap includes:
• Marketing Pilot Integration – to connect mid-market and enterprise level marketing automation with CRM including multi-channel campains
• Netbreeze Integration – connecting social listening and monitoring with CRM to analysis social sentiment among customers
• Enhancements to Microsoft Lync & Skype integration
• Case management and service level agreement enhancements
• Extended mobile device support

MSCRM 2013 Heighlights


  • Redesigned User Experience: Cleaner, faster, more intuitive interfaces with no pop ups or flipping from one application to the next.
  • Process Agility: Agile process guidance so you can respond to rapidly changing business needs.
  • CRM on the Go: New Windows 8 and iPad mobile applications that make your sales team smarter no matter where they are by delivering a seamless experience across the web and devices.
  • Social in Context: Work across boundaries to create the right customer experiences with the enterprise power of Yammer.
  • Base and Extension Tables - If you have been working with CRM in the past you are probably aware of the table splitting for each entity within CRM. With CRM 2013, the extension tables will be merged during the upgrade.
  • Server-side Synchronization - This new feature within CRM 2013 will allow administrators to easily manage the sync of email, appointments, tasks and contacts between versions of CRM and Exchange.
  • Access Teams - With the new feature of record-based Access Teams, you can add a user to the record and give them access.

MSCRM 2013 Image Data Types SDk


  • You can access images via a URL. The URL of the image is a read only value available via the SDK off of the Image as an absolute address. Image URLs behave in a similar fashion to Web Resources and Attachments. The primary difference is that images are returned as binary data and Web Resources and Attachments are returned as base-64 encoded MIME types.
  • ImageAttributeMetadata is being added to the MetadataService class. This class inherits from AttributeMetadata and represents the metadata for an attribute of type Image

  • Images can be returned as part of FetchXML queries or RetrieveMultiple calls. There will be an option to return binary data, URL, or both.
  • Binary data must be requested explicitly. A query that specifies “All” fields would only return the image URL. This accounts for the scenario where a user inadvertently queries all fields on an entity with a large number of images.
  • Microsoft Dynamics CRM for Outlook does not have direct support for images in CRM 2013 so images will not be synced. Image fields would be ignored in query results and offline view filters.


MSCRM 2013 Image Data type Storage


  • On upload via the web application or SDK, images are validated, resized, and stored as a common binary data format in the CRM database.
  • Regardless of upload format, all images are all formatted to JPG on create or update. On average, this puts most images at about 5k at max.
  •  The uploaded image is always resized to the minimum size necessary to support CRM 2013 and a smaller sized copy with the same aspect ratio as the original gets stored to the database.
  • The bounding box in CRM 2013 is hardcoded for all image fields: 144pixels x 144pixels. This value will be stored in attribute metadata as Height and Width