Cant open a single custom module, what on earth happened???
[26-Nov-2015 07:39:01 Europe/London] PHP Fatal error: Call to undefined method clt_client_profile_sugar::clt_client_profile_sugar() in /home/rjonline/public_html/crm/modules/clt_client_profile/clt_client_profile.php on line 44
[26-Nov-2015 07:39:04 Europe/London] PHP Fatal error: Call to undefined method clt_client_header_sugar::clt_client_header_sugar() in /home/rjonline/public_html/crm/modules/clt_client_header/clt_client_header.php on line 44
[26-Nov-2015 07:40:02 Europe/London] PHP Fatal error: Call to undefined method clt_client_profile_sugar::clt_client_profile_sugar() in /home/rjonline/public_html/crm/modules/clt_client_profile/clt_client_profile.php on line 44
Line 44 on all of them is like:
function clt_client_header(){
parent::clt_client_header_sugar();
}
and the class this refers to is “class clt_client_header_sugar extends Basic {”
Hi - I have experienced EXACTLY the same issue after upgrade to 7.4.3. On ‘deploying’ a field change within a custom module, these errors started occurring, and I can no longer view Account records, and the Admin area returns a blank page, so I am pretty stuffed.
Unfortunately I ended up rolling everything back as I still couldnt get it working. SuiteCRM support and response on this (and indeed a number of other points) is totally abysmal. It would appear that people posting follow-ups on suitecrm is just as poor as it was with sugarcrm, if not worse.
I tested this upgrading from 7.1.4 to 7.3.2 then to 7.4.3 and it worked as expected, with no issues in regards to either the Admin Panel or Custom Modules.
However, some issues after upgrading may be related to permissions.
If you set permissions on your instance again to appropriate values, using the commands:
I have temporarily resolved by rolling back. I had previously upgrades from 7.2.2 (which worked fine) via the 7.3.2 upgrade patch and then the 7.4.3 upgrade patch. I do not know which of these broke custom modules.
I spent quite a bit of time seeing if I could work though the issues. Firstly commented out all the parent::[CUSTOM_MODULE_NAME]_sugar(); calls I could find. But then other parts of the commit would fail - fatal errors in the php_errors.log file including from:
/var/www/sugarcrm/modules/ModuleBuilder/parsers/relationships/UndeployedRelationships.php (seemed to be to do with undefined $db class variable, and also functions being called with incorrect parameters), and
/var/www/sugarcrm/modules/ModuleBuilder/MB/MBModule.php
I have always run a script to chown -R and chmod -R the entire sugarcrm directory before, during and after the upgrades, having been bitten by this in the past, so I don’t think permissions were the issue.
At that point I gave up and rolled back to 7.2.2.
Any insight you can provide would be gratefully received.
Digging a little into the code, I found that the solution is very simple (at least in my case). It seems that the new versions of SuiteCRM moved to the new style of PHP constructors but forgot one; The call in .php to parent::<module.name>_sugar() needs to be replaced by the call to parent::__construct(). Basically, don’t deploy from the module builder but rather publish the module, change that call and then install. It works like a charm.
Thanks all,
I have the same issue with the version upgrade made by Godaddy without doing the upgrade path.
I noticed the issue is specific to retrieving the list of records in each modules. In my case these are not custom modules but the vanilla ones.
I will try Yedidim approach and let you know.