After upgrade when you load new form you get the below onLoad script error,
unable to get value of the property “setVisible” : object is null or undefined
Solution:
Finding the solution is the issue here. Once you know the fix it is pretty easy. In the information section will provide more details about how I found the solution.
To fix this issue you have to go to,
Settings > Administration > System Settings > General (First tab) > Use legacy form rendering – set this feature to “No” and click “Ok”.
Now when you go back to the form you will not see the onLoad script error.
Information:
CRM form for which I was getting this error was for Quick Campaign. This form has a system OOB onLoad script to dynamically change the form fields based on entity the campaign is related to. Now each time when the form loads it will look for the related entity and get attribute field value using CRM method call. The problem is these method call for new turbo form won’t work for a form rendered in legacy engine. So the onLoad script won’t be able to set the parameter and the value will be null.
To find the issue I had to use browser developer tool and code step in and do a reverse engineer the whole script since we do not have all access to CRM source code. Finally I found the onLoad script for quick campaign and understood the code path to finally understand how turbo forms are initializing the attribute control variable.