dynamics-crmdynamics-365dynamics-crm-365dynamics-crm-uci

D365 Open a different Form depending on a field-value in UCI (eg: Contact Type)


In using the new UCI interface with Dynamics 365. Within Contacts, I have two saved views: "Supplier Contacts" and "Client Contacts". This hinges on a "Contact Type" of either (you guessed it) Supplier or Client.

Each has a distinct way in which I want to view the form - there are some relationsips shown in subgrids and fields that apply uniquely to the respective Contact Type. Therefore, I want to show two different forms depending on the Contact Type.

Is this possible firstly without Javascript? If Javascript is required, how do I make sure it loads and flicks to the correct form type without flickering and being too much of an annoyance to the user?


Solution

  • Not possible without JavaScript.

    Multiple forms & form switcher are for showing different form to different user base, it’s security role driven. Last visited form will be remembered & rendered if user has access to multiple forms.

    We can do form scripting to switch it based on need. If the form layout is complex like too many subgrids/section/controls to show/hide then form switcher is the way. UX is bad I agree, you cannot circumvent this. There is no form init or preload kinda events in Dynamics CRM Product.

    If the form layout is simple to handle by grouping controls in sections in turn in a tab then show/hide the entire tab based on field value. This is better option. But maintenance nightmare may result.