Dynamics 365 (and CRM before it) “remembers” the most recent form that a user accessed for each entity. If a user has access to more than one form in the Account entity, the next time he or she opens an Account record, they will see the form that they last accessed. The user can switch forms manually, and then the form will default to the new form the next time they open a record.
The challenge is what happens when you introduce a new form, and you have existing users that have already used the old form? Unless you are deprecating the old form, the users will still see the old form, even if you set the new form to a higher priority in the entity form order.
In the words of GI Joe, “Knowing is half the battle,” the first step is to find out which users have the old form as their default form.
If you use Dynamics 365/CRM On Premises, the answer can be found by querying the UserEntityUISettingsBase table. In the following example, we can see who has the main Account form as their last viewed form:
SELECT RecentlyViewedXml, LastViewedFormXml, UserEntityUISettingsId, LookupMRUXml, InsertIntoEmailMRUXml, VersionNumber, OwningBusinessUnit, OwnerId, ObjectTypeCode, ReadingPaneXml, TabOrderXml, MRUXml, ShowInAddressBook, OwnerIdType FROM UserEntityUISettingsBase WHERE (ObjectTypeCode = 1) AND LastViewedFormXml = '<MRUForm><Form Type="Main" Id="8448b78f-8f42-454e-8e2a-f8196b0419af" /> </MRUForm>'
Thanks to Scott Jung for sending us this tip.
Your ID may vary (obviously)
You can even set the new form as the “last used form” using an organization service update request.