In last week's blog post (How to Add Scheduler Tasks in the Manifest) I emphasized the importance of making things as easy as possible on the user. This means reducing what the user needs to do after an install to only what is absolutely necessary. Each additional step is a potential breaking point. Either the step could be missed or done incorrectly. This causes frustration, disappointment, and sometimes unadulterated rage. That then reflects poorly on the add-on, the developer, as well as SugarCRM itself.
No one wants any of that to happen and it is easy to prevent. One common step many add-ons require is to run a Quick Repair and Rebuild. If the user misses that step things can go awry. Fields are missing, modules can't be found, database errors abound, and so on. It's not the fault of the user either. Most off the time it is not obvious that an additional step is required. It could be hidden in the docs or some other obscure place. Other times the user just expects it to work. Why should they care about the quirks of SugarCRM?
They shouldn't and we can make sure of that by utilizing the post_install.php script. Simply dump this file in the /scripts directory inside the installable zip. The Module Installer will automatically pick it up.
This will not execute any generated SQL. If you are adding fields do so in the manifest in the custom_fields array (see also Creating an Installable Package that Creates New Fields). You can use the Ext framework's vardefs section, but it may not be added to the database automatically upon install. If you really, really need to do it the Ext way just set $autoexecute to true in the script above to automatically execute any generated SQL. It should also be altered to run on only your module(s) that are being installed.
Send and track your contracts with RT DocuSign! Enhance your customer management process, by closing deals faster with RT DocuSign. Send your contracts and have them signed by your customers from any browser, or on any mobile device, within minutes.
Maintenance Mode Module
Need to turn off access to SugarCRM temporarily while you upgrade your servers? Doing a big code deploy and want to avoid any issues with users? Simply turn on a Maintenance Mode message which disables logging into SugarCRM.
Define Quotas for your Sales Reps and visualize achievement and forecast.
- Show more addons