Customizations in the December 2012 Service Update

With the December 2012 Service Update, we introduced a modern application experience focusing on a clean user experience and great visual appeal.

Highlights:

  • New forms focused on the data that matters
  • Seamless inline edits
  • Integrated business processes to guide end users to get their job done
  • Eliminated popups

This is great, but you might wonder what these forms are for—and how extensible these forms and processes are: the answers may come as a surprise to you if you’re a long time user of Microsoft Dynamics CRM. We’ve intentionally limited extensibility for this first release of this new experience. There’s a lot of reasons why we needed to do this. What’s important to understand now is what you can do with the new experience now, within the constraints we’ve put in place. Don’t worry though, we know the extensibility is needed and we’ll be addressing the key needs here in the next release.

To give you the understanding you need, I’ll explain what can be done with these new forms and I will talk about extensibility for each control individually.

Command Bar

While the ribbon provided a great deal of capability and ability to surface many commands, we found that it introduced more complexity than many of our users needed. With this update, we have gone back to the simpler command bar

In the December 2012 Service Update

  • The command bar has a fixed set of commands for each entity
  • State- and permission-aware: It will not render the command if you don’t have the right permissions and will know to toggle between states(e.g., activate/deactivate)
  • Command bar cannot be extended. All the ribbon extensions that you would have done apply only to the ribbon in the classic mode and will not be honored in the new form.
  • Command bar is not solution-aware.

Header Fields

The fields in the header are displayed differently in the December 2012 Service Update forms.

  • Since these are fields in the form, they are customizable via Form editor
  • The new forms will render 4 fields at the maximum. It takes the first 4 fields in the header and renders them. If you have more than 1 row in the header, you will have to switch to classic mode to view those rows and fields
  • Since these are fields in the form, they are solution-aware

Business Processes

We introduced this new concept called Business Processes that helps guide end users through the most effective way to get things done in the UI. We have defined two business processes out of the box:

  • Sales process – Lead to opportunity close.
  • Service process – Phone to Case resolution

This control is present in the Lead, Opportunity, and Case entities.

This control renders only in the new form and not in the classic mode.

  • You cannot view this control in the form editor
  • The business process is not solution-aware
  • You cannot create a new process; you can edit the one that we ship.

You can configure a process from the form. Select Configure Process in the command bar in the form and the following UI opens:

You can:

  • Add, change, and delete stages
  • Add, change, and delete steps
  • Arrange the steps and stages
  • Learn more

Collaboration Control

We have created a custom control that allows the user to quickly see what has been happening with that particular record. This control renders only in the process form. This is permission-aware and shows tabs based on your permissions. This control has three tabs:

  • Posts( Activity Feeds/Yammer)
  • Activities
  • Notes

Posts

The posts tab is the first tab in this control and it shows both the user posts and the auto-posts associated with this particular record. If the org has signed up for an associated Yammer enterprise account, then this shows user posts from Yammer and auto-posts from Activity Feeds.

Activities

The activities tab is the second tab in the collaboration control and it displays the activities associated with this record. You can quickly add a phone call and add a task via this control. With this control, you don’t have to go to the related activities grid just to look at details.

Notes

We have the notes rendered as the third tab in the collaboration control and it displays all the notes attached to the record. You can add a new note, modify or delete and existing note. You can also add attachments to a note – all done inline.

Extensibility

When you view this collaboration control from the Form editor, you will just see the Notes control there. You can add and remove this control from the form editor. When viewed in the classic mode, you will only see the Notes control.

Lookup

We have a new Lookup control which searches inline and allows the user to pick up the record without having to open the Lookup dialog.

The new lookup shows 10 records at the maximum and clicking on “Look Up More Records” opens up the classic Lookup dialog. In the cases entity, the “Find customer” lookup actually pulls up records from both Accounts and Contacts.

Subgrid

The new forms render the sub grid with a lighter look and feel and are optimized for inline editing capability. The add button is integrated with the inline lookup to search or create new records.

  • Inline edit capability for the role column alone
  • If you hover over the item in the subgrid, you will see the Delete button and the record can be deleted inline.
  • Add, modify, and delete are the only commands that are present for this subgrid. You cannot add more commands.
  • This is a subgrid and hence can be added and removed via the form Editor
  • This rendering is very specific to the new forms and all subgrids will be rendered in this mode in the new forms.

Inline Edit Controls

This is the new rendering of controls in the new form. It is optimized for consumption and prevents accidental edits. You have to select the control to make it active.

Since these are just fields in the form, they can be viewed via the form editor and are solution-aware. The fields that you add via the form editor will render the old way in the classic mode and will render as inline edit in the new form.

New Form Controls

We’ve introduced some new form controls that  let you view a few points of data really quickly for a record, and quickly create a record without loading up the entire form.

Customer Details

Once you pick the customer in the case form, you will notice that it now pulls in information about this customer on the right side of the form.

Inline Create

When a customer calls in for a service request, the Customer Service representative can search for cases using the new lookup, and can now quickly create a case.

This form is neither extensible nor customizable. Although it is a form, it is not exposed anywhere for customers to extend it.

Bing Map Control

We have built a custom Bing Map control to render maps right in the process flow. This control shows up in the new Account, Contact and Lead records, in both new forms and classic forms. In both renderings we will show a link that you can click and jump to Bing Maps.

This control is bound to Address1 and cannot be changed. You cannot remove this control from the form editor, as it will be locked. You can control this with the org-level setting to show or not show this control in forms.

Form Events

Form events are not supported in Process forms. If you have an OnLoad or Onchange or OnSave event, we detect that on form load time and load the classic mode automatically.

Client SDK

The new forms don’t have the entire client SDK loaded but we have exposed a subset of the client SDK in the new forms. The highlighted in green are the objects that are exposed in the new forms.

If you have a strong need for using Javascript to accomplish your business, you can still do so, however, you’ll find that the forms will render in classic mode if you are triggering on the form events.

See Access to the Xrm.Page Object Model for Updated Forms for more information.

Web Resources

The new forms now can render all form-enabled web resources ( HTML, Silverlight, image) but make sure that if you are using any client-side scripting that it falls within the boundaries that we are exposing. If not, there will be script errors. See Sample: Detect When an Object is Available Using Script in a Web Resource and an Updated Form for more information.

Just to make sure that we don’t render all the web resources automatically by mistake, we have introduced a new setting in the Web Resources properties to control the rendering. If you think your web resources are ready to work on the new forms, just check this checkbox in the Web Resources properties window in the Form editor.

Summary

That should give you a pretty good overview of the new forms and processes; what you can and cannot do with them now. Understanding this and knowing that we’re working to make the new forms as extensible and backward compatible with the capabilities “classic forms” will help you prepare for our future releases as we move the new application fully to the new forms experience.

Thanks

Anusha Shankar