Problem Statement
I’ve a marketing list created in Dynamics CRM 2015 On-Premise.
This was working as expected up until I made changes to the screen layout of the Marketing List form.
I will come to the exact changes made later, the symptoms of the problem were peculiar to start with.
Prior to the changes made in the form, the marketing list form looked like the snapshot below.
After the changes, more specifically done to the Members section, the LIST ICON was not visible.
Also the ADD ICON (+) responded in an unpredictable manner.
For certain contacts, when I tried to add them directly through the ADD (+) icon, the contacts would not be displayed on the list below, but for certain contacts it would be displayed in the member list.
However, if I went through the marketing list members option from the menu list, I could view all the contacts (including contacts which did not show up in the Members list above) displayed in the Contact Associated View.
As mentioned earlier, this problem started when I made changes to the format in the marketing list form.
Typically, an untouched marketing list form looks like the one below.
And more importantly, the “Formatting” of the “Contacts” looked something like the snapshot below.
NOTICE that the “Two Columns” option is selected but disabled.
After proceeding to make some changes to the “Formatting” of the “Contacts” in the “Members” section
I ended having the following Set Properties.
Since only the first option was enabled, I could not select “Two Columns” from the options given.
I believe this could be the reason why the LIST Icon would not render on the Members Section and also the ADD (+) button behaving erratically.
I did try manipulating the FORM through the UI customisation, but every attempt leads me to an error which said “An error has occurred. Please return to the home page and try again.”
Resolution
Since I had more than one CRM orgs, I had an instance which wasn’t impacted with this problem.
After multiple failed attempts I finally found a solution to this problem.
Step 1. I created an unmanaged solution with only the Marketing List Entity in it. The solutions were created in the affected CRM org and the unaffected CRM org.
Step 2. Export the solution from both these instance, in short, I had two zip files.
Step 3. The customization.xml file from each of these solution needs to extracted and given appropriate names.
Step 4. Using any text file comparison tool (I used notepad ++) find the difference in the XML definition.
Step 5. I Focused on the XML nodes for “members” and Controls for “contacts”, “accounts” and “leads”.
Step 6. What worked for me was replicating the customisation from the unaffected organisation in the customisation.xml of the affected organisation.
Step 7. Save and Create a new zip file (unmanaged solution).
Step 8. Import this new solution in the affected org and publish the same.
Note: While creating the unmanaged solution, I only focussed on the marketing list, I did not import any dependent entities in order to avoid a large customization.xml file.