cancel
Showing results for 
Search instead for 
Did you mean: 

CRM 2013 Form - +New button behavior

Author Name: Shan McArthur

CRM 2011 had a Save and New button on the ribbon. CRM 2013 has a +New button, but the behavior has changed. Users anticipate that they can quickly enter multiple records by entering the field data and then press the +new button and then continue to enter the next record. This data entry pattern worked well in CRM 2011, but in CRM 2013, the +new button no longer saves the record. It doesn't even display a warning to the user - it just throws out the data and resets the form. The behavior should be changed back to the CRM 2011 behavior to facilitate this data entry pattern. This would also be consistent with the intent of having an auto-save behavior in CRM. As a minimum, if the behavior is not going to be changed, a warning should be displayed to the user that their data is going to be lost if they continue.

Status: Planned

Hi,

In the latest release, below is the behavior and that is an improvement from the behavior mentioned in this issue.:

1. When you try to navigate away from the record by clicking on '+New' when it has been newly created, a warning is shown to the user asking him to save the record.

2. If user updates a record that has been saved and auto-save has been turned on, the record gets saved automatically when the user clicks on '+New'.

3. If user updates a record that has been saved before and auto-save is off, a warning is shown to the user asking him to save the record.

We will look into addressing the concern of having a 'Save and New' button in a future release.

Thanks,

Neerja Rewal

PM, Microsoft

Comments
Level: Powered On

This should be no big deal for the product team to implement, you can do it in a supported way with the JavaScript API using Xrm.Utility and whatnot.

I implemented this in 12 lines of code using simpleXrm.js and will be adding to the core library shortly. Then all you need to do is pack up simpleXrm.js into your project and add a reference to simpleXrm.saveAndNew() in your ribbonDiffXML or more likely use the ribbon workbench to add it. It's open source so you can extract the dependencies if you want to keep it lightweight, probably compresses to 5K or so just for Save and New functionality.

Level: Powered On
/// 
var customRibbonScripts = {
saveAndNew: function () {
simpleXrm.backgroundSave({
callback: function () {
var currentEntityType = simpleXrm.getCurrentEntityName();
simpleXrm.openNewRecord({
entityType: currentEntityType
})
}
})
}
}

// usage: customRibbonScripts.saveAndNew();
// dependencies: simpleXrm.js version 1.8.0 or later
// -or- extract the following functions and add to your library:
// simpleXrm.backgroundSave, simpleXrm.getCurrentEntityName, simpleXrm.openNewRecord, simpleXrm.whatIs
// Some functions may not be committed to public repo yet,
// since I'm currently maintaining this library all by my lonesome.