Friday, July 20, 2012

Logic Hooks: Odds and Ends

On occasion I run into a logic hook use case that ultimately exposes a limitation of the framework, or generates peculiar challenges during its implementation. Lets review some of these items in hopes they may help you avoid frustration and save you some time.

before_save vs. after_save

It is not uncommon to stumble upon references to either of these terms as one reads about logic hooks. They refer to the timing of the execution of your logic hook code. A before_save hook triggers your code before the record a SugarCRM user is interacting with is physically written to the database, and an after_save hook triggers it after the data has been written to the database. 

While those conditions are easy to understand, the same cannot be said for the technical subtleties each carry. It is important to understand these subtleties because some may require one to change from using before_save instead of after_save or vice-versa. More importantly, being aware of these subtleties helps us reduce the amount of time that would otherwise be wasted on troubleshooting the problems the subtleties bring about.

Thursday, July 5, 2012

SugarCRM Video Tutorial: Installing on TMDHosting

One of the more common problems that I notice among would be users of SugarCRM relates to difficulties installing the application. Ironically, some of the confusion surrounding the process is a result of a strength in SugarCRM -- its openness, not necessarily complexity in the process itself.

By openness, I am referring to its ability to be installed on just about every imaginable server environment. To give you a sampling, SugarCRM can be used in conjuction with Windows, Linux, FreeBSD, OS X, Solaris; on dedicated servers, shared hosting accounts, virtual machines (e.g. VMWare, VirtualBox), Virtual Private Servers (VPS), and on and on.

The great thing about this flexibility is that it allows us to make our own infrastructure choices, rather than having them imposed on us. But this is a dual edged sword, as it impossible for the folks at SugarCRM to provide detailed installation instructions for every imaginable server environment.

However, if you happen to be using a shared hosting account from, you are in luck. I have prepared a video that will walk you through the process of installing SugarCRM Community Edition on a TMDHosting shared account.

In the tutorial, we will assume SugarCRM is to be installed such that it can be accessed via a URL/address similar to the following:

You will likely want to change that to something friendlier, such as after you complete the install. That change can be made via the Subdomains tool provided on your TMDHosting account, but the video will not walk you through that process.

For more generic installation instructions, visit at, but do keep in mind that given the number of potential server environments that can be used, it is unrealistic to expect detailed instructions for each one. Regardless, the information provided should be of assistance.