SugarCRM SupportHelp ArticlesConnectors and IntegrationsUsing Hint With Your Sugar Customizations

Using Hint With Your Sugar Customizations


Installing, upgrading, and uninstalling Hint on your Sugar instance removes or modifies certain layout and JavaScript files. If you have customized these files or installed packages which customize them, you will need to take additional steps when installing, upgrading, or uninstalling Hint on your instance. This article covers how to ensure your code-level customizations remain active in these situations.

Note: This article applies to on-site customers; Hint package installation and upgrade is handled by SugarCRM for cloud customers. For information on installing, upgrading, and uninstalling Hint for on-site instances, refer to the Hint Installation and Administration Guide.

Upgrading and Uninstalling Hint on Sugar 8.0.x and Lower

Upgrading Hint on Sugar 8.0.x and lower requires the previous Hint package to be uninstalled before the new package can be installed, as described in the Hint Installation and Administration Guide. In Sugar 8.1.0, Module Loader's package uninstaller was updated to ensure all traces of packages are properly removed when the package is uninstalled, even after the package has been upgraded multiple times. Uninstalling Hint on Sugar versions prior to this improvement (i.e. 8.0.x and lower) will remove some Sugar files in an attempt to fully remove the Hint changes. If these same layout and JavaScript files contain customizations made outside of Hint, those changes will be lost when the uninstall of Hint removes the files. As a workaround, it is recommended to back up these files prior to uninstalling Hint, complete the uninstall, then restore the files.

Use the following steps to protect your customizations when uninstalling the Hint package:

  1. Back up any files from the following list which contain non-Hint customizations:
    • custom/modules/Accounts/clients/base/layouts/preview/preview.js
    • custom/modules/Accounts/clients/base/views/create/create.js
    • custom/modules/Cases/clients/base/layouts/preview/preview.js
    • custom/modules/Contacts/clients/base/layouts/preview/preview.js
    • custom/modules/Contacts/clients/base/views/create/create.js
    • custom/modules/Leads/clients/base/layouts/preview/preview.js
    • custom/modules/Leads/clients/base/views/create/create.js
    • custom/modules/Opportunities/clients/base/layouts/preview/preview.js
    • custom/modules/ProspectLists/clients/base/layouts/preview/preview.js
  2. The following files will also be deleted by the Hint uninstall process. However, these files are automatically generated by Sugar and will be regenerated after their removal. If you have customized these files without customizing their sources, you may also wish to back them up:
    • custom/modules/Accounts/Ext/clients/base/views/record/record.ext.php
    • custom/modules/Accounts/Ext/Vardefs/vardefs.ext.php
    • custom/modules/Contacts/Ext/clients/base/views/record/record.ext.php
    • custom/modules/Contacts/Ext/Vardefs/vardefs.ext.php
    • custom/modules/Leads/Ext/clients/base/views/record/record.ext.php
    • custom/modules/Leads/Ext/Vardefs/vardefs.ext.php
  3. Uninstall the Hint package from Module Loader.
  4. Restore the backed up files to their respective directories.
  5. If you are upgrading Hint to a newer release, follow the instructions in the Installing Hint section.

Installing Hint

When it is installed, the Hint package merges changes to the following files. If you have other customizations in these files, it is recommended to back them up prior to installing the Hint package.

Use the following steps to protect your customizations when installing the Hint package:

  1. Back up any of the following files which contain non-Hint customizations:
    • custom/modules/Accounts/clients/base/layouts/create/create.php
    • custom/modules/Contacts/clients/base/fields/fullname/fullname.js
    • custom/modules/Contacts/clients/base/fields/email/email.js
    • custom/modules/Contacts/clients/base/layouts/create/create.php
    • custom/modules/Leads/clients/base/fields/fullname/fullname.js
    • custom/modules/Leads/clients/base/fields/email/email.js
    • custom/modules/Leads/clients/base/layouts/create/create.php
  2. Install the Hint package via Module Loader.
  3. Verify that your customizations still appear in the affected files and function as expected in the instance. If not, you may need to manually merge your customizations from your backup files to the ones in the instance.

Last modified: 2019-04-18 17:03:23