SDK CRM v3.0 (Preliminary) public!

Via Arne Janning I received this link.
You can download the priliminary SDK for MSCRM v3.0 here. There's a lot of interesting information in here.

One of the most interesting images available is:

(dont pay too much attention to the CRM 2005 sign :) )

The orange area's are locations where you can insert own customizations. Here's a detailed list of features which are in line with the integration points as shown in this image:

Add Entity

You can add new entities to the system:
• Define the schema for the new entity.
• Automatically creates the user interface, for example, forms or views, to show the new entities in the application.
• Define relationships to other system or custom entities.
• Define delete behavior for linked entity instances.
• Custom entities are secure according to the security model.
• Option to take new entities offline.
• You can export and import custom entities to another system.
• Special privileges are needed for entity customization to ensure system integrity.

Entity Rename

You can change the name of system entities to better suit your business:
• Any customizable entity can be renamed.

Activity Customization

Activities can be customized to better suit your business:
• Activities are customized entities. You can change the schema, forms & views as needed.
• Each activity type, such as Task or Fax, can be customized independently of the others.
• Create custom activity views that can aggregate the different activity types. For example, you can create a view that show all open activities assigned to a user regardless of activity type.

Client Side SDK

The client side SDK exposes an expanded forms architecture for application customization:
• Support for read-only fields. Protect fields from user update by setting them to read-only.
• Support for IFrames. Embed other Web pages as links within Microsoft CRM forms. Includes programmatic access to the other data attributes on the parent form.
• Enhanced control over form layout. You can specify the field height on forms and there is greater flexibility in tab and section sizing.
• Improved form editor is larger, resizable, preserves formatting, and uses correct escaping.
• Form debugging: Form editor has previews for onLoad and onChange events, and simulates the onSave event.

Features in the Client Side SDK

Form Events
• OnLoad – Executes custom code when the form has loaded.
• OnSave – Executes custom code when the user saves an entity.
Field Events
• OnChange – Executes custom code when the data in a form field has changed and focus is lost.
Form Object Model
• Attributes – FormType, ObjectId, and ObjectTypeCode.
• Methods – IsOutlookClient, Save, and SaveAndClose.
• Able to address a specific field on the form, set, and read its value.
• Referencing field: crmForm.all.{field schema name}.
• Common field properties and methods - DataValue, Disabled, ForceSubmit, and SetFocus.
IFrame on Forms
• Ability to embed other Web pages as links within Microsoft CRM forms HTML Iframe object.
• Tab and Section configurable.
• Ability to set width and scrolling.
• Cross-frame scripting can be restricted.

UI customization features in Web client

Customize the Web client application by adding custom menus and buttons to the ISV.config file:
• XSD compliant schema.
• Application level toolbar.
• Actions for custom entities.
• Support for JavaScript.
• Support for Marketing Automation and Service Management.
• Top-level navigation bar.

UI customization features in Outlook client

Customize the Outlook client by adding custom menus and buttons to the OutlookClient.xml file:
• XSD compliant schema.
• Application-level toolbar.
• Actions for custom entities.
• Support for JavaScript.
• Support for Marketing Automation and Service Management.
• Top level navigation bar.

Import/Export Features

• Improved UI in the Web application.
Export/Import - ISV Setup
• Import is the supported way to modify forms, views, queries, and mappings for your custom add-in.
• Configured customizations are saved to the XML file by export.
• XML file is transportable between systems.
• Import/Export schema is published in the SDK.
• Support for system and custom entities.
• Support for renamed entities.
• Support for client side SDK features.
• Support for custom relationships.
• Support for saved queries (but not user queries).
• Granularity to choose which entities to import, export, or publish.
• Support for templates.
• Support for the ISV.config file for import and export.
• Support for entity mappings.
• Validation of XML prior to the import.
• Import, export, and APIs are exposed in the SDK.

Workflow features

• Workflow rules can call out to .NET assemblies.
• Includes date support for updates and if conditions.
• Triggering of workflow rules from activity events.
• Enhanced date support on wait conditions.
• Partial slug support.
• Unified slug support, similar to application.
• XML configuration file.

Callout enhancements

• Pre-callouts and post-callouts to .NET assemblies.
• Supports backward compatibility with COM based v1.2 design.
• Supports Create, Update, Delete, SetState, Assign, and Merge.
• Supports synchronous post-call outs.
• XML configuration file.

Now tell me, does this open a world of possibilities for the developer?!!


Erik @ CWR Mobility said...

This pictures is explained in details in a presentation from Arash Ghanaie-Sichanie, called Developing Business Solutions with Microsoft Dynamics CRM 3.0.

The complete presentation can be downloaded from the CWR Mobility Documentation section.

Regards, and thanks for keeping us up-to-date about Microsoft CRM.

I have added a link to your blog on my blog.

Ronald Lemmen said...

Hi Erik,

The link you have provided doesn't work. Here's the correct link: