Book Image

Implementing SugarCRM 5.x

Book Image

Implementing SugarCRM 5.x

Overview of this book

SugarCRM is a popular customer relationship management system. It is an ideal way for small-medium business to try out a CRM system without committing large sums of money. Although SugarCRM is carefully designed for ease of use, attaining measurable business gains requires careful planning and research. This book will give you all the information you need to start using this powerful CRM system. It is the definitive guide to implementing SugarCRM. Whether you are wondering exactly what benefits CRM can bring or you have already learned about CRM systems but have yet to implement one or you're working with SugarCRM already, this book will show you how to get maximum benefit from this exciting product. It demonstrates how to install SugarCRM and also how to get the most out of it by customizing it and integrating CRM into your organization as per your needs. Focused on the needs of the enterprise, this book provides a solution-driven approach for both business and IT specialists to get the most from this powerful and popular Open Source application. It begins with a general discussion about CRM. You will then learn the benefits of such systems, and then explore SugarCRM and its unique value. You will then go through the guidelines for installing and making deployment selections that are set out alongside information for identifying, planning, and applying customizations. Training guidelines and ongoing administrative tasks will be discussed as you progress further into the book. A brief overview of SugarCRM 6.0 is provided at the end of the book.
Table of Contents (19 chapters)
Implementing SugarCRM 5.x
Credits
About the Authors
About the Reviewer
Preface

Recurring administration duties


This section describes those administrative duties that need to be performed on a regular or ad hoc basis throughout the life of your SugarCRM Community Edition installation.

User management

New users will need to be created and existing users may need to be marked temporarily as Inactive if they take prolonged breaks, such as a maternity leave. You can see how to add a new user earlier in this section.

To mark a user as Inactive, go to the Admin main screen, select User Management. choose the user you wish to mark as Inactive, and click on the Edit button. Set the Status field to Inactive and then click on Save.

As mentioned previously, users may not be removed. Typically, the best solution is to mark a user as "Inactive" for a period of time (say six months) and then rename the user.

Resetting passwords

If you need to reset a user's password, go to the Admin main screen, select User Management, and then select the corresponding user. On their detail view screen, click on Edit, and then define the new password. Proceed to click on Save when finished.

You will then need to e-mail or telephone the user to inform them of their new temporary password. It is also helpful to provide them with instructions on changing their password once logged into SugarCRM.

Alternatively, you may choose to turn on the Enable Forgot Password feature in the Password Management panel. Doing so would allow users to reset their password without needing to bother the administrator with the task.

General maintenance

There are six topics that fall under general maintenance of the SugarCRM system. They are as follows:

  • Updating currency rates

  • Maintaining security roles

  • Checking for and installing software updates

  • System backups

  • Data backups

  • Monitoring

Some of these topics, such as the maintenance of currency rates and roles are explained sufficiently in the preceding section of this chapter , Administration duties at system installation time. However, let us explore the others.

Checking for updates to SugarCRM

You can check for updates automatically by using the SugarCRM administrative function, Sugar Updates, and then clicking on Check Now as shown in the following screenshot:

You can set the system to automatically check for updates, or you can do it manually. If you do it manually, the system will perform the update check, and will display the name of the most recent update just below the Check Now button.

You may also visit http://www.sugarcrm.com/crm/download/sugar-suite.html to check for software updates.

Either way, automatically or manually, if you find any updates for the SugarCRM software, you can download those upgrades or patch files and then use the Upgrade Wizard to install it. Further information on using the Upgrade Wizard is available later in this chapter.

System backups

There is no excuse for not having a solid backup routine in place. The value of your customer data contained within your SugarCRM system far outweighs the costs involved in implementing and maintaining a backup process.

To properly back up a SugarCRM installation, you must back up the SugarCRM system folder and SugarCRM database. The two should be considered inseparable, and also require different techniques. This section discusses the process for backing up the system folder only. The section that follows touches on the related topic of backing up the SugarCRM database.

Backing up the SugarCRM system folder, the folder containing the files composing your installation of SugarCRM (including customizations you may have installed into the software), is a fairly simple task. You can use the Backups function within administration screen to perform this backup.

To create a backup, enter the name of the folder in which the backup is to be stored and the filename for the backup file (in ZIP format) to be generated. It is recommended that you check the amount of available disk space in advance or the backup may fail. Note that the backup process will include e-mail attachments and other linked files, including those associated with documents and notes entries. If you make heavy use of these features, the size of your backup files will grow rapidly. Again, this backup process does not include the SugarCRM database and that must be backed up through different techniques, discussed in the section that immediately follows.

To restore the system software from the ZIP format file that was produced, a manual re-installation process must be performed, using this ZIP file instead of the distribution file you originally used. Much like the backup process that generated the ZIP file, restoring your SugarCRM installation through this ZIP file would not restore your SugarCRM database. The following screenshot displays a system backup screen:

Data backups

As mentioned in the preceding section of this chapter, there is no excuse for not having a backup of your database, especially given its volatility. It is strongly recommended that you also keep a copy of your backup media in a safe, offsite location, such as a bank deposit box. This will help safeguard against natural disasters, theft or other emergencies that might occur at the site where your original backups and/or server are located. At minimum, a backup of the database should be performed on a daily basis, and you should keep at least 2 weeks worth of backups in a rotation of backup sets. If you make heavy use of your SugarCRM system, you should also consider making incremental backups throughout the day.

To backup your system data from the MySQL server, use a MySQL administration tool, such as phpMyAdmin or SQLyog. Both provide access to all database administration functions, including the ability to create database backups. Alternatively, if you have shell access, you can simply perform a command-line dump in MySQL. To learn more about phpMyAdmin or SQLyog please visit the following websites:

Checking available storage

Other than completely losing the data on a hard drive, few things are quite as bad as having the drive run out of free space. You can check for free disk space on a Linux server by using the df h command in a shell, while logged in as root.

You can check for free space on a Windows server by simply right-clicking on the hard drive used for data storage within My Computer. This will display a dialog box like the following:

As long as there is at least 5 GB of free space on the hard drive, there is not that much to worry about. Anything equal or less is a cause for concern and should be considered the appropriate time to add a new hard drive, replace the existing one(s), or replace the server. Going through system e-mail (and attachments) and the document repository may also be a good idea, as that is where the bulk of disk space is used. For reference, those files are stored in the cache/upload folder within the SugarCRM folder structure.

Deletions can be a bit tricky to handle as you should delete the record within the SugarCRM interface and then the related file should be deleted through the file system (for example, Windows Explorer, and so on). You can identify the related file by matching the name of the files in the cache/upload folder to the ID value of the deleted record in the SugarCRM database.

Using the Upgrade Wizard

The Upgrade Wizard is used to upgrade your system software from one revision to the next and is also accessed from the administration screen. It is a sophisticated piece of software that also executes SQL scripts that upgrade your database structure to apply changes needed for the revision being installed. The Upgrade Wizard screen is shown in the following screenshot:

The Upgrade Wizard also provides a quick way to upload and install patches to existing versions.

Before installing, you should heed the warning in the Upgrade Wizard that recommends performing the upgrade on cloned instance. If you do not have a backup of the system and the database in its current state prior to attempting to upgrade, reverting to the older version from a failed upgrade may prove to be a difficult and time consuming challenge.

To install an update or patch, click on Next and then carry out the following steps:

  • Make a note of any system issues the Upgrade Wizard highlights. You will need to correct them before you can proceed. Click on Next to continue once the environment is deemed acceptable.

  • Browse to select the ZIP file for the upgrade and click on Upload. Uploading the file queues the upgrade files for installation. Next, whenever you like, you can click on Install to install the upgrade files.

  • Proceed through the wizard and click on Commit to complete the installation.

  • The Upgrade Wizard automatically unzips and installs the files. A history of all upgrades that have been queued and installed are displayed in a list on the Upgrade Wizard screen.

Note that you typically cannot uninstall upgrades, patches, or updates. The latter are smaller scale software updates that SugarCRM will regularly release and are primarily aimed at correcting issues that have been identified within the software.

In addition to making sure you perform your upgrade on a cloned instance and have a backup of your system, the second most important piece of advice to ensure success is to check your system requirements.

Many users encounter problems when attempting to upgrade installations of SugarCRM because they assume the version of SugarCRM they are currently using and the version to which they wish to upgrade, both have matching system requirements. Often that is not the case and this causes problems.

For example, Version 4.5.1 of SugarCRM supported Version 4.x of PHP, while Version 5.5 of SugarCRM did not. Attempting to upgrade without first upgrading PHP would result in numerous problems at the time of installation and afterwards.

Using the module loader

The module loader is a remarkably innovative feature that enables independent third-party software modules to be developed for the SugarCRM application framework, and then dynamically installed or uninstalled.

The module loader defines a standard packaging for a third-party module—a ZIP file that includes a manifest file. Some of the information that the manifest file contains includes the following:

  • Acceptable_sugar_versions: The supported version(s) of SugarCRM that must be present to load this module.

  • Acceptable_sugar_flavors: The supported editions of SugarCRM (Community, Professional, Enterprise). Currently Sugar supports Open Source, Professional, and Enterprise flavors.

  • Name: The user-readable name for the module. This name will be displayed in the SugarCRM admin interface while loading and installing the module.

  • Description: The description of the module that is displayed in the Sugar admin interface.

  • Author: The name of the person or company that authored the module.

  • Published Date: The date the module was published or last revised.

  • Version: The version of the module.

  • Type: The type of package that is contained in the ZIP file.

  • Icon: The relative path and name of the icon file in the ZIP file that the module loader should use to display in the SugarCRM Admin interface for this module.

  • Copy_files: An array of file copy instructions that specify the From& To source and destination for folders and files. The installation process simply walks through this tree, moving the files as specified. Folders are copied recursively.

To use the module loader, simply select that option from the Admin main screen and the following screen will appear:

The module loader screen is split into two panes. The upper half of the screen lists all the modules that are currently installed, while the bottom half lists those that have been uploaded, but not yet installed.

Assuming that you have already downloaded a ZIP file of a module that you wish to install, click on the Choose File button to browse for the ZIP file and then click on Upload. The module will then be queued for installation.

Once this step is complete, you may then click on Install to install the software, or Delete Package to remove the queued software. If you choose to install, you will be prompted to agree to a license and then commit the installation. The amount of time required to install a module will vary depending on the module being installed, but a progress bar will keep you abreast of the progress.

To uninstall a module, click on the Uninstall button next to its name on the upper half of the screen where the list of installed modules appear. You will then need to confirm your action before the module is actually uninstalled.