SageCRM 2020R1 SystemAdminGuide en
SageCRM 2020R1 SystemAdminGuide en
Updated: January 2020
© 2020, The Sage Group plc or its licensors. All rights reserved. Sage, Sage logos, and Sage product and
service names mentioned herein are the trademarks of The Sage Group plc or its licensors. All other
trademarks are the property of their respective owners.
Configuration 57
System settings 58
Configuring logging 58
Configuring database settings 60
Refreshing metadata 63
Configuring system behavior 63
Reviewing locks 67
Configuring web services 68
Configuring Quick Find 70
Configuring Keyword Search 71
Locking the system 73
Configuring license key details 74
Configuring proxy settings 75
Checking system health 76
Setting a custom server name for internal requests 83
Timings 85
Working with Timings 85
Business calendars 85
Service Level Agreements 88
Themes 92
Adding a new theme 92
Users 97
User management 98
Demonstration users 98
Setting up a new user 100
Creating an Info Manager 101
Editing a user 104
Configuring user settings 104
Reassigning records and disabling users 105
Enabling a disabled user 106
Deleting a user 106
User fields 106
Configuring automatic login 123
Enabling automatic login 123
Disabling automatic login 124
User activity 125
Viewing user activity for all users 125
Viewing user activity for an individual user 125
Enabling locked out users to log in 126
Archiving user activity records 126
Running user activity reports 127
Security management 128
Introduction to security management 128
Security profiles 128
Territories 130
Security policies 134
Password policies 136
Team management 140
Creating a new team 140
Assigning a user to a team 140
Setting user access to Team CRM 141
Examples of using teams 141
Deleting a team 142
Team fields 142
Active Directory users 143
Data 153
Deduplication 154
About deduplication 154
Enabling deduplication 154
Customizing deduplication screens 155
Setting up match rules 155
Creating a Company Name Cleanup replace list 156
Creating a Company Name Cleanup remove list 157
Data Upload 158
About Data Upload 158
Before you begin uploading data 161
Required security profile rights 162
Steps to upload data 163
User interface reference 174
Products 187
Setting up a simple Product structure 187
Setting up a complex pricing structure 190
Editing a Product 192
Deleting a Product 193
Working with Opportunity Items 193
Multicurrency support 194
Currency considerations 194
Enabling multicurrency support 194
Changing the base currency 195
Mobile 499
About Sage CRM mobile solutions 500
Setting up Sage CRM mobile apps 501
Prerequisites for using Sage CRM mobile apps 501
Enabling a user for Sage CRM mobile apps 501
Customizing screens for Sage CRM mobile apps 502
Setting up Sage CRM Mobile 503
Prerequisites for Sage CRM Mobile 503
URLs for accessing Sage CRM Mobile 504
Enabling a user for Sage CRM Mobile 504
Mapping a user agent 504
Defining a user agent 505
Creating a new mobile theme 505
Customizing screens for Sage CRM Mobile 506
Customizing a classic dashboard 507
Making entities read-only 508
Setting a default tablet view 508
CTI 510
Getting started with CTI 511
What is CTI? 511
CTI network architecture 511
Sage CRM CTI network integration 512
Sage CRM CTI prerequisites 513
Role of the telephony administrator 513
Installing CTI 515
Running the setup program 515
Troubleshooting 533
System configuration 534
Internet Explorer Clear button 534
Viewing Quick Find logs 535
Restarting the Quick Find service 535
Reinstalling the Quick Find service 535
Changing the Quick Find service port 535
Rebuilding the Quick Find index 536
Using Quick Find with a 64-bit JRE 537
Restarting the CRM Indexer Service 538
Groups 539
Exporting groups 539
Email and documents 540
Email Management 541
Glossary 568
This guide is for Sage CRM System Administrators who are confident end users of Sage CRM. The
navigation instructions in the guide assume that you're using the Contemporary Theme.
This guide refers to Sage CRM but your system might have a different brand name, such as Sage 200 Sales
and Marketing. The system works in the same way regardless of its name. The functionality that's available
to you depends on the modules that you're licensed to use.
Chapter Description
l Installing CTI
l Enabling and configuring CTI
l Converting a text field to a phone number
Sage CRM is a 32-bit application which can run on a 64-bit server. Sage CRM installations comprise of a
Sage CRM server and a database server. As Sage CRM is a web-based solution, each user needs a web
browser and IP connection to the Sage CRM server to access the system.
l IIS
l ISAPI DLL which includes HTML / Page generation objects, session / persistence manager,
customizable business objects, business logic objects, security manager, and database service
objects.
l Apache Tomcat which includes the interactive dashboard, SData manager, Apache POI, Exchange
Server Sync Engine, and E-marketing. You can deploy Exchange Server Sync Engine on a remote
server.
The database server is SQL Server. A file share is also required to store library files, although this is
generally stored on the Sage CRM server.
External services include the email server, Emarketing platform, GCRM enbabled accounting solution
endpoints, and Exchange Server. Data is sent through an optional firewall from the web browser and
external services to the Sage CRM server over HTTP (Internet / Intranet) and from the Sage CRM server as
HTML, Java Script, Dynamic HTML and style sheets.
Sage CRM connects to the database using Microsoft Data Access Components (MDAC). The latest version
of MDAC is installed as part of the Sage CRM setup if it's not already on the system.
The following Sage CRM features require plugins and external applications to be installed on the client
machine.
l The Document Drop functionality is available on IE only and requires the Document Plugin. Users
are prompted to download the plugin when they try to use a document drop feature. Users must be
administrators or power users of their machine to install the plugin, and the web-browser must be
configured to accept plugins. As the system administrator, you can restrict access to Document
Drop in <My Profile> | Administration | E-mail and Documents | Documents & Reports
Configuration.
l Adobe Reader is required to view Sage CRM reports in Adobe PDF format. You can download
Adobe Reader from www.adobe.com.
l Lite Outlook Integration lets users add contacts to Sage CRM from the Outlook client, file single or
multiple Outlook emails to Sage CRM, and attach Sage CRM shared documents to Outlook emails.
Lite Outlook Integration does not synchronize any data between Outlook and Sage CRM. For this
reason, it should be used with Exchange Integration. In order to use Lite Outlook Integration, the
user must download and install a plugin on the Outlook client machine. The plugin works on both 32-
bit and 64-bit machines. It installs the .NET Framework if it's not already on the client. Lite Outlook
Integration is supported for email accounts running on Microsoft Exchange Server MAPI or POP3
and requires a supported version of Outlook. For more information, see the 2020 R1 Hardware and
Software Requirements on the Sage CRM Help Center. Roaming Profiles are supported.
l Classic Outlook Integration synchronizes contacts, appointments, and tasks between Sage CRM
and Microsoft Outlook. In order to use Classic Outlook Integration, the user must download and
install a plugin on the Outlook client machine. The plugin works on both 32-bit machines only. It
installs the .NET Framework if it's not already on the client. Classic Outlook Integration is supported
for email accounts running on Microsoft Exchange Server MAPI or POP3 and requires a supported
version of Outlook. Roaming Profiles are not supported.
l Data upload and mail merge require Microsoft Office applications. Data upload accepts *.XLSX files
created by Microsoft Office Excel 2007 or later, and *.CSV files. Users can save mail merge
templates created in Microsoft Word as *.DOCX, *.HTM, and *.HTML files. Microsoft Word 2007 or
later, or another program that can open *.DOCX files must be installed to view merged documents.
l Charts generated by Sage CRM are displayed using HTML5.
You must set up the Sage CRM server and database server before you install Sage CRM. You can run
Sage CRM in a virtual environment. Configuration, setup, and performance of the virtual environment are
the responsibility of your IT department.
You must ensure IIS is installed as a Server Role on the Sage CRM server and that ASP, ISAPI Extensions,
and ISAPI Filters are selected. You can import an HTTPS server certificate into IIS to encrypt sessions
between the server and a user.
Database servers
l Firewall. Install a firewall if users will access the system remotely. This protects your network from
the Internet, ensures only authorized traffic accesses your CRM database, and protects your server
from unauthorized users. You can configure rules to restrict traffic and allow traffic originating from a
specific source only to protect your server from Internet attacks. You can also install a Firewall in
your remote sites and set up Virtual Private Networks (VPNs) to increase data security. Set mobile
users as mobile firewall users so they can access the VPN and transmit and receive data securely.
Configure the Windows Firewall.
l Application security. Assign different levels of access security to users depending on their job role.
Enforce mandatory alphanumeric passwords of six characters or more for each Sage CRM user.
Use HTTPS protocol to protect data from unauthorized access. When IIS uses HTTPS, CRM is
aware of this and when the client attaches any documents to a form in CRM, it sends it through the
encrypted session.
l Software. Regularly install software updates and slipstream patches to minimize software security
vulnerability. Install recognized anti-virus software. Uninstall unnecessary applications.
l Backups. Perform scheduled and manual backups. Establish a regular procedure for backing up
the Registry and Program files. Repeat the procedure prior to major customization work or
upgrades.
l Server security. Separate the domain controller server from the CRM application and database
servers. In a Windows Server Systems environment, the Domain Controller (DC) serves as a
gatekeeper to the domain resources by storing account information, authenticating users, and
enforcing security policies. The defenses offered by a configured DC are further enhanced by
placing it behind a robust firewall.
l Use NT Challenge/Response to allow access to clients with a valid domain login.
l Use HTTPS to secure your data sessions with client users.
l Configure security policies on Windows Server.
l Disable or delete unnecessary accounts, ports and services on the server. Disable
unnecessary share drives.
l Configure auditing on the server.
l Configure encryption on Windows Server.
l Use the IIS Lockdown and URLScan tools to harden IIS.
l Database security. Users do not have direct access to the SQL database. The eWare DLL
accesses the database using a predefined logon. When a user requests data, the eWare DLL
l User authentication. A user requires a user name and password to access Sage CRM. User
passwords are encrypted in the system and in the database for maximum security. You can change
a user's existing password but cannot view it. You can set the minimum length and strength of
passwords, and specify the number of days before a password expires. For more information,
seePassword policies and Security Profile fields.
l Security profiles and territories. You can set up security profiles and territories to manage security
access rights across the organization. A profile is a way of grouping users when defining access
rights to view, update, insert, or delete records. You can further divide users rights by territory. For
example, you can allow users in the Europe territory to view all opportunities in the USA territory, but
not update them. Advanced policies let you define complex inter-territory security rights and
exception handling. For more information, see Security profiles and Territories.
l Field security. You can set up field security for the Sage CRM system, individuals, teams, and
security profiles. For example, you could make a field invisible to some users, allow other users to
view the contents of the field but not to change them, and give other users read and write access to
the contents. Or you could make it mandatory for the user to enter a value in the field before
submitting the form. For more information, see Using field security.
l Company team and restricted tabs. You can restrict user access rights to view and update
information depending on company team membership. For more information, see Security Profile
fields.
Note: Install only one Sage CRM instance per server. Sage doesn't support configurations where two or
more Sage CRM instances are installed on the same server.
1. Run Setup.exe and click Install Sage CRM. Click Next to move through the installation wizard.
2. Review and accept the software license agreement.
3. Select New Install, confirm your name and company name, and enter your license key. You cannot
register your license key more than five times. If you need to register the key more than five times,
please contact your business partner.
4. Select the SQL server.
l If you select Existing Microsoft SQL Server, enter the installation name. The SQL server
must have a case insensitive collation. Binary or case-sensitive collations are not supported.
The default SQL Server port is 1433.
l If you select Install Microsoft SQL Server Express, you're prompted to install the
software. The sa account password for the SQL Server Express install is SageCRM#20xx,
and the instance name is CRMEXPRESS2017. The SQL Server Express port is chosen
automatically.
5. Enter the installation name and set the default location for the program files. We recommend you
use the default installation name CRM. If you enter an alternative name, ensure there are no spaces
in the name. IIS looks in the default location for the Sage CRMhome page. Extended characters in
the installation path or folder are not supported. To include extended characters, you must
implement a workaround, such as running Tomcat as a service using the .NET tool RunAsService.
This is an open source tool (http://runasservice.sourceforge.net) which registers a .NET Windows
service that's configured to run any executable.
6. Confirm the database server name or IP address, your SQL Server user ID, and enter your
password.
7. Select Include basic demo data to get sample companies, leads, opportunities, cases, solutions,
communications, people, territories, users, campaigns, and workflows. If you don't include
demonstration data, you get sample workflows only.
8. Select optional addons. For example, Sample Self Service support site.
9. Choose a default currency. The default currency is displayed in a read-only format against all
currency type fields in Sage CRM. If your implementation deals with multiple currencies, this forms
the Base Currency against which all other currencies are calculated. If your default currency is not
Note: Make sure the time zone set in Sage CRM matches the time zone set in Windows on the
computer where Sage CRM is installed. For instructions, see Setting the time zone.
1. Run Setup.exe and click Install Sage CRM. Click Next to move through the installation wizard.
2. Review and accept the software license agreement.
3. Select Change existing install of CRM.
4. If there's more than one Sage CRM installation, select the installation you want to upgrade.
5. Select the components you want to reinstall. We recommend that you backup components that are
affected before you proceed.
Note: Make sure the time zone set in Sage CRM matches the time zone set in Windows on the
computer where Sage CRM is installed. For instructions, see Setting the time zone.
1. Go to the Sage CRM installation folder and open the License Update folder.
2. Run licensekeyupdate.exe.
3. Enter the new license key.
4. Click Next and complete the wizard.
1. Run Setup.exe and click Install Sage CRM. Click Next to move through the installation wizard.
2. Review and accept the software license agreement.
3. Select Complete Reinstall, confirm the database server name or IP address, your SQL Server user
ID, and enter your password.
4. Select Include basic demo data to get sample companies, leads, opportunities, cases, solutions,
communications, people, territories, users, campaigns, and workflows. If you don't include
demonstration data, you get sample workflows only.
5. Select optional addons. For example, Sample Self Service support site.
6. Choose a default currency. The default currency is displayed in a read-only format against all
currency type fields in Sage CRM. If your implementation deals with multiple currencies, this forms
the Base Currency against which all other currencies are calculated. If your default currency is not
displayed on the list, click New. Add the currency name and internationally recognized code and
click OK. For example, Norwegian Krone and NOK. The new currency is displayed in the list.
7. Select the protocol or proxy settings.
l If you select Use HTTPS for Sage CRM connections, you must manually add a server
certificate on the web server (IIS) used by Sage CRM and create an HTTPS binding for the
CRM site. For more information, see How To Set Up an HTTPS Service in IIS.
After you enable HTTPS, update the HTTPPort and OutlookPort entries in the Custom_
Sysparams table in Sage CRM with the port you configured in the HTTPS binding settings.
l If you select Use proxy for Internet access, enter the proxy server address and port and
authentication details.
8. Opt in or out of web analytics, review the current settings, and click Yes to stop IIS.
9. Click Finish.
Note: Make sure the time zone set in Sage CRM matches the time zone set in Windows on the
computer where Sage CRM is installed. For instructions, see Setting the time zone.
1. To remove all CRM services (Escalation, Integration, Email Manager, and Indexer) and the Apache
Tomcat service, open the command prompt and type
%ProgramFiles(x86)%\Sage\CRM\Services\CRMIndexerService.exe /U
%ProgramFiles(x86)%\Sage\CRM\<InstallName>\tomcat\bin\service.bat remove
<SageCrmInstallName>Tomcat8
2. To unregister the DLL, click Start | Run and type:
regsvr32 "%ProgramFiles(x86)%\Sage\CRM\<InstallName>\WWWRoot\eware.dll" /u
Enclose the path in quotation marks to allow for the space between Program and Files. When the
RegSvr32 dialog box is displayed, click Yes.
3. To delete the CRM connection, click Start | All Programs | Administrative Tools | Internet
Information Services (IIS) Manager. Expand the Connections tree in the left pane to open Default
Web Site and delete the CRM entry.
4. To delete the CRM database, click Start | Programs | Microsoft SQL Server | Enterprise
Manager. Expand the Databases tree in the left pane and delete the CRM entry.
5. To remove the registry entries for a single installation, click Start | Run. Type Regedit and click OK.
Expand HKEY_LOCAL_MACHINE/SOFTWARE/ and delete the eWare folder.
6. To remove the registry entries for multiple installations, click Start | Run. Type Regedit and click OK.
Expand HKEY_LOCAL_MACHINE/SOFTWARE/eWare/Config and delete the appropriate key.
Expand HKEY_LOCAL_MACHINE/SOFTWARE/eWare/Mapping and delete the appropriate key.
7. To delete the CRM installation directory, click Start | Run, type net stop iisadmin /y and click OK.
The web service stops. Go to %ProgramFiles(x86)%\Sage\CRM\<InstallName> and delete the
folder containing CRM installation files. Then go to %WinDir%\system32 and delete eware.cpl.
8. Reboot your computer.
The table below illustrates a sample database maintenance plan for an SQL Server install.
Shrink database X*
Reorganize indexes X
Rebuild indexes X
Update statistics X
Maintenance clean-up X
* Or longer – Regularly shrinking a database fragments the drive on which it is running, which reduces
performance. If the database and transactional log file backups are carried out, the Shrink Database task
may not be required.
A manual backup allows you to preserve a complete set of system, database, and registry files that can be
stored independently of the upgrade environment. This provides added security against data loss during the
upgrade procedure.
A manual backup also allows you to restore the customer’s environment in-house, creating a mirror image of
the customer’s existing Sage CRM environment. You can then carry out the upgrade procedure and post
upgrade testing in-house, or on a test server at the customer site.
To help avoid problems associated with poor upgrades, we recommended you first create a manual backup
of the Sage CRM program files, registry, and database. Then set up a test environment that mirrors the live
environment. The accuracy of test results decreases as the test environment diverges from the live
environment. Perform a test upgrade on the test environment and test it. When you're happy with the results
of the test upgrade, perform the live upgrade.
l Licensing. A separate license key is required for the test install. Your local Sage Op-Co can provide
you with a trial license key free of charge. This key can be made to mimic the live license key
functionality exactly, and should include the Extensibility Module. It expires three months after
installation.
l Software Installation. To successfully mirror the live environment, install Microsoft IIS, database
management software (for example, SQL Server), and a clean install of the existing version of Sage
CRM on the test server. Restore the current live database, the live registry, and the program files to
the test environment.
l Server. The test environment should not reside on the same server as the live Sage CRM web
server or SQL server, as variables added into a live environment increase the chance of downtime.
For example, if an IIS reset is required on the test web server, and the client is running Sage CRM
on the same server, the production system will be impacted.
l Baseline testing. When you've set up the test environment, test commonly used Sage CRM
functionality and components to ensure the test environment is functioning as an exact mirror of the
live environment. For example, if you generate particular reports on a daily basis, test this procedure
on the test environment. If the test environment is at the customer site, have Sage CRM users
perform their regular tasks on the test environment. Don't spend a lot of time testing functionality
that's never used by the customer.
l Script customizations. If the client’s license includes the Extensibility Module, you can script any
changes to Sage CRM into an ES file. Include the Extensibility Module in the test license to ensure
1. Install a trial installation of the current version of Sage CRM. The trial key must have the same
number of users and the same optional functionality as the key used in the live environment.
2. Stop IIS.
3. Restore the database backup that you've taken from the live environment. For more information,
see Restoring the database backup.
4. Restore the registry backup. For more information, see Restoring the registry backup.
5. Copy the system files that you've backed up from the backup area to the test environment.
6. Re-register eware.dll. For more information, see Reregistering the installation.
7. Restart IIS.
Live upgrades
l Preparing for a live upgrade
l Upgrading Sage CRM
l Reviewing the upgrade log
l Upgrade scripts
l Testing a live upgrade
l Sample upgrade checklist
Note: You should make a full backup of your data before upgrading. After upgrading Sage CRM, you
must log on to Sage CRM as a system administrator at least once before upgrading to the next version.
This is required to update the Sage CRM database correctly.
1. Run Setup.exe and click Install Sage CRM. Click Next to move through the installation wizard.
2. Review and accept the software license agreement.
Upgrade scripts
The following scripts run when you run the upgrade install wizard:
Log on is successful
Mail merge / document drop functionality working, and with the correct plugin
All plugins (Outlook, xEwareControl Version, and CTI) updated and working as
expected
All plugins compatible with, and match, the upgraded version of Sage CRM
Delete vSentinal out of the views in the restored Sage CRM database
Restart IIS
Test upgrade
Upgrade logs
Function testing
Lock users out of the Sage CRM system as server is taken offline
Live upgrade
Upgrade logs
Function testing
l You need a valid license that includes multi-server Sage CRM. Your license key can be used on all
servers in the cluster.
l Identify the servers in the cluster on which you'll install Sage CRM and identify the database server
on which the database will be created. In a typical multi-server Sage CRM environment, CRM install
files are created on web/application servers and the database resides on a separate, dedicated
database server.
l Identify the servers in the cluster on which CRM services such as the Indexer, Escalation, and Email
Manager will run. They are installed only once and usually run on the first (primary) web server, but
in a multi-server Sage CRM environment they can split across other application servers in the
cluster. For example: Application server 1 (primary web server) - Email manager, Application server
2 - Indexer service, Application server 3 - Escalation service
You should install only one single Replication Engine instance on the primary server. To ensure that
installing subsequent nodes won’t break any existing Exchange synchronizations:
A Tomcat service is installed on the web server to support the Interactive Dashboard and SData features . In
a multi-server CRM environment, the Tomcat service is installed in %ProgramFiles
(x86)%\Sage\CRM\<InstallName>\tomcat on each web server in the cluster. If changes are made to
custom tables on the database, the Tomcat service and the eware.dll on each web server reloads its
metadata. Ensure the database server has enough concurrent connections to reload the sum of one DLL
per web server plus one Tomcat database connection pool per web server.
For the Document Library feature to work correctly in multi-server environments, you must define a shared
UNC network path with the appropriate access rights to the Library folder.
1. Click <My Profile> | Administration | Email and Documents | Documents & Reports
Configuration.
2. Click Change.
3. Enter the network path in Physical root directory for mail merged documents.
4. Enter the network path in Default document templates location for mail merge.
5. Click Save.
Any changes you make on a Sage CRM server are reflected on all other Sage CRM servers in the cluster.
Metadata is refreshed on all servers if you perform any customization.
Warning: If you upgrade the SQL server on the database server, you must also upgrade the client tools
on the application server. If you do not upgrade the client tools, CRM services are unable to connect to
the database server and errors occur.
If you perform an IIS reset or a recycle of the application pool on the servers in the cluster, you must log on to
each server in the cluster manually in order for load balancing to operate normally.
You can edit the multi-server Sage CRM configuration settings for the server on which the database is
installed.
The diagram below illustrates load balancing when four users attempt to log on to Sage CRM in a multi-
server Sage CRM environment.
In this scenario, load balancing has been configured on a cluster of three servers: Server 1, Server 2, and
Server 3. Each server can access the Sage CRM database which resides on Server 2. User 1 logs on from
Client 1, then User 2 logs on from Client 2, then User 3 logs on from Client 1, and then User 4 logs on from
Client 3.
l User 1 and User 4 are logged on to the Sage CRM database by Server 1.
l User 2 is logged on to the Sage CRM database by Server 2.
l User 3 is logged on to the Sage CRM database by Server 3.
1. Run Setup.exe and review and accept the Software License Agreement.
2. Select Upgrade Previous Version of CRM.
3. Choose the install you want to upgrade and enter your name, company name, and license key as
provided by the vendor.
1. Run Setup.exe and review and accept the Software License Agreement.
2. Select Upgrade Previous Version of CRM
3. Choose the install you want to upgrade and enter your name, company name, and license key as
provided by the vendor.
4. Click Yes and select Backup is not Required.
5. Click Yes to stop IIS and continue the installation.
6. Select Launch Sage CRM Now and View Upgrade Log Files.
7. Click Finish. The Sage CRM log on page is displayed in a new browser window.
Note: Certain limitations apply when you deploy Sage CRM via XenApp. For more information, see the
2020 R1 Hardware and Software Requirements on the Sage CRM Help Center.
For instructions on how to install Sage CRM plugins on a Citrix XenApp server, see Installing Sage CRM
plugins.
For more information about RDS, see "Remote Desktop Services Overview" on technet.microsoft.com.
To make sure that your environment is supported, you should perform a full user acceptance testing of the
application.
l Iexplore.exe and Outlook.exe processes are not running on the Citrix XenApp server.
l The latest Service Pack is applied to the Microsoft Office suite.
l All users and administrators have disconnected from the Citrix XenApp server.
Warning: If a user or administrator is connected to the server while the plugin is being installed, registry
settings or .dll files required for the installation can become unavailable.
After installing the plugin, open Registry Editor (regedit.exe) and make sure that the value of the
LoadBehavior key in the following locations is set to 3:
Warning: Make sure that none of the users uninstall the plugin. If they do, the plugin may stop working
properly or become unavailable for all users. In this case, you'll need to reinstall the plugin from scratch.
l System settings
l Timings
l Themes
Configuring logging
1. Click <My Profile> | Administration | System | Logging.
2. Click Change.
3. Complete the Logging fields.
4. Click Save.
5. Select the Logs that you want to view from Select log files.
You can also enable detailed logging for the Interactive Dashboard gadgets.
where
l <Sage CRM installation folder> is the folder you specified when installing Sage CRM. By
default, this is %ProgramFiles(x86)%\Sage\CRM\CRM.
l <InstallName> is the Sage CRM installation name. By default, this is CRM.
Example:
%ProgramFiles(x86)%\Sage\CRM\CRM\tomcat\webapps\crmj\WEB-INF\log4j.xml
3. Set the value of the level value parameter to DEBUG and save the file:
<logger name="com.sage.scrm" additivity="false">
<level value="DEBUG"/>
<appender-ref ref="scrm"/>
</logger>
Warning: When the level value is set to DEBUG, it causes Sage CRM to consume more system
resources. Set the level value back to ERROR when you're done troubleshooting.
Logging fields
The following table describes the Logging panel fields. For more information about logs, see Logs in the
Troubleshooting Help.
System Logging Level The logging level recorded in the system log file (%ProgramFiles
(x86)%\Sage\CRM\<CRM Instance Name>\Logs\ewaresystem.log).
A new file is created daily and can be used for diagnosing problems.
SQL Logging Level The logging level recorded in the SQL log file (%ProgramFiles
(x86)%\Sage\CRM\<CRM Instance Name>\Logs\ewaresql.log). A
new file is created daily and can be used for diagnosing problems. The
file lists executed SQL, the duration of the execution, and errors thrown.
Query Duration Logging When a query takes longer exceeds this duration, the number of
Threshold (Milliseconds) milliseconds it will be logged.
.NET Logging The logging level recorded in the .NET log file (%ProgramFiles
(x86)%\Sage\CRM\<CRM Instance Name>\CustomDotNet\.netlog).
Database fields
Field Description
Database User ID This is the user ID that is used to connect to the database. This user
must be set up in SQL Server Enterprise manager.
Database Password This is the password of the SQL Server user. Set up in SQL Server
Enterprise manager.
Use Integrated Windows NT If this is checked then the IUSR account is used to connect to the
Security database. The Database User ID and the Database Password are
ignored. This is for SQL Server only. The Administrator must ensure that
IUSR is added as a user to SQL Server and enables access to the
database.
Default Database Driver Sets the type of driver you are connecting to using MDAC.
Default Database Server Specify the name or IP address of the database server hosting the
(SQL Server Only) default SQL database. For more information, see Connecting to the
database server using its IP address.
Default Database This is the name of the database on your database server.
Always Use Default Set to Yes, the logon page prompts the user for user name and
Database password. "Yes" is the mandatory setting for production environments.
Set to No, the logon page prompts the user for user name, password,
and the database name. An IIS reset is required before an alternative
database can be logged onto. "No" is strictly for use in a development
environment only.
Query Timeout (sec) The maximum amount of time that a query is allowed run on the
database server before a timeout error is displayed in Sage CRM.
Port Number SQL Server port number added during the install - default is 1433.
Field Description
Distributed CRM web server The names of the Sage CRM servers in the cluster, separated by
names semicolons.
Distributed CRM web server IP A list of IP addresses from which Sage CRM accepts incoming
addresses requests for user count. When specifying IP addresses, use a
semicolon as a separator.
DTLS Server Name The name of the server on which all Table Level Scripts are
performed.
Fully qualified CRM web server The complete domain name for web servers, consisting of the
names hostname and domain name. An example is mymail.sage.com,
where the hostname is “mymail” and the host is located in the domain
“sage.com”.
If any of these servers require HTTPS, the server name must be the
name specified on the server certificate.
Field Description
Allow Coaching in CRM Specify whether to make on-screen coaching available to users.
Allow Mail Merge to Word Allows users to perform mail merges that create Microsoft Word
documents and also to perform mail merges that create PDFs. If Allow
Mail Merge to Word is set to no, users can only perform mail merges
that create PDFs.
Allow mass operations Specify whether to make the mass delete, mass update, and update
territory functionality available to users.
For example, you need to set this option to Yes in order to delete
documents and communications from the Person or Lead records in a
group.
Analytics Web analytics tracks how users interact with Sage CRM and the device
they use to view the system but doesn't collect any personal data. This
information is used to improve Sage CRM. You can turn analytics on or
off.
Case Refresh Interval The refresh rate in seconds for the Case My CRM list. It is disabled when
set to zero.
Communication Refresh The refresh rate in seconds for the Calendar list. It is disabled when set
Interval to zero.
Company Notes Tab Shows Select from Company And Person Notes, or Company Notes Only. The
default setting is Company And Person Notes. This means that a note
added in the context of a person is also displayed on the Company Notes
tab. If you want notes added in the context of a person to only display in
the context of a person, select Company Notes Only.
Custom server name for Enter the custom server name you want to use for internal requests. The
internal reqs custom server name must include the protocol: http:// or https://.
Example:
http://localhost
Default CSV File Export Set the delimiter to comma, semi-colon, or tab. When you use the Export
Delimiter To File button on, for example, the results of a company search, the CSV
export will use the delimiter you have set. This makes for easier
conversion to suit your native version of MS Excel. Users can override
this setting by selecting their preferred CSV File Export Delimiter in <My
Profile> | Preferences. For more information, see CSV input/output
matrix.
This setting also impacts data uploads from CSV files. Please make sure
the delimiter in the import file matches the delimiter set in User
Preferences.
Default Language The default language of the Logon screen and the default language set
for new users added in <My Profile> | Administration | Users.
Default System Theme Specify the default system theme. This is the default theme applied
when a new user is added to the system. It is also the theme applied if
the user clicks Set To System Defaults in <My Profile> | Preferences
in edit mode.
Detect duplicate emails Prevents users from creating Person, Company, and Lead records with
duplicate emails.
Home Page URL Displays a new button on the menu with a link to the URL.
Maximum Number Of Upper limit for task or meeting creation using the Recurring
Occurrences Communications feature.
Opportunity Refresh Interval The refresh rate in seconds for the Opportunity My CRM list. It is
disabled when set to zero.
Recent List Length Specify the size of the Recent List. The maximum length is 40.
Search Select Advanced Specify the size of Search Select Advanced lists.
Fields Grid Size
Send internal reqs to actual Allows you to specify a Sage CRM server name to use for internal
server name requests.
Possible options:
l Yes. Specifies to use the actual Sage CRM server name for
internal requests.
l No. Allows you to enter a custom server name in the Custom
server name for internal reqs field.
The server name you specify is used to send internal requests in the
following Sage CRM features:
l Mail Merge
l Data Upload
l MailChimp Integration
l Swiftpage Integration
l GCRM-based integrations
l Exchange Integration
Server Time Zone Time zone of the server. There are 75 time zones to select from. The one
you select defines what daylight settings are used, so you must be
careful in selecting the correct zone. The zone selected must correspond
exactly to the server setting. Therefore, you must stop and restart IIS if
you change the time zone in Sage CRM.
Show Pipeline For When set to Yes, users can see the opportunity and case pipeline from
Company/People the company and person level. The option is typically set to No to prevent
other users from viewing their colleagues’ forecasting information.
Use Area Code Specifies whether area codes are displayed in the application.
Use browser session security Allows you to control whether users can connect to their current Sage
CRM session by using the same SID and access URL on a different
computer.
Possible values:
Use Country Code Specifies whether country codes are displayed in the application.
Use Exchange Server Set to Yes to enable Exchange Server Integration. For more
Integration information, see Enabling Exchange Integration.
Use local help files Select which help files are displayed to users and system administrators
when they click the Help button.
Possible values:
This field is available only when help files are installed on your Sage
CRM server. For more information, see Installing help files locally.
User Rights To See System If your license includes the System Expiry option, you can select the level
Expiry Warning of user who will see the expiry warning message. If No Admin Rights is
selected, all users see the warning message. If Info Manager is selected,
Info Managers and Administrators see the message. If System Admin is
selected, only Administrators see the message.
The message is displayed after each logon when the expiry date is within
thirty days or less.
Reviewing locks
The system implements different levels of multi-user data handling to ensure each web request is handled
securely, without any conflicts of data access and deadlock.
l Click <My Profile> | Administration | System | Locks. A list of the locks that the system is currently
handling is displayed. There are three levels of locking:
l A session lock is created when a user logs in and is maintained during the login session. It
uniquely identifies the connection that the user has with the server. Any request that the
user makes requires identification of the session lock. A request includes clicking a button, a
hyperlink, or a contact name. Identification of the session lock is handled automatically, as
each button and hyperlink generated by the system has the session lock built in.
Field Description
Session Id An identifier that indicates the session that's maintaining the lock.
Table Name The name of the table that's maintaining the lock.
Record Id An identifier that indicates the record in the specified table that the lock is
currently held on.
Field Description
Maximum Number Of Records To Return The maximum number of records you want Web
Services to return at one time. This limits the
response sizes of requests. Pagination is available, so
additional data can still be returned.
Maximum Size Of Request The maximum number of characters you want users
to be able to send to Web Services.
Make WSDL Available To All When set to Yes, the WSDL file can be viewed by
anyone from:
http://<CRM server name>/<CRM install
name>/eWare.dll/webservices/CRMwebservice.wsdl
Enable Web Services Set to Yes to enable the Web Services functionality.
Set to No to disable Web Services.
Dropdown Fields As Strings In WSDL File Default is No. Drop-down fields are displayed in the
WSDL as enumerated types, for example comp_
status as an enumeration with the drop down values
in it. When set to Yes, makes the enumerated types
"Strings". This means that, for example, within
Company there is a field called status that is of type
com_type. When this option is set to Yes, it is still
called status but its type is now "String".
Send and Return All Dates and Times in Use UTC (standard for Coordinated Universal Time)
Universal Time timing and format for display of times and dates.
Accept Web Request From IP Address Specify the unique IP address that you want the
WSDL file to be accessible from. When you do this,
the Make Web Services Available To All field
should be set to No.
Force Webservice Log On If the connection between the web service client and
the service is unexpectedly broken, that client remains
logged on to the server hosting the service. This
means that a new client session will be blocked from
logging on to the server. However, if you set the
Force Webservice Log On setting to Yes, the old
instance of the client is automatically logged out when
a new instance attempts to log on. By forcing new log
ons, this field prevents users from being "locked out"
of a web service following a failed connection or
unsuccessful log out.
3. To configure Quick Find, click Change and use the following options:
l Maximum number of results. Select the maximum number of records you want to appear
in Quick Find results.
l Entities to be indexed. Select the entities you want Sage CRM to index and include in
Quick Find. You can exclude entities from Quick Find to narrow search results, reduce the
size of the index and RAM usage, and improve Quick Find performance. For information
about indexing a custom entity, see Indexing a custom entity for Quick Find.
4. Click Save.
Note: You can exclude individual entity fields from Quick Find. For more information, see Editing a field.
The following example adds an index for a custom entity named Project.
CREATE NONCLUSTERED INDEX [IDX_QUICKFIND_Proj_Deleted_UpdatedDate]
ON [dbo].[Project]
[Proj_Deleted] ASC,
[Proj_UpdatedDate] ASC
INCLUDE
[Proj_ProjectId]
WITH
PAD_INDEX = ON
1. Click <My Profile> | Administration | System | Keyword Search. The date and time of the last full
indexing and incremental indexing of Sage CRM data is displayed.
l A full index is undertaken when the CRM Indexer Service is started and compiled against all
records in the database.
l An incremental index includes records added to the database since the last indexing.
l You can start and stop the CRM Indexer Service. For more information, see Starting and
stopping CRM Indexer Service.
2. Click Change.
Tip: You can create a Keyword Search view for a custom entity or edit an existing Keyword Search
view. For more information, see Creating a view for Keyword Search.
To extend Keyword Search to secondary entities, you can create a search screen. For more
information, see Creating a screen in the Developer Help.
Field Description
Allow Keyword Search In Select Yes to allow users to use Keyword Search.
CRM
Interval Specify the gap, in minutes, between incremental indexes that track
new records added to the database.
Note that if the interval specified here has elapsed and an incremental
index has not been compiled (because the actual service has been
stopped, for example), the user of the keyword search will be warned
that the tool is relying on out-of-date information.
Maximum Number of Indicate the maximum number of records returned by the search. The
Results figure cannot exceed 10,000.
If Sage CRM is installed as an upgrade, you must manually start the Indexer Service using Microsoft
Windows Services console. You manually start and stop the Indexer Service as follows:
Note: You should stop the Indexer Service if you disable Keyword Search.
For example, you can schedule the following command using the Windows Task Scheduler to delete all
search index logs that are two days old:
forfiles /P "%ProgramFiles(x86)%\Sage\CRM\Services\Logs" /D -2 /M
*CRMSearchIndex.log /C "cmd /c del @file"
Alternatively, you can use a command line zip tool to archive old files using forfiles, and then delete them as
necessary.
Users cannot log back into the system until you unlock it or the maximum lockout period of three hours has
elapsed.
Note: The only user who can release the lock on the system is the System Administrator who set the
lock. If you have more than one user with Administration rights, they are locked out too.
1. Click <My Profile> | Administration | System | Lock System. The system can be locked when the
icon displays as a closed padlock. The Lock System page is displayed, listing the number of users
currently logged on. Ideally, there should be no users logged on if the System Administrator has
provided sufficient notification of the process.
2. Click Continue to log off any logged on users.
3. Click Continue to lock the system.
System License Type Displays Named User Licensing or Concurrent User Licensing.
Concurrent User Licensing is only displayed if your license includes the
Logged On Users License Scheme (concurrent or mixed licensing)
option.
Max Number of Concurrent This field is only displayed if your license includes the Logged On Users
Users License Scheme (concurrent or mixed licensing) option.This shows the
number of users specified in license activation code.
Number of Named Users This field is only displayed if your license includes the Logged On Users
License Scheme (concurrent or mixed licensing) option.This shows the
total number of users with a license type of Named. Please refer to User
fields for more information on setting the license type for a user.
Number of Seats Available Maximum number of users minus the Number of Active Users.
Number of Active Users Number of users set up and enabled for use on the system. Resource,
deleted or disabled users are not included in the total.
Registration Date Date and time the product was registered with Sage CRM. If the product
has not yet been registered, follow the instructions in the Manual
Registration section of the page.
System Expiry Date This field is only displayed if your license includes the System Expiry
option. Displays the date when your system expires. No users can log on
from this date onwards, and a new license key is required. A warning is
displayed after each logon when the expiry date is within thirty days or
less.
1. Click <My Profile> | Administration | System | Proxy Settings. If you entered the Proxy details
during the install process, the details are displayed here for editing.
2. Click Change.
3. Complete the Proxy settings.
4. Click Save.
Field Description
Proxy User Name Proxy user name. This field is required if the first check box is selected.
Proxy Domain Proxy domain. This field is required if the first check box is selected.
Proxy Address Proxy address. This field is required if the first check box is selected.
If there are issues with a component, refer to the corresponding troubleshooting instructions.
l Favorites ( )
l Recent ( )
URL Rewrite URL Rewrite URL Rewrite health
l GCRM-based troubleshooting check
integrations
l Interactive Dashboard
l MailChimp Integration
l Mail Merge
l SData APIs
l Swiftpage Integration
l Favorites ( )
l Recent ( )
CRM Quick Find Quick Find in the top bar CRM Quick Find CRM Quick Find
Service Service Service health check
troubleshooting
l Use the Services tool (services.msc) on the Sage CRM server to ensure the Apache Tomcat 8.5
<SageCrmInstallName>Tomcat8 service is running. Start or restart the service if necessary.
l To ensure the port used by Apache Tomcat is open and doesn't have any conflicting connections,
run the following at a command prompt on the Sage CRM server:
netstat -ano |find "<PortNumber>"
where <PortNumber> is the port used by Apache Tomcat. This is usually port 10009.
l URL Rewrite
l SData 1.1 and 2.0
l CRM Quick Find Service
l Notifications
l Exchange Synchronization
1. URL Rewrite fails if Apache Tomcat fails. Resolving issues with Apache Tomcat may also fix
URL Rewrite. For troubleshooting tips, see Apache Tomcat troubleshooting.
2. If issues persist, it may indicate that the URL Rewrite inbound rules were incorrectly modified or
deleted. To restore the original inbound rules, you can use the Sage CRM Setup Wizard:
a. On the Sage CRM server, start the Sage CRM Setup Wizard.
b. Step through the wizard until you are on the Please choose setup type step.
c. Select Change existing install of CRM and click Next.
d. On the Reinstall options step, select IIS Aliases. Make sure that you clear all other check
boxes.
e. Complete the wizard. You may be prompted to enter the SQL Server login ID and
password.
SData troubleshooting
SData 1.1 and 2.0 relies on Apache Tomcat and URL Rewrite. Resolving issues with these components
may also fix SData. For troubleshooting tips, see:
1. CRM Quick Find Service relies on Apache Tomcat and URL Rewrite. Resolving issues with these
components may also fix CRM Quick Find Service. For troubleshooting tips, see:
l Apache Tomcat troubleshooting
l URL Rewrite troubleshooting
2. If issues persist, use the Services tool ( services.msc) on the Sage CRM server to make sure the
CRM Quick Find Service service is running. Start or restart the service if necessary.
Notifications rely on Apache Tomcat and URL Rewrite. Resolving issues with these components may also
fix Notifications. For troubleshooting tips, see Apache Tomcat troubleshooting.
1. Exchange Synchronization relies on Apache Tomcat and URL Rewrite. Resolving issues with these
components may also fix CRM Quick Find Service. For troubleshooting tips, see:
l Apache Tomcat troubleshooting
l URL Rewrite troubleshooting
2. If issues persist, check to ensure that you have configured Exchange Integration correctly.
For instructions, see Setting up Exchange Integration.
SMTP Connection troubleshooting
For instructions on how to specify SMTP server and port in Sage CRM, see Configuring standard email.
Note: The System Health feature doesn't check if the SMTP server user name and password are
correct.
Use the Services tool (services.msc) on the Sage CRM server to ensure that CRM Escalation Service is
running. Start or restart the service if necessary.
Use the Services tool (services.msc) on the Sage CRM server to ensure that CRM Indexer Service is
running. Start or restart the service if necessary.
http://<LocalServerName>:<TomcatPort>/<InstallName>j/index.jsp
Where
l <LocalServerName> is the Sage CRM local server name stored in the LocalServerName record
(Parm_Name column of the Custom_Sysparams database table).
l <TomcatPort> is the Apache Tomcat port stored in the CRMTomcatPort record (Parm_Name
column of the Custom_Sysparams database table).
l <InstallName> is the Sage CRM installation name.
Sends an HTTP request to check if the inbound rules in the URL Rewrite feature of IIS correctly forward
requests from IIS to Apache Tomcat. The HTTP request has the following format:
http://<LocalServerName>/sdata/<InstallName>j/index.jsp
Where
l <LocalServerName> is the local server name stored in the LocalServerName record (Parm_
Name column of the Custom_SysParams database table).
l <InstallName> is the Sage CRM installation name.
http://<LocalServerName>/sdata/<InstallName>j/sagecrm/-/$schema
Where
http://<LocalServerName>/sdata/<InstallName>j/sagecrm2/-/$prototypes?SID=<SessionID>
Where
l <LocalServerName> is the Sage CRM local server name stored in the LocalServerName record
(Parm_Name column of the Custom_Sysparams database table).
l <InstallName> is the Sage CRM installation name.
l <SessionID> is the current Sage CRM session ID.
Sends an HTTP request using the URL specified in the SolrEngineUrl record (Parm_Name column in the
Custom_SysParams database table) to check if the CRM Quick Find Service is accessible. This health
check doesn't verify if Sage CRM data is being indexed properly.
http://<LocalServerName>/sdata/<InstallName>j/userdata?SID=<SessionID>&Action=
getNotifications
Where
l <LocalServerName> is the Sage CRM local server name stored in the LocalServerName record
(Parm_Name column of the Custom_Sysparams database table).
l <InstallName> is the Sage CRM installation name.
l <SessionID> is the current Sage CRM session ID.
http://<ExchangeIntegrationEndpoint>/$service/status
1. Checks if the value of the UseCDONTS record (Parm_Name column in the Custom_SysParams
database table) is set to N.
2. Verifies that the value of the SmtpServer record (Parm_Name column in the Custom_SysParams
database table) is not blank.
3. Attempts to connect to the SMTP server using
l SMTP server specified in the SmtpServer record (Parm_Name column in the Custom_
SysParams database table).
l Port specified in the SMTPPort record (Parm_Name column in the Custom_SysParams
database table).
4. If a connection is established, sends an EHLO command to the SMTP server and waits for reply
code 250.
1. Checks if the value of the UseEscalationService record (Parm_Name column in the Custom_
SysParams database table) is set to Y.
2. Checks if a PID (process ID) exists for CRMEscalationService.exe.
1. Checks if the value of the KeywordSearchEnabled record (Parm_Name column in the Custom_
SysParams database table) is set to Y.
2. Checks if a PID (process ID) exists for CRMIndexerService.exe.
For example: http://MyServerName
5. Click Save.
The server name you set is used for internal requests in the following Sage CRM features:
l Mail Merge
l Data Upload
l MailChimp Integration
l Swiftpage Integration
l GCRM-based integrations
l Exchange Integration
For a more accurate measurement of duration, this information can be combined with a Business Calendar,
which defines standard business days and work times. You can also define Holiday Sets for different
regions, and set up Service Level Agreements (SLAs) which take Case Duration, Business Calendars, and
Holiday Sets into account so that warnings and escalations can be triggered when a Case comes close to,
or breaches a customer’s SLA.
Holiday Sets affect Case duration only, they have no impact on Lead or Opportunity duration.
Business calendars
l Creating a business calendar
l Recalculating lead and opportunity durations
l Standard Sage CRM business calendar
l Seven day week business calendar
l Creating a holiday set
You can apply a Business Calendar and a Holiday Set to SLAs. The SLA can then be applied to individual
cases or entire companies. When this is done, elapsed time for the case is measured according to the SLA
to which the Business Calendar and the Holiday Set apply.
The default Business Calendar, Standard Working Week, is used to calculate lead and opportunity
durations for any newly created leads or opportunities. If you change the default Business Calendar, or if
you set a different Business Calendar to be the default calendar, you will probably want all existing
opportunity and lead durations to be updated to reflect the changes in the Business Calendar.
When the opportunity is assigned the Standard Working Week calendar, the elapsed time between each
stage of the opportunity is calculated based on that calendar.
You can view the elapsed time calculations when you open the Opportunity Summary page and select the
Tracking tab and view the Duration column.
The first duration that has been calculated is 6 days, 7 hours and 17 minutes. This is the time from when the
opportunity was created and to when it was progressed to Proposal Submitted. Although, the amount of
days that elapsed between March 3rd and March 11th is 8 days, when the Standard Working Week
calendar is taken into account (that is, five working days in the week), the elapsed time amounts to six days.
In addition, hours and minutes are calculated.
Other durations have been calculated in the same way (the weekend is not counted because it is a five-day
working week).
When the opportunity is assigned the Seven Day Week calendar, the elapsed time between each stage of
the opportunity is calculated based on that calendar.
You can view the elapsed time calculations when you open the Opportunity Summary page and select the
Tracking tab and view the Duration column.
The first duration that has been calculated is 8 days, 7 hours and 17 minutes. This is the time between when
the opportunity was created and when it was progressed to Proposal Submitted.
This time, the amount of days that elapsed between March 3rd and March 11th is 8 days, and the time
calculated by the system is also 8 days. This is because the elapsed time scales are based on a seven-day
working week (weekends are counted as working days). As you can see, hours and minutes are also
calculated.
1. Click <My Profile> | Administration | System | Timings and click the Holiday Set tab. The
Available Holiday Sets page is displayed with a list of existing Holiday Sets.
2. Click New. Alternatively, to clone an existing holiday set, click the link of the Holiday Set and click
Clone.
3. Type a name for the holiday set in Holiday Set.
4. Type the name of the public holiday you want to include in the company’s Holiday Set in Holiday
Name.
5. Enter the date on which the holiday falls in Holiday Date.
6. Click Add. The holiday you added is displayed on the Existing Holidays panel and the Add New
Holiday panel is available to add another new holiday to the Holiday Set.
7. Continue to add other holidays in the same way.
8. To remove an existing holiday, click Delete beside the holiday you want to remove.
9. Click Save. The Holiday Set you created is added to the list on the Available Holiday Sets page.
Setting up SLAs
In Sage CRM, Service Level Agreements (SLAs) define the time frames in which customer cases should be
resolved and the steps that should be taken to reach an appropriate solution. Typically, customers pay for
different SLA agreements (Gold, Silver, Bronze, for example) depending on the level of service they require.
Moreover, individual SLAs specify varying response times and actions to match the severity of the reported
problem.
1. Open the Summary page of the company you want to apply the SLA to, and click Change.
2. Select the SLA from SLA.
3. Click Save. All cases associated with the company, whether they are high, low, or medium priority,
are associated with the selected SLA.
If you decide that certain types of cases logged by this company shouldn't be associated with this SLA, apply
a different SLA to individual cases. You can do this when creating a new or editing an existing case for the
company. If the SLA for a company is changed afterwards, the SLA for existing cases with the company is
not automatically updated. However, the SLA field on any new cases created for that company
automatically default to the company’s new SLA field.
1. In the context of a Company, click the Cases tab and click New Cases.
2. Enter the case details. Do not enter anything in SLA and SLA Severity. The system completes
these fields if you've selected an SLA for the company.
3. Click Save.
l A green symbol with a check mark indicates that the case is within the time specified in the SLA, it
has not yet reached the warning percentage level, or that no Warning percentage has been
If you make a change to an SLA’s timings in the SLA Timings In Hours panel, flags for cases associated with
the SLA may be affected—in fact, the way in which the flag is determined will change, but the flag itself may
not necessarily change color immediately.
You may want to update SLA timings if, for example, you have a number of cases attached to an SLA but at
a later date agree with a customer that you will solve high-priority cases in a shorter length of time than was
agreed on initially.
Updating SLA records
1. Click <My Profile> | Administration | System | Timings | Service Level Agreement.
2. Click the SLA you want to change.
3. Click Change and make your changes. For example, set Close In for high-priority cases to 9 hours,
and set Action 1 for high-priority cases to 1.
4. Click Save.
5. Click Update SLA Records and click OK.
To add a new theme, you must copy an existing theme and rename it. Never delete or change the
Contemporary theme supplied with the install.
To hide an existing theme so users cannot select it, you must remove or rename the translation for the
theme. For more information, see Making a new theme available and Translations list.
Changes to the supplied theme are overwritten on upgrade. Rework custom themes on a staging site before
allowing users access to the upgraded system.
Theme images
The following table describes some of the most frequently used images to review and replace for a new
theme. The full set of images can be found in the \Img directory.
Logos
Tabs
TABOFFLEFT.GIF
TABONREPEAT.GIF
TABOFFREPEAT.GIF
TABONRIGHT.GIF
TABOFFRIGHT.GIF
TABSPACE.GIF
Coaching Captions
COH_PROMPT.GIF
COH_HIDEALL.GIF
Buttons
Mobile
MENUBUT_FIND.GIF
MENUBUT_LOGOUT.GIF
MENUBUT_MYCRM.GIF
MENUBUT_MYDESK.GIF
MENUBUT_NEW.GIF
MENUBUT_REPORTS.GIF
ON_MENUBUT_FIND.GIF
ON_MENUBUT_LOGOUT.GIF
ON_MENUBUT_MYCRM.GIF
ON_MENUBUT_MYDESK.GIF
ON_MENUBUT_NEW.GIF
ON_MENUBUT_REPORTS.GIF
To make a new theme available in Sage CRM, add a new translation where the Caption Family is
CssThemes.
1. Click <My Profile> | Administration | Customization | Translations. For more information, see
Translations and help.
2. Click New.
3. Enter a Caption Code for the new theme. For example, panoply_blue. The caption code must
match the new theme name. For example, if your new stylesheet is called PANOPLY_BLUE.CSS,
then the caption code is panoply_blue.
4. Enter CssThemes in Caption Family.
5. Enter Tags in Caption Family Type.
6. Enter the translations for the caption in the language fields. For example, Panoply Blue.
7. Click Save. You should empty your cache.
l To customize FusionCharts, modify the [themename].FSN file in the Themes folder of your Sage
CRM install. For more information, see http://docs.fusioncharts.com/charts.
l To change the background color of FusionCharts use bgColor and bgAlpha attributes.
l bgColor: Sets the background color for the chart. You should use hex color codes without #
symbols. To use a gradient fill, specify all the colors required for the gradient fill separated by
commas.
l bgAlpha Sets the alpha (transparency) for the background. The valid range is from 0-100.
l FusionWidgets allow developers to create custom charts and elements for data visualization. The
widgets can be found in
%ProgramFiles(x86)%\Sage\CRM\<InstallName>\WWWRoot\fusioncharts.
For more information, see http://docs.fusioncharts.com/widgets.
Note: For more information about the methods you can use to display charts on client computers, see
Chart Options panel fields.
l User management
l Configuring automatic login
l User activity
l Security management
l Team management
l Active Directory users
l User templates
Demonstration users
If you've installed demonstration data, the following users are created in Sage CRM. These users do not
require passwords. If you have not installed demonstration data, only the admin user is created.
Peter Johnson 3 UK Sales Rep UK Sales Direct Tim McGraw Sales Rep
Sales
William Dolan 7 Ireland Sales Ireland Sales Direct Tim McGraw Sales Rep
Representative Sales
Hans Muller 10 Dutch Sales Sales - Direct Tim McGraw Sales Rep
Rep Holland Sales
Brian Little 12 US West Sales US West Direct Susan Maye Sales Rep
Sales Sales
Steve Morriss 13 Canada Sales Canada Sales Direct Susan Maye Sales Rep
Rep Sales
Note: A user's logon password must begin with a digit or letter. You cannot use a special
character as the first character in a user's logon password.
3. Complete the More User Details fields and the Security Profile fields and click Continue.
4. Complete the User Preferences fields. If you haven't selected a template, the user preferences
default to those specified in the Default User Template.
5. Click Save.
l Alternatively, click Save & New to save the new user and display the user panel so you can
add another new user. This is useful if you need to create several new users sequentially.
l Or click Set To System Defaults to reset user preferences to the default settings from the
Default User Template.
You specify Info Manager access on the user's Security panel. For more information, see Security Profile
fields.
When you set Administration to Info Manager, the following features are available to the user assuming the
license and services are enabled for these features.
You can also assign specific sub-sets of rights from Info Admin Rights. You can use Ctrl + click to select
multiple sets of rights.
Email and Template l <My Profile> | Administration | Email and Documents | Email
Templates
l <My Profile> | Administration | Email and Documents |
Emarketing Configuration
l <My Profile> | Administration | Email and Documents |
Document Templates
Note: A user's logon password must begin with a digit or letter. You cannot use a special
character as the first character in a user's logon password.
You can reassign records from a disabled user to a colleague. You might do this if the user has a large
outstanding workload or accounts that need careful management.
Deleting a user
Warning: Delete a user with extreme caution and only if you've added a new user by mistake. If a user is
no longer with your organization, disable the user instead of deleting the user.
If you must delete a user and the user has any related records, reassign the records first. If you don't
reassign the records and then you delete the user, the records remain in Sage CRM with an untranslated
code in the user name. This makes it very difficult to keep an accurate customer history.
User fields
l User fields
l Security Profile fields
l More User Details fields
l User Preferences fields
l CSV input/output matrix
l User Configuration Settings fields
User fields
The table below explains the standard fields on the User panel.
User Name User's logon ID. A user name entered with a leading or trailing space is
trimmed automatically to remove these.
Password User's logon password. The password is encrypted in the database after
the first password change. A minimum password length can be defined
within the Configuration settings. For more information, see User
Configuration Settings fields.
Note: A user's logon password must begin with a digit or letter. You
cannot use a special character as the first character in a user's logon
password.
User Template Select a predefined user template from the list of existing templates.
When you select a template, all fields you specified when you created
the template are applied to the current user.
Primary Team The default team that's displayed when the user clicks Team CRM. It's
also the only team that's displayed if no teams have been selected in the
Display Teams field.
Home Territory Security territory of the user. For example, USA. A user with a Home
Territory of USA can access records in the USA territory, and records in
subordinate territories—for example, West, East, Mid-West, South,
North. If no security territories are set up, this defaults to the World Wide
territory. The World Wide territory allows access to records in all
territories. For more information, see Adding records to a territory.
Synchronize With Exchange Read-only field available when Exchange Server Integration is enabled.
Server Only visible when the user record is in view mode. When a user's
mailbox has been enabled for synchronization with Exchange, the check
box is selected. For more information, see Enabling user mailboxes for
synchronization.
Resource Set to True, the user exists in the user table and is selectable from all
user selection lists in the system. However, the user does not have rights
to log into the system (and does not require a user license). This means
that, for example, a meeting room resource can be set up as a “user” to
facilitate meeting scheduling, without using up a user license.
E-marketing User Only available when adding a new user if an E-marketing account has
already been set up from Sage CRM. Selecting this check box adds two
further steps in the User Setup wizard. The fields are described in E-
marketing account and user fields.
Show Exchange Server Available when Exchange Server Integration in enabled. Set to Yes to
Integration Logs display a new tab, Exchange Integration Logs, in My CRM. This gives
the user access to their own logs, which display information on conflicts,
skipped items and synchronization, specific to their Exchange mailbox.
License Type Only available in installs with Concurrent licensing. Select from Named
or Concurrent. Named should be selected for users who require
permanent access. For example, System Administrators and permanent
staff. Select Concurrent for shift workers, part-time staff, data entry
temporary staff etc.
Disabled Read-only check box, displayed after a user is saved. Checked when a
user is disabled.
Field Description
Profile Name The security profile assigned to the user. Select from a list of existing
profiles. If no profiles are set up, this defaults to the System
Administrator's security profile, Profile 1. For more information, see
Adding a new security profile.
External Logon Allowed Indicates whether the user can access Sage CRM from a remote
location. Only available in systems with the EM (Extensibility Module). A
third-party that needs to access the COM interface, must access Sage
CRM as a user with this field set to True. For example, a user with this
privilege is required for Exchange Server to access Sage CRM for
Exchange Synchronization. Similarly, Self Server ASP pages need to
access the system in this way.
Change P/W At Next Logon The user is required to change their password the next time they log on.
Once they have done so, this is automatically set back to False.
Password Never Expires The password is only changed when the user wishes, or when the
System Administrator resets it.
Cannot Change P/W The password can only be changed by the System Administrator.
Password Expiry Date Automatically set by the system according to Amount Of Days To
Password Expiry on the User tab within the Configuration context.
My CRM Lists Sets access to lists in the My CRM area. This can be set so a user sees
only their own lists of pending work in the My CRM area list or lists of all
other users.
Team Lists Sets access to the Team CRM area. This can be set so a user sees their
Primary and Display Teams (User's Team), all teams, or none.
Forecast Rights For All Users In Territory: Allows a manager to access the forecasts of
other users in the same territory (or a territory below their own) by
changing the user name in My CRM.
For This User Only: A user can only access their own forecast.
Restrict Sensitive Info Specifies rights for viewing sensitive company information.
No Restriction: The user’s access to sensitive company information in
tabs is not dependent on being a member of the Company Team.
Must Be On Company Team: The user is able to view sensitive
company information (Quick Look, Notes, Communications,
Opportunities, Cases, and Documents tabs) only if the user is a
Company Team member for the current company being viewed.
However, if the user is the account manager for the current account, the
user has unrestricted access to tabs.
Restrict Updates Specifies rights for updating sensitive company information. The settings
work in conjunction with the value in Company Team.
No Restriction: The user’s update rights are not dependent on
membership of the Company Team. However, territory access rights still
apply.
Must Be On Company Team:
If Company Team is set to No Access or View Only, the user is not
allowed to update company records. This restriction is implemented by
hiding the Changebutton. This setting is not dependent on team
membership or territory access rights.
If Company Team is set to View Only, Upd/Ins, or Upd/Ins/Del, the user
can update company records only when a member of the Company
Team for the current company being viewed. However, if the user is the
account manager for the current account, update rights are unrestricted,
territory access rights permitting.
Merge Persons/Companies Gives the user rights to deduplicate people and companies using the
merge functionality.
Assign Individual To Allows the user to associate a person with a company. Assigning a
Company person to a company also moves all related communications,
opportunities, and cases to the company.
Allow Web Service Access Enables the current user for Web Service access.
Administration Sets the administration rights of a user. There are three types:
No Admin Rights: A basic user with no access to Administration.
Info Manager: A user with more rights than the basic user (such as
creating Interactive Dashboard templates) and limited access to
Administration when combined with the Info Admin Rights field. For
more information, see Creating an Info Manager.
System Admin: A user with full access to Administration.
Info Admin Rights One or more specific Info Admin rights can be selected, if Administration
is set to Info Manager. For more information, see Creating an Info
Manager.
Group Access Enables the current user to access Groups functionality. Users who
have not been granted access cannot view, create, or edit groups.
Mail Merge to Word Allows the user to perform mail merges that create Microsoft Word
documents and also to perform mail merges that create PDFs. If set to
No, the user can only perform mail merges that create PDFs.
Field Description
Department Department
Display Team The team queues that the user can view from Team CRM.
Language Preferred language. Each user sees the same underlying data in the
database, however the buttons, field names, and captions throughout
the application appear in the user's selected language. If no template is
selected, this defaults to the language set in the Default User Template.
User SMS Notification If SMS features are used and this option is set to True, an SMS
notification message is sent to the user's mobile phone when
communications are created for the user. Mobile Email Address must
be correctly completed for this to work.
Mobile Email Address Mobile phone email address. If the user’s mobile phone email address is
different from the user's normal email address, enter it here.
Forecasting - Reports To Sales manager or direct report, who should have access to the selected
user’s forecast.
Forecast - Currency Currency in which the forecast is calculated. If the user enters a forecast
value on the Opportunity in a different currency, it's converted to the
forecast currency set in Forecast.
Field Description
Log Me In To Determines the default first page when you log on. For example,
Dashboard, Calendar, Case List, or Opportunity List. It is possible to add
a new drop-down entry in <My Profile> | Administration |
Customization | Translations to allow users to see a .ASP or .NET
page as their first page. The caption family for this drop-down list is
DefaultToDo. Enter the custom page name in Caption Code, for
example, MYPAGE.ASP. For more information, see Translations list.
Empty Recent List For Each Empties the Recent List each time you log off and back on again. The
Session Recent List remembers the most recent pages you have visited in Sage
CRM.
Show Outbound Calls In My Makes the Outbound Calls Lists tab available in My CRM.
CRM
Show Leads Pipeline Displays the graphical pipeline of leads on the Leads tab within My CRM
and Team CRM.
Show Opportunities Pipeline Displays the graphical pipeline of opportunities on the Opportunities tab
within My CRM, Team CRM, Company and Person contexts.
Show Cases Pipeline Displays the cases pipeline on the Cases tab within My CRM, Team
CRM, Company and Person contexts.
Grid Size Determines the default maximum length of lists and grids on a page.
Email Screen Position The way in which the New Email screen is displayed. Select from
Normal or Popup or Split. The Normal and split options are ignored if
you're working with Sage CRM in Outlook. In this case, a new email is
always displayed in a popup window.
Line Item Screen Position The way in which the Line Item screen is displayed.
Report Print Preview Default The default orientation (Portrait or Landscape) used on the Report
Page size Display Options page for producing a report in PDF format.
Report Print Preview Default The default page size used on the Report Display Options page for
Orientation producing a report in PDF format.
On-screen Coaching l On. Turns coaching on for all screens for which it is available.
With this setting, the full coaching content is displayed in a panel
at the top any screens that have coaching content.
l Off. Turns all coaching off.
l Minimized. The coaching panel does not appear automatically at
the top of the screen. Instead, users can click the Maximize On-
screen Coaching button to view the full frame for an individual
screen. This setting might be employed for users who are familiar
with Sage CRM and might need to view coaching only rarely.
l Customized. Allows users to minimize coaching on some
screens while leaving it maximized on others.
Display three-line menu Allows you to select how the main menu is displayed.
Possible values:
l Always. Moves all main menu items, both standard and custom,
to the three-line menu (☰) located in the top left corner of the
Sage CRM screen. Use this value when the main menu doesn't
fit in the Sage CRM screen because it includes many items or
item names are long.
l Automatically. Moves all main menu items to the three-line
menu (☰) on narrow screens only. Otherwise, the main menu is
displayed at the top of the screen.
Preferred Theme Select the default theme for the user. A theme defines how the Sage
CRM user interface looks. It is a combination of content layouts, icons,
and user interface colors. Themes don't apply to User Help, System
Administrator Help, and Self Service.
Note: This field is available only if Sage CRM 2020 R1 was upgraded
from a previous version where existed any other themes except
Contemporary.
CSV File Export Delimiter The delimiter that the CSV uses when the user clicks Export to File.
This setting does not affect the Excel CSV format, which is always tab
delimited. For more information, see CSV input/output matrix.
This setting impacts data uploads from CSV files. Ensure the delimiter in
the import file matches the delimiter set in <My Profile> | Preferences.
Default Screen for Company Sets the default tab that's displayed when a user drills into a Company.
Default Email Template The default email template used when using the embedded email editor.
Default Email Address The default From email address used in the New Email screen. You can
change your default From address if you have been given permission to
send emails from other accounts.
Default Tablet Version Set to Desktop Version if you want to use the desktop version of Sage
CRM from a tablet device. Set to Tablet Version is you want to use the
Tablet theme from a tablet device.
Calendar Start Time The start time of the calendar view on communications, and the shaded
area in the meeting planner.
Calendar End Time The end time of the calendar view on communications, and the shaded
area in the meeting planner.
Date Format Date format preference. For example, select mm/dd/yyyy to see the date
in Month/Day/Year format.
Time Zone Each individual user's time zone can be set. There are 75 time zones to
select from. The one you select defines what daylight settings are used,
so you must be careful in selecting the correct zone. The zone you select
also needs to correspond exactly to your computer setting.
All times are relative to the logged on user. For example, a meeting
made at 09:00 GMT.... by one user appears at 10:00 to users in +1:00
GMT.... The time zone of the server is set by the System Administrator.
If Automatic Daylight Saving Time is checked on the server machine, it
affects all users, even if they have not selected this option themselves in
their time zone settings.
If you need to add a new time zone to the list, this can be done via <My
Profile> | Administration | Translations. For one new time zone, three
new entries should be added - one for each of the caption families
TimeZoneDelta, TimeZoneDeltaJava, and TimeZoneDeltaUTC.
Follow the exact format of the existing entries. This ensures that
functionality dependent on the time zone setting remains fully functional.
Decimal Point The preferred way to view decimal point. For example, period [.] or
comma [,].
Decimal Places The preferred number of decimal places to be displayed. For example, 2.
The maximum number of decimal places that can be set is 9.
Thousand Separator The preferred way to view the thousand separator. For example, period
[.] or comma [,].
Default Targets For High The way in which the reminder is sent out for a high priority
Priority Reminder Messages Communication, if the Send Reminder Message check box was
checked.
Default Targets For Normal The way in which the reminder is sent out for a normal priority
Priority Reminder Messages Communication, if the Send Reminder Message check box has been
checked.
Default Targets For Low The way in which the reminder is sent out for a low priority
Priority Reminder Messages Communication, if the Send Reminder Message check box was
checked.
Output
Tip: For Excel CSV, if a field contains <tab> or <CR LF> these characters are not present in the
exported file.
Amount of days to password Specifies the maximum Sage CRM user password age in days. When
expiring this period expires, the user must change their Sage CRM password.
The default password age is 50 days.
Use Dynamic Password Enables or disables optimum user password hash strength.
Hash Cost
l Yes (default). Enables optimum password hash strength based
on the Sage CRM server hardware capabilities. Provides
increased security but consumes more system resources
because it increases the number of hashing rounds used to
generate a password hash.
l No (not recommended). Disables optimum password hash
strength. Provides weaker security (less hashing rounds) but
frees up system resources. System administrators might want to
set this value to speed up the system performance. For example,
when there is a significant number of simultaneous Sage CRM
user logons.
Allow User Preferences Specifies whether Sage CRM users are allowed to access <My Profile>
| Preferences.
Account Lockout Threshold Specifies the number of times a user is allowed to enter an incorrect
password when logging on to Sage CRM.
When this number is exceeded, the user's account is locked out in Sage
CRM. The system administrator can unlock the account or the user can
wait until the account lockout period (if any) expires.
Account Lockout Duration The number of minutes a locked-out user has to wait before trying to log
(Mins) on to Sage CRM again.
User Inactivity Timeout The inactivity period (in minutes) after which a user is automatically
(Mins) logged out of Sage CRM.
Sage CRM uses the value in this field only if it is less than the value in
Idle Time-out (minutes) specified for the Sage CRM application pool in
Microsoft Web Server (IIS). The default idle time-out value set for the
Sage CRM application pool is 120 minutes.
Use IIS Auto Login Yes. Enables automatic login to Sage CRM for authenticated Windows
users. Users are authenticated by Web Server (IIS) and don't need to
enter Sage CRM credentials when accessing Sage CRM.
No. Disables automatic login.
Default Domain For IIS Login Specifies the NetBIOS name of the Active Directory domain whose
users are automatically authenticated when Use IIS Auto Login is set to
Yes.
Allows you to prevent unauthorized external access to Sage CRM. If you
leave this field blank, Sage CRM users are matched to their Windows
user accounts using their complete domain\user name combination.
For example, a user called Susan Maye with Windows user account
mayes in the domain mydomain, has a Sage CRM account name
mydomain\mayes. If you have only one domain, enter the domain name
in this field. For example, if mydomain is your only domain, enter
mydomain in this field and the Sage CRM logon ID for Susan Maye is
mayes.
Plugin Version The path and name of the current Sage CRM Plugin file. The current
Sage CRM Plugin resides on the Sage CRM server and is downloaded
if the client-side value does not match the value specified in this field.
Outlook Plugin Version Specifies the Classic Outlook Plugin version. Use this field to manually
update the Outlook Plugin version after installing an Outlook Plugin
patch.
Outlook Integration Options l Classic Outlook Integration. Displays a button that lets the user
install the Classic Outlook Plugin and use Classic Outlook
Integration.
l Lite Outlook Integration. Displays a button that lets the user
install the Lite Outlook Plugin and use Lite Outlook Integration. If
Exchange Integration is enabled, the Lite Outlook plugin provides
additional functionality to the Exchange Integration.
l Both. Displays both the Classic Outlook button and the Lite
Outlook button on a 32-bit system. It displays only the Lite
Outlook button on a 64-bit system. Only one plugin can be
installed.
l None. Prevents the user installing the Classic Outlook Plugin or
the Lite Outlook Plugin because no plugin buttons are displayed.
One Way Synchronization Specifies the direction in which data is synchronized between Outlook
and Sage CRM in Classic Outlook Integration.
When you change this value, users must restart their Sage CRM session
in Outlook and initiate synchronization for the change to take effect.
Synchronize Outlook Specifies whether to delete appointments, tasks, and contacts in Sage
Deletions CRM when they're deleted in Outlook. The items are deleted in Sage
CRM during Outlook synchronization.
Manage CRM and Outlook Specifies how to resolve data conflicts between Outlook and Sage
Updates CRM when bidirectional synchronization is enabled (One Way
Synchronization is set to No). To view conflicts, use the View Conflict
Log in Outlook.
Synchronize Outlook Tasks Enables or disables the synchronization of tasks between Outlook and
Sage CRM.
Auto Sync (In Minutes) Specifies the number of minutes at which automatic synchronization
between Outlook and Sage CRM occurs.
Auto-Logout Automatically logs a user out of Sage CRM when they close the web
browser window or go to another web site.
Default User Date Format The default date format for all Sage CRM users.
For example:
mm/dd/yyyy
Month/Day/Year
Individual users can override the default date format in their user
preferences.
Use Fileit Enables automatic filing of Outlook emails using a mail manager server
filing address. For more information, see Email Management.
Enable Security For Groups Enables Sage CRM user security profiles and policies for groups.
Note: Automatic login is supported for Microsoft Internet Explorer, Google Chrome, and Mozilla Firefox.
Before you start, ensure that user names in Sage CRM are identical to their counterparts in Active Directory.
For more information about Active Directory, see Active Directory Domain Services on docs.microsoft.com.
Sage CRM automatic login uses the Windows Authentication feature in Web Server (IIS). When Web
Server (IIS) authenticates a Sage CRM user, that user is looked up in the User table in the Sage CRM
database.
1. Join the Sage CRM server to the Active Directory domain where Sage CRM users reside.
2. Enable IIS auto login in Sage CRM:
a. Log on to Sage CRM as a system administrator.
b. Go to <My Profile> | Administration | Users | User Configuration.
c. Click Change .
d. Set Use IIS auto login to Yes.
e. In Default domain for IIS login, enter the NetBIOS name of the Active Directory domain
where Sage CRM users reside.
f. Click Save.
Warning: Incorrectly editing the registry may cause irreversible damage. Back up any valued
data on the Sage CRM server before making any changes to the registry.
Now the users need to enter their user names and passwords set in Sage CRM to log in.
The Administrator Reports category is available to System Administrators only. To allow Info Managers
access this category, change the properties of the report category in Advanced Customization.
l Security profile: A profile is a way of grouping users when defining access rights to view, update,
insert, and delete Sage CRM records. For example, you can create a profile called Sales with rights
to view, update, and insert company, person, communication, and opportunity records and with
view only rights to cases. You can assign this profile to all sales users. Any changes that you make to
the profile automatically apply to all users assigned to it.
l Territory: You can divide user rights by territory. For example, you may want users in the Europe
territory to view all opportunities within the USA territory, but not to be able to update them.
Territories act as a silent filter over existing security profiles. For example, if a security profile doesn't
include view rights to opportunities, a user with that profile can't see any opportunities, no matter
what territory they belong to. Territories affect searching, reporting, and groups generation. To
switch off the influence of territories on groups, click <My Profile> | Administration | User
Configuration and set Enable Security for Groups to No.
l Security policy: You can set up additional security rights to handle complex inter-territory situations
and exceptions. When settings on the Security Policies screen are enabled, additional options are
available on the Security Profiles screen. Security policies act as logical ORs to existing security
profile and territory settings.
Security profiles
l Adding a new security profile
l Assigning a security profile to a user
A user must have edit rights on an entity to add or edit address, phone and email, notes, and library records
for that entity. For example, a user with view rights only on a company, cannot edit or add information in the
Addresses or Phone and Email tabs of that company. Similarly, a user with view rights only on cases, cannot
edit or add notes or library items on an existing case.
Alternatively
To get an overview of security rights currently applied to the user, click <My Profile> | Administration |
Users. Click the user link and click the Security tab.
Territories
l Adding a new territory
l Assigning a territory to a user
l Adding records to a territory
l Editing a territory
l Deleting a territory
l Merging territories
l Moving a territory
l Rebalancing the territory tree
The standard capacity for a territory structure is 16 child territories on each territory, and five territory levels
deep. A complex territory structure may require the expansion of the standard capacity. If you try to add
more territories than the standard capacity, you're prompted to rebalance the territory structure.
Rebalancing updates the territory hierarchy and associated security rights, and allows you to continue
adding territories. For more information, see Rebalancing the territory tree.
When a record is and no Territory entry has been selected by the user, when the user saves
inserted in the the new record, the Territory field of the new record defaults to the territory
context of ... of [1].
If the user does NOT have INSERT RIGHTS in the territory of [1], the
Territory field of the new record defaults to the territory of [2].
If the user does NOT have INSERT RIGHTS in the territory of [2], the
Territory field of the new record defaults to the territory of [3].
If the user does NOT have INSERT RIGHTS in the territory of [3], the
Territory field of the new record will defaults to the territory of [4].
No Assigned To Created by
(user’s Home
Territory)
Editing a territory
You can change the name of an existing territory.
Deleting a territory
You can delete a territory that's not involved in current transactions or does not contain sub-territories. You
can't delete a territory that has records assigned to it, and you can't delete the Worldwide territory.
Merging territories
You can merge territories, and the information and rights associated with those territories. You might want
to do this to reflect changes in your organization. Before you merge territories, ensure there are no users
logged on to Sage CRM, and that you've backed up the Sage CRM database.
Moving a territory
Moving a territory to a new position in the tree structure can expand or restrict the rights of users associated
with the territory. Before you move a territory, ensure there are no users logged on to Sage CRM, and that
you've backed up the Sage CRM database.
Before rebalancing, back up the Sage CRM database and ensure all users are logged off Sage CRM.
Inform users when rebalancing will occur and ask them to remain logged off for the few minutes that
rebalancing takes. To check if all users are logged off, open the Current Activity tab. For more information,
see Viewing user activity for all users. You can manually force users to log off. For more information, see
Locking the system.
Security policies
l Working with cross territory situations
l Allowing absolute territories in profiles
l Using sibling territories
l Using a parent territory
l Allowing direct rights in territories
Password policies
l Configuring password policies
l Password Policies options
l Configuring a list of words that cannot be set as passwords
Tip: To set user profiles, click <My Profile> | Administration | Users | Users | User Details
and select a value in Administration.
Option Description
Minimum length of password Sets the minimum user password length in characters.
To disable all Password Policies options, set this field to 0.
The maximum user password length is 20 characters.
Require complex password When this check box is selected, the user password must contain all of
the following:
You can select this check box only when Minimum Length Of Password
is set to 8 characters or more.
Check User Name When this check box is selected, users cannot set password that is
identical to their user name spelled normally.
You can select this check box only when Minimum Length Of Password
is set to 1 character or more.
Strong User Name When this check box is selected, users cannot set password that is
identical to:
You can select this check box only when Check User Name is selected.
3. Save Dictionary.txt and copy it to the following location on your Sage CRM server: <Sage CRM
installation folder>\WWWRoot.
l Tracking communications by team. John Finch is a user in your organization assigned to the
Telesales team. Every time John Finch creates a new Communication, the Team field defaults to
Telesales. The telesales manager can use Team CRM to view all the activities for John Finch and
other members of the Telesales team for the day.
l Creating tasks for teams. The customer service manager in your organization can use groups to
set up an outbound telephone campaign to the active customer base. By leaving the User field
blank, but filling in the Team field in the task details, the calls are scheduled for the whole team.
l Assigning an opportunity to a team. Sales opportunities can be assigned to teams. This means
that the overall performance of, for example, the Direct Sales vs. the Business Partner team can be
compared on a deal-by-deal basis. By tracking team performance on the Opportunity and
Communication level, additional information can be extracted to improve future sales performance.
l Reassigning unresolved cases. Your company is in the insurance business. Cases are used to
handle automobile, home, life, and travel insurance claims. Your customer service teams are set up
by type of insurance. The travel claims team is overloaded after the recent holiday season, however
the home insurance team has spare resources. Following a team leader meeting, the travel claims
team leader clicks <My Profile> | Team CRM | Cases and reassigns half of the unresolved claims
to the three available claims handlers in the home insurance team by changing the user name in
Assigned To.
Team fields
The table below explains the standard fields on the Team page.
Field Description
If you change the name of a team after you've created and saved it, you
must manually change the translated caption. This caption is displayed in
team list drop-down fields. Click <My Profile> | Administration |
Customization | Translations and enter Channels in Caption Family.
Broker Rule The Broker Rule is used when creating a task for a group. If you pick a
team and don't explicitly pick a broker rule, the system uses the broker
rule from the team if there is one. If there is none, the default is Queue.
For more information, see Campaign Management in the User Guide.
The Broker Rules are explained in Scheduling a Call Back.
Importing users
User Requirement: System Administrator
You can add users stored in Microsoft Active Directory to Sage CRM in a batch process using the Import
Users wizard.
Reimporting users
You can reimport users following changes to their details in Active Directory.
Field Description
LDAP Server Name Server name or server IP address of the server where Active Directory is
configured.
LDAP Server Port Port number. If this field is left blank, then 389 is the default port used.
Active Directory User ID This is a logon ID with access to navigate the Active Directory tree. For
example, testID@testdomain or testdomain\testid. The logon is the
UserPrincipalName attribute taken from the Active Directory user's
properties.
Active Directory User Password for the logon ID specified in the Active Directory User ID field.
Password
Remove Existing CRM Selected by default. Remove selection if you want to view and select
Users From The List users already in Sage CRM.
User List List of users from the data source chosen in step 1. This list can be
modified by using the Filter fields, the Select / Deselect buttons, and the
check boxes next to individual users. The Select/Deselect buttons apply
to the current filter. Please also note that the filtering in Step 2 applies to
the data source selected in Step 1 (it is not re-querying Active Directory
each time).
Licensing Shows the number of seats available and number of users selected. In a
Named User install, an error message is displayed if the number of
licenses is exceeded. "Seats available" refers to the number of licenses
minus the number of current active (does not include resources) users. If
concurrent licensing is being used, this panel gives you the option to
import users as either named or concurrent licenses. It will show the
remaining seats available (total licenses minus named users).
Generate Random Random passwords are generated which follow the rules set in <My
Password Profile> | Administration | Users | Security | Password Policies.
Please see Configuring password policies for more information.
Include Generated Password Password will be included in the welcome email. If this is not selected,
In Welcome Email the System Administrator must notify users separately of their password.
If the Generate Random Password option has been selected but the
welcome email option is not selected, the System Administrator must
reset the password in Sage CRM and notify users separately.
This setting is not available if IIS Auto Login is enabled (from <My
Profile> | Administration | Users | User Configuration).
Use The Same Password Sets the same password for all users in the import.
For All Users
Password Enter a common password for all users in the import. The password
must conform to the rules set in <My Profile> | Administration | Users |
Security | Password Policies.
Overwrite Existing User Data in the mapped fields is overwritten. Please see Active Directory
Details mapping for a list of the mapped fields. All other Sage CRM properties,
including the password, remain unchanged.
Select User Template Select a user template. New templates can be added in <My Profile> |
Administration | Users | User Templates. Please see User templates
for more information.
Resource Read-only. All users are imported with the Resource field set to False.
Send Welcome Email To Select to send a welcome email to users. A mail server must be available
New Users and configured in <My Profile> | Administration | Email And
Documents | Email Configuration. Please see Email/SMS settings for
more information.
If you are using Email Manager, the welcome email does not get filed by
the mail manager filing service.
Select Email Template A standard template for the welcome email is supplied. This includes
"tokens" for the Sage CRM user name logon ID, password, and a link to
access the system. The tokens are specially formatted so that they
cannot be reused anywhere else in the system (for example, document
templates). The tokens are:
%CRMLogin% - The Sage CRM user name logon ID, for example,
mayes.
givenName user_ No
firstname
When an import is repeated, and the option to overwrite existing Sage CRM user data is selected, only data
in the mapped fields is overwritten.
When you've defined the default user template, you can create other user templates based on the default
template. The number of user templates you can create is not limited by your number of user licenses.
Field Description
Template Name The name of the new template. For example, Sales User.
Based on Template The existing template on which the new template is based.
Primary Team The default team that's displayed when the user clicks Team CRM.
Field Description
Language Preferred language. Each user sees the same underlying data in the
database, however the buttons, field names, and captions throughout
the application appear in the user's selected language.
User SMS Notification If SMS features are used, setting this to True allows a user to be sent an
SMS notification message to their mobile phone when communications
are created for them. The Mobile Email Address field must be correctly
filled in for this to work.
Display Team The team queues that the user can view from Team CRM.
Forecasting - Reports To Sales manager or direct report, who can access the selected user’s
forecast. For more information, see Sales Forecasting in the User Guide
.
Change the profile currently associated with a template using Profile Name in the Template Details tab.
For more information, see Changing template details.
l Deduplication
l Data Upload
l Products
l Multicurrency support
l Sales Forecasts
l Related entities
l Groups
l Deleting documents and communications
l Reports
l Standard classic dashboards
About deduplication
Deduplication aims to prevent the user from adding duplicate entries by searching for similar entries and
warning the user before the new record is added. You can use the Merge functionality, described in the User
Help, to clean the data if duplication has already occurred.
Deduplication is enabled by default if you select Install demo data during the Sage CRM installation. If you
don't select this option, deduplication is disabled by default.
When deduplication is enabled, Sage CRM searches for duplicate records on Company, Person, Lead and
Account entities. Deduplication on these entities is based on the following fields and associated match rules:
Enabling deduplication
1. Click <My Profile> | Administration | System | System Behavior.
2. Click Change. The System Behavior page is displayed.
3. Ensure that Deduplication is set to Yes.
4. Specify where the Lead deduplication rules look for matches in Deduplication Rule.
l And: The rules look for matches on both the Lead Company Name and Lead Person Last
Name fields.
Before you use deduplication on Company or Person records, you can further customize the deduplication
screens and set up match rules for the entities on which you want deduplication to work. When deduplication
is enabled, two match rules are configured by default for the Lead Company Name and Lead Person Last
Name fields on the Lead deduplication screen so you don't need to customize this screen or set up match
rules.
You can customize deduplication screens. For example, you can add fields from the Address, Person, and
Company tables to the Company Dedupe Search Screen. This is usually a subset of core company
information such as Company Name, Address 1, and Zip Code.
When deduplication is enabled, two match rules are configured by default for the Lead Company Name and
Lead Person Last Name fields on the Lead deduplication screen so you don't need to customize this screen
or set up match rules.
In addition, when you click Add Contacts in Microsoft Outlook to add contacts to Sage CRM, the match rules
applied to the Sage CRM fields are applied to the corresponding Outlook fields, triggering a warning if
duplication is detected.
To set up a Dedupe Search Screen for the Person entity, click Primary Entities | Person | Screens, and
click the Edit icon beside Person Dedupe Search Screen.
When you're setting up match rules, you should consider the following:
To set up the match rules for the Company Dedupe Search Screen:
Exact For example, a user must enter Design Right Inc. for the system to
detect a duplicate with Design Right Inc.
Starting With For example, a user must enter Des or Design for the system to detect a
duplicate with Design Right Inc.
Contains For example, a user could enter Des, Right or In for the system to detect
a duplicate with Design Right Inc.
Does Not Match For example, a user could enter Design Right Inc., and the system would
detect duplicates in every company except Design Right Inc.
Phonetic For example, a user could enter Greatecom, and the system would
detect a duplicate with Gratecom.
Note: The rules are applied in the order they are listed.
Sage CRM applies the rules in the remove list first, and then applies the rules in the replace list.
For more information about the remove list, see Creating a Company Name Cleanup remove
list.
Note: The rules are applied in the order they are listed.
Sage CRM applies the rules in the remove list first, and then applies the rules in the replace list.
For more information about the replace list, see Creating a Company Name Cleanup replace
list.
Note: When you import leads into Sage CRM, they are not automatically added into a workflow.
However, if your Lead workflow is designed like the default Lead workflow with transition rules that hang
from the entry state, action buttons are displayed on the Lead screen that allow users to progress leads.
Sage CRM
csv
Deduplication
settings Leads
xlsx
Companies
Mapping
User settings
People
xls
Microsoft SQL Se
Data Upload database
file
Data Upload is enabled by default after Sage CRM installation. This feature is available to System
Administrators and Info Managers who have Info Admin Data Rights in Sage CRM. The account used to
perform data upload must have View, Edit, and Insert access rights on the target entity type.
To upload data to Sage CRM, you need to prepare a data upload file (CSV, XLS, or XLSX) containing the
records you want to add, and then specify that file in the Sage CRM user interface.
The system prompts you to configure a number of Data Upload settings, including:
l Deduplication settings. Add rules to detect if the records you are uploading to Sage CRM already
exist in the database. If they do, Sage CRM prompts you to merge your data into the existing
records, overwrite the existing records with the new ones, or skip duplicate records without adding
any data to Sage CRM. You can add deduplication rules only if advanced deduplication is enabled in
Sage CRM. Advanced deduplication is enabled automatically if you have included demo data in
your Sage CRM installation. Otherwise, advanced deduplication is disabled and you need to enable
Once you have configured and applied the deduplication and mapping settings, Sage CRM uses them to
add your new records to the Microsoft SQL Server database. Sage CRM generates a report and log files
that contain information about the data upload results and help you to identify and troubleshoot any issues if
they occur.
If you don't have sufficient permissions to create full backups of the Sage CRM database, ask your
SQL Server database administrator to back up the database for you.
To create a full backup of the Sage CRM database, you can use Microsoft SQL Server Management Studio.
In this example, we'll use Management Studio supplied with SQL Server 2014 to back up the Sage CRM
database.
Now you can add new records to the database using the Data Upload feature. You can always revert to the
previous version of the database using the full backup you have created.
l View
l Edit
l Insert
l View
l Edit
l Insert
Lead l View
l Edit
l Insert
Person l View
l Edit
l Insert
l Comma-separated values (CSV) (recommended). Unlike Excel Workbook (XLSX and XLS) files,
CSV files don't store any complex formatting, formulas, and filters that might prevent your data from
uploading correctly. Make sure to use the delimiter specified in the Sage CRM system behavior
settings (by default, this is a comma).
l Excel Workbook (XLSX) or Excel 97-2003 Workbook (XLS). Your file shouldn't contain any
complex formatting, formulas, filters, and errors in cell values, because they might prevent data from
uploading correctly. Data Upload can work with XLSX and XLS files created by Microsoft Excel
supplied with Microsoft Office 2010 or later.
The most convenient way to prepare a Sage CRM-compatible data upload file is using Microsoft Excel. For
detailed information about the requirements your file must meet, see Data upload file requirements.
2. In row 1, enter the captions of the Sage CRM fields into which you want to add data. The fields you
specify in your file must exist in the Sage CRM database.
Using field captions as column headings helps Sage CRM to automatically map each file column to
the corresponding field in the database. If necessary, you can review and manually change these
mappings later before running your data upload.
3. Enter the records to be uploaded. For more information and examples, see Data upload file
requirements.
4. Save the workbook as a CSV, XSLX, or XLS file.
Regardless of what type of records you are uploading, your file must meet the requirements listed in the
table below.
l Lead
l Company
l Person
Requirement Comment
The file name must be less This excludes the file path.
than 60 characters long.
Each column in the file must Using actual field captions as column headings in your data upload file
have a unique heading and helps Sage CRM to automatically map each file column to the
be mapped to an existing corresponding field in the database. If necessary, you can review and
field in the Sage CRM manually change these mappings later before running your data upload.
database.
The fields you populate don't need to be added to a Sage CRM screen,
but they must exist in the Sage CRM database.
Your file must contain a valid Required fields are those you must fill in to create a new record in Sage
non-empty value for each CRM. Such fields are marked with a blue asterisk in the Sage CRM user
required field in Sage CRM. interface, for example:
If you don't populate each required field with a valid non-empty value, the
entity record is not created in the Sage CRM database during data
upload.
l Lead
l Company
l Person
The maximum number of If you want to upload more than 5000 records, consider creating several
rows (records) in your data data upload files.
upload file shouldn't exceed
5000.
Do not upload data from the This can lead to creation of duplicate records in Sage CRM. If something
same file two or more times went wrong during your data upload, review the data upload report, logs,
in a row. and errors file before retrying to upload data.
If you are using a CSV file, l Any values that contain a comma must be enclosed in double
make sure to escape special quotes.
characters in the values.
l Any values that contain double quotes must be escaped with
another double quote.
If you are using an XLS or We recommend that you save your XLS or XLSX file as CSV and then
XLSX file, make sure it uplod the CSV file to Sage CRM.
doesn't contain cells
formatted as dates.
All dates in your data upload For example, DD/MM/YYYY, MM/DD/YY, or MM/YYYY.
file must have an identical
format. If your file contains dates in different formats, Sage CRM won't be able
to correctly process your data.
Each cell in a data upload file You can write information stored in a multivalued column cell to multiple
column can contain multiple fields located in the same Sage CRM database table.
values.
For more information, see Mapping multivalued column cells.
The data format used in multivalued cells must be consistent in your data
upload file. Note that Sage CRM cannot process surnames that have Mc
or O' prefixes or include blank spaces.
Each record (row) in your When adding multiple addresses to the same row, make sure to assign a
data upload file can include different type to each of the addresses. For example, Home and
multiple addresses or notes. Business.
If your data upload file We recommend that you modify the values of multiselect fields in the
contains values for Sage CRM database so that they don't contain spaces.
multiselect fields, these
values should not contain When specifying values for a multiselect field in your data upload file, use
spaces. a comma as a separator.
Lead
Description lead_description
Assigned to lead_assigneduserid
Email lead_personemail
In row 1 of the data upload file, enter the captions of the required Sage CRM fields and any optional fields
you want to populate with values.
If you want to assign all lead records to one user, omit the Assigned to column in the data upload file: you
can select that user later when specifying your data upload settings. For more information, see Settings for
leads.
If you want to assign lead records to different Sage CRM users, add the following two columns to the file:
- Assign to. Specify the logon ID or email address of the Sage CRM user to whom you want to assign the
lead record.
- Team. Enter the name of the primary team to which the user belongs, as it appears in the Sage CRM user
interface.
Then, enter the lead records to be uploaded. Each row must contain one lead record only. Each lead record
(row in the file) must include one company and one person.
Company
Address 1 addr_address1
In row 1 of the data upload file, enter the captions of the required and any optional Sage CRM fields you
want to populate with values. Then, enter the company and person records to be uploaded.
Each row must contain one person record only. If you want to add another person associated with the same
company, use a different row and enter the same company details for that person record. The first person
specified for a new company in the file automatically becomes the main company contact. You can change
the main company contact later in the Sage CRM user interface.
Each company you upload must have an address. If you don't map a column in the data upload file to the
company address field in Sage CRM, the address of the first person specified for the company in the file
If you specify the same address for multiple person records in your data upload file, a single record is created
for the address in the Sage CRM database. Then, this address record is linked to the person records. Any
updates made to that address record in Sage CRM apply to all person records linked to that address.
Person
Address 1 addr_address1
In row 1 of the data upload file, enter the captions of the required and any optional Sage CRM fields you
want to populate with values. Then, enter the person records to be uploaded. Each row must contain one
person record only. All data for each person record must be entered in the same row.
1. Log on to Sage CRM as a System Administrator or Info Manager with Info Admin Data Rights.
2. Click <My Profile> | Administration | Data Management | Data Upload.
3. Under Data Upload, click one of the following, and then click Continue. If you don't have the
Required security profile rights, some or all of these options may not be available.
l Company. Uploads company records with linked person records.
l Individuals. Uploads person records not linked to any companies.
l Lead. Uploads lead records.
4. On the Lead Data Upload page, click New.
5. Configure the following upload options. For more information about other options you can configure
on this page, see Data upload file settings.
l Data File. Specify the data upload file you have prepared.
l Description. Enter an informative description for your data upload. Sage CRM uses this
description to identify your data upload in the user interface.
6. Click Save. If prompted, confirm that you want to copy the file to the Sage CRM server.
The upper table on the page shows the data upload file columns that are currently mapped to Sage CRM
fields. Use this table to view the mappings and change them if necessary.
This table has the following columns:
l Data File Column. Shows column names in the data upload file. You can click a column name to
change the column's mapping.
l Dedupe Rule. Shows the deduplication rule configured for each column. Currently this column is
empty – you'll configure deduplication rules later in Step 4: Configure deduplication.
l Sample Data. Shows the first value contained in the data upload file column.
l Field Name. Shows the UI caption of the Sage CRM field to which the data upload file column is
mapped.
l Actual Field. Shows the code of the Sage CRM field to which the data upload file column is
mapped.
The lower table on the page lists data upload file columns not mapped to any Sage CRM fields yet.
Use this table to manually map the columns. Values in the columns that remain unmapped are not added to
the Sage CRM database during data upload.
1. Under Fields not mapped yet (will be ignored), click the column name.
2. Configure mapping settings. For more information, see Mapping and deduplication settings.
3. When you're finished, click Save.
For more information on how to map columns that contain multivalued cells, see Mapping multivalued
column cells.
If each cell in a data upload file column contains multiple values, you can map that column to multiple Sage
CRM database fields. As a result, column values are inserted into the corresponding Sage CRM fields
during data upload.
The fields to which you write data from multivalued cells in your data upload file must be located in the same
Sage CRM database table.
The format of values in a file column must be consistent. Otherwise, Sage CRM won't be able to correctly
process data in the column.
For example, if the Last and First Name column contains first name and last name, you can map this
column to the appropriate Sage CRM fields as follows:
e. Click Add.
As a result your format mask should look as follows:
#pers_lastname#, #pers_firstname#
5. Click Save.
You can assign territories to the records being uploaded. To do so, in your data upload file, create a column
(Territory) containing the Sage CRM territories you want to assign. Make sure the territory names in your
file exactly match the territory names in Sage CRM.
Then, map the Territory column to the appropriate Sage CRM field, for example, Lead : Territory,
Company : Territory, or Person : Territory.
If you don't assign any territory during Data Upload, the territory of your Sage CRM user account is
automatically assigned to the records.
We recommend that you upload data with advanced deduplication enabled. In this case, you have better
control over the data that is written to the Sage CRM database. For more information, see Enabling
deduplication.
For each data upload file column, you can configure only one deduplication rule. You can configure
deduplication rules for columns containing multivalued cells in the same way as for columns containing
single-valued cells.
With advanced deduplication enabled, you must configure the following minimum deduplication rules:
1. In the Data File Column, click the name of the column for which you want to add a deduplication
rule.
2. From Dedupe Rule, select the value you want to use.
Repeat these steps for each column for which you want to add deduplication rules.
Lead
Set the Exact Match deduplication rule on company name, person's last name, and person's first name.
Company
Set the Exact Match deduplication rule on company name, company address, person's last name, and
person's first name.
Person
Set the Exact Match deduplication rule on first name and last name.
1. Click Preview Data Upload to display a list of records to be created in Sage CRM.
2. If necessary, configure how you want to process duplicates during data upload.
For more information, see Preview and duplicate settings.
3. Click Do Upload to start your data upload and create the new records in the Sage CRM database.
When your data upload is finished, Sage CRM displays the Data upload results.
If your Data Upload has erroneously created redundant records with empty fields, you can use a SQL query
to remove these records from the Sage CRM database. For example SQL queries, see Removing
redundant records.
You can use a SQL query to delete redundant records that were erroneously created in the Sage CRM
database. For example, redundant or incomplete records can be created if you uploaded data with
advanced deduplication disabled. This section provides example SQL queries you can use to delete records
whose required fields are blank.
The following query searches for and removes person records whose Last Name and First Name fields are
blank.
PEOPLE!
delete from phone where phon_phoneid in (select phon_phoneid from vPersonPhone where
plink_recordid in (select pers_personid from Person where pers_lastname is null and
pers_firstname is null))
delete from email where emai_emailid in (select emai_emailid from vPersonEmail where
elink_recordid in (select pers_personid from Person where pers_lastname is null and
pers_firstname is null))
The following query searches for and removes address records whose Address 1 field is blank.
ADDRESSES!
Option Description
Data File Browse to select the data upload file you want to use.
When you open a previously saved data upload, this option shows the
selected data upload file name and it cannot be changed.
When you open a previously saved data upload that was run and
generated errors or duplicate records, the following additional options
are available:
l Use Data File. Reruns data upload using the original data
upload file.
Warning: Use this option with extreme caution, as it may create
duplicate records or overwrite data on your system.
l Use Error File. Reruns data upload only for those records that
generated errors during the last data upload attempt.
l Use Duplicate File. Reruns data upload only for duplicate
records that were detected during the last data upload attempt.
l View Error File. Opens the data upload error file generated
during the last data upload attempt.
Select From Existing Allows you to reuse column to field mappings configured for previous
Mappings data uploads.
You can use this option if your new data upload file has the same
columns as one of the files you uploaded previously.
Sage CRM uses this description to identify your data upload in the user
interface.
File Date Format Select the date format used in your data upload file.
Note: All dates in your data upload file must have an identical format.
Merge Rule Select how you want to treat duplicate records during your data upload.
You can either merge duplicate records with the matching existing
records or completely overwrite the matching existing records with the
records from your data upload file.
Max Contacts Per Row Specify the maximum number of person records each row of the data
upload file contains.
Max Addresses Per Row Specify the maximum number of addresses on each row of the data
upload file.
Preview Rows Specify the number of data upload file rows you want to preview before
you start uploading data to Sage CRM.
Max Notes Per Row Specify the maximum number of notes on each row of the data upload
file.
Make a Group Select this check box to create a group for your data upload in Sage
CRM. The group includes all records that were created in Sage CRM
during the data upload. If you select this check box, you can use the
Groups tab in Sage CRM to view the records created by your data
upload.
Overwrite Person Default Replaces the person's default address with the one added to Sage CRM
Address during data upload. When this check box is selected, the new address is
also added as a company address.
If there is more than one address for a person in the data upload file, the
first address becomes the default one.
Map Selection Fields to When this option is selected, the system tries to match selection field
Codes translations from your CSV file to caption codes in Sage CRM. For
example, a person title of Chief Executive Officer gets mapped to the
caption code CEO, and stored in the database. If a selection does not yet
exist in Sage CRM, it gets added to the database. In this case, the
caption code will be the same as the selection.
When this option is not selected, selection list choices entered in the
CSV file as translations rather than caption codes are not added to the
database. The translation, for example, Chief Executive Officer, is
displayed on the person summary page for viewing, but not added to the
database. This means that when you select Change, you must set the
drop-down field to a selection that already exists in the Sage CRM
database.
Option Description
Data File Browse to select the data upload file you want to use.
When you open a previously saved data upload, this option shows the
selected data upload file name and it cannot be changed.
When you open a previously saved data upload that was run and
generated errors or duplicate records, the following additional options
are available:
l Use Data File. Reruns data upload using the original data upload
file. Use this option with extreme caution, as it may create duplicate
records or overwrite data on your system.
l Use Error File. Reruns data upload only for those records that
generated errors during the last data upload attempt.
l Use Duplicate File. Reruns data upload only for duplicate records
that were detected during the last data upload attempt.
l View Error File. Opens the data upload error file generated during
the last data upload attempt.
Select From Existing Allows you to reuse column to field mappings configured for previous
Mappings data uploads. This option is available only if you have uploaded lead
records at least once.
Sage CRM uses this description to identify your data upload in the user
interface.
File Date Format Select the date format used in your data upload file.
Note: All dates in your data upload file must have an identical format.
Merge Rule Select how you want to treat duplicate records during your data upload.
You can either merge duplicate records with the matching existing
records or completely overwrite the matching existing records with the
records from your data upload file.
Preview Rows Specify the number of data upload file rows you want to preview before
you start uploading data to Sage CRM.
Make a Group Select this check box to create a group for your data upload in Sage
CRM. The group includes all records that were created in Sage CRM
during the data upload. If you select this check box, you can use the
Groups tab in Sage CRM to view the records created by your data
upload.
Lead Description Enter an informative description for the lead records you are uploading.
Assign to Team Select the team to which you want to assign the lead records being
uploaded.
Do not use this option if you assign lead records using columns in your
data upload file. For more information about how to assign lead records
to Sage CRM users, see Lead.
Territory Select the territory to which you want to assign the lead records.
Assign to Users Specify the Sage CRM user to whom you want to assign the lead
records.
If you want to assign lead records to different users, create and populate
the appropriate columns in your data upload file (see Lead for details).
Then, select any user in the Assign to Users option. As a result, the lead
records are assigned to the users specified in the data upload file.
Wave Item Select the marketing campaign wave to which you want to assign the
lead records.
If you are not planning to use the lead records in a marketing campaign,
leave this option blank.
Option Description
Belongs to Select the Sage CRM entity with which you want to associate the data upload file
column.
Note: This option
is available only To associate a column with both Company and Person, select Person in this option.
when you are As a result, the column value is automatically assigned to the company record with
uploading which the person record is associated.
company or For Phone, types Business and Fax are shared.
person records.
For Email, type Business is shared.
When Belongs to is set to Person and the number of contacts in the data upload file
settings is set to more than one, the following additional option is available:
Data Table Select the table in the Sage CRM database to which you want to write data from the
upload file column.
l Addresses
l Email
l Phone
l Notes
If in Belongs to you have selected Company or Person, leave Data Table blank.
Note: Fax numbers belong to the Phone table, with the type set to Fax.
When Data Table is set to Address or Notes, and the number or addresses or
notes in the data upload file settings is set to more than one, the following additional
option is available:
l Order. Select the address or note record to which this field belongs.
Field Name Select the Sage CRM field you want to populate with values from the upload file
column.
If each column cell includes multiple values, you can insert them into several Sage
CRM fields. For more information, see Mapping multivalued column cells.
Match User Fields Specify what value on the user table you want to match when you are mapping a
column in your data file to a User Select field.
For example, if the file you are uploading contains the full user name, you can
specify "Firstname Lastname" to insert the correct User ID.
<FieldName> Allows you to assign a category to the data in the upload file column.
Type
Note: This option is available only when: Belongs to is set to Person or Company
and Data Table is set to Address, Phone, or Email.
Dedupe Rule Select a condition to detect duplicate records during your data upoload.
Clear Mappings Clears the current mapping specified for the data file column.
Option Description
Note: You can use this You can select one of the following:
option to specify the same
l Phone
source to all records being
uploaded. If you want to l Email
specify different sources
l Fax
for different records,
create a new column in l Web
your data upload file, l Letter
enter a source for each
record, and map the file l Employee
column to the appropriate l Customer Referral
Sage CRM field.
l Advertisement
l Trade Press
l Tradeshow
l Import
To create a new source and assign it to the records, select --New--, and
then complete the following additional options:
l Source Code. Enter the code with which you want to identify the
new source.
l Source Description. Enter the source name (caption) to be
displayed in the Sage CRM user interface.
Append To Log File Adds new data to the existing data upload log file without overwriting its
contents.
Overwrite Log File Completely overwrites the contents of the log file with new data.
Process Duplicates Select this option to view and process duplicate records interactively as
Interactively Sage CRM finds them during data upload.
Note: To use this option, With this option selected, when Sage CRM finds a duplicate record in
you must have advanced your data upload file, your data upload pauses and Sage CRM displays
deduplication enabled in a page that lists one or more existing records that match the duplicate.
Sage CRM.
On that page, you can do one of the following:
Once you have selected one of these actions, your data upload resumes.
Process Duplicates in Batch Select this option to automatically copy duplicate records to a separate
file and process them later. This option allows you to complete data
Note: uploads faster.
To use this option, you
must have advanced With this option selected, when Sage CRM finds a duplicate record in
deduplication enabled in your data upload file, it does not pause your data upload. Rather, Sage
Sage CRM. CRM copies the duplicate record to a separate file without writing the
duplicate record to the Sage CRM database. The duplicate file has the
same format as your original data upload file (that is, XLS, XLSX, or
CSV).
You can use the created duplicate file to interactively process the
duplicates later by selecting the Process Duplicates Interactively
option.
When you select Process Duplicates in Batch, you can use the
following additional option:
Preview Data Shows how the data will look like in Sage CRM. Use this preview to
verify that the mappings you have configured are correct and the data
will be written to the appropriate Sage CRM fields.
The first header row in the table shows the names of Sage CRM
database tables to which data will be written.
The second header row shows the names of Sage CRM fields to which
data will be written.
l View Log File. Opens the Data Upload log file. Use this file to view and troubleshoot any errors that
occurred during your data upload.
l View Error File. Opens the automatically generated file containing records that were not uploaded
to Sage CRM because of errors. This button is available only if any errors occurred during your data
upload. This file has the same format as your original data upload file (that is XLS, XLSX, or CSV).
You can fix the errors shown in the log file and use the error file to upload the records again. To do
so, select the Use Error File radio button. This ensures that information is written to the same group
you used for the original data upload.
l View Duplicate File. Opens the file containing the duplicate records that were not uploaded to
Sage CRM. This button is available only if you have selected to process duplicates in batch in
Preview and duplicate settings and Sage CRM found one or more duplicates during data upload.
This file has the same format as your original data upload file (that is, XLS, XLSX, or CSV). You can
use the created duplicates file to interactively process the duplicates later.
l Group Created. Indicates that a group was created in Sage CRM for your data upload. To view the
created group, click the hyperlink next to this element (on the example screenshot above, this is
Import from Companies.csv).
Before retrying your data upload, review the log, error, and duplicate files generated by Sage CRM. On a
Sage CRM server, you can find these files in the following default location:
%ProgramFiles(x86)%\Sage\CRM\CRM\DataUpload
With the default configuration settings, you can set up Products and Product Families, and configure
Products, in the following order:
1. Setting up Products
2. Setting up Product Families
3. Configuring Products
4. Product configuration fields
Setting up Products
1. Click <My Profile> | Administration | Data Management | Products.
2. Click the Products tab and click New.
3. Type the name of the product in Product Name.
4. Type the code for the product in Product Code.
5. Click Save and then click Change.
6. Add a price for the product. You can add prices for all currencies specified on the Product
Configuration tab. Users can create Quotes and Orders and add Line Items to them based on the
prices and currencies included in the pricing matrix. If prices haven't been specified for Products in a
particular currency, users cannot add the product (in that currency) to a Line Item.
7. Click Save and then click Continue.
When a user adds a Line Item with this pricing system, they select the product they want using the Product
search select field, the List Price and Quoted Price fields are completed automatically.
Configuring Products
Product configuration settings determine how Products are set up and how end users work with them.
Upgrade Products on the Product Configuration page transfers existing opportunity items to the Products
tab. This button is available only if you've upgraded from a previous version of Sage CRM. For more
information, see Working with Opportunity Items .
Use Pricing Lists Allows you to create different pricing lists so that products can be sold at
different prices. For example, you may want to set up a Wholesale
pricing list and a Retail pricing list. If set to No, there is one price for each
product.
Once you have created Price Lists and applied them to Products, you
cannot disable this option until you deactivate the Price Lists.
Note if you set this option to No, the Price Lists tab will not be visible after
you click Save.
Use Units Of Measure When set to Yes, products can be sold in single units or in different
multiples, for examples packs of 6 and packs of 12. Pricing can be then
applied to the Unit of Measure (UOM). If set to No, prices are applied to
single products only.
Note if you set this option to No, the Units of Measure tab will not be
visible after you click Save.
Order Level Discount When set to Yes, adds an order level discount section to the Quote and
Order screen. This enables users to apply a discount to an entire order,
not just to individual line items.
Sales Currencies Supported Select the system currencies that products can be priced in. An
Opportunity and all associated Quotes and Orders will be in the currency
that was selected for the first Quote or Order created. This field is
available only on accounts that support multiple currencies. To enable
this field, click Data Management | Currency Configuration and set Is
Single Currency to No.
Quote Format The format of the Quote’s reference ID. This can be set up by using the
following options, along with any other text and numbers you need:
Order Format The format of the Order’s reference ID. This can be set up by using the
same options as used for the Quote Format, along with any other text
and numbers you need
Default Quote Expiration Select the number of days after the day it was created that you want
Date After quotes to expire in.
1. Configuring Products
2. Setting up Price Lists
3. Setting up Units of Measure Families
4. Setting up Units of Measure
5. Setting up Product Families
6. Setting up Products in a matrix
If you configured the system to use multiple currencies for Products, the user can also select the currency to
be applied to the Quote or Order, and all subsequent Line Items.
When the Line Item is added to the Quote, the Product Family, Product, and Unit Of Measure can be
specified. As a result, the correct price is automatically added to the List Price and Quoted Price fields. The
value Quoted Price field can be changed to provide a line discount, which will be reflected in the Line Item
Discount field when the item is saved.
Editing a Product
1. Click <My Profile> | Administration | Data Management | Products.
2. Enter the product name in the Products Find page and click Find.
3. Click the product hyperlink.
4. Click Change.
Deleting a Product
You can delete a Product that's not associated with a quote or an order. If a Product is no longer used, but is
associated with a quote or an order, you can set the status to Inactive to prevent users selecting the Product
in the future.
You can also delete a Product Family from the Product Families tab, if there are no Products associated with
the Product Family
To transfer existing Opportunity Items to the Products tab, click Upgrade Products on the Product
Configuration page.
Currency considerations
Before setting up currencies and currency fields, please note the following:
l Decide on the base currency at the beginning of your implementation and do not change it.
l Decide on a process for maintaining the currency rates against the base currency—how often, and
by whom. For some organizations, a quarterly update may be sufficient. Others may decide on daily
or weekly.
l Currency fields allow you to specify a value and a currency. The value remains the same on the
record regardless of exchange rate changes. If a customer is quoted USD 100,000 for a project, it
will remain USD 100,000. This is the value stored in the database. However, a user reporting on the
data in another currency may see a change in the project value, if the exchange rates have been
changed since the last time the report was run.
l The converted values of currency fields are calculated by triangulation. The monetary value entered
by the user is divided by the currency specified to get the value in the base currency, then multiplied
by the exchange rate specified for the user's preferred currency.
1. Set the rate of the new base currency to 1. You can't edit the details of the base currency.
2. Click <My Profile> | Administration | Data Management | Currency Configuration.
3. Click Change.
4. Select the new currency from Base Currency.
5. Click OK and click Save.
6. To confirm the base currency, click <My Profile> | Administration | Data Management |
Currency.
7. Manually change all existing exchange rates to reflect the new base.
Field Description
Description Currency description. For example, USD, EUR, GBP. The currency
description is maintained in <My Profile> | Administration |
Translations using the Caption Family CurrencyCodes.
Rate Conversion rate against the base currency. When you are adding the
base currency, set this to 1.
Forecast settings
The following table describes the fields on the Forecasts settings page.
Field Description
Fiscal Year Start Month Select the month that your fiscal year starts in from this field. For
example, if your fiscal year starts in April, your Q2 comprises July,
August, and September.
Overwritable Forecast When set to Yes, the user can override the forecast figures, which is
calculated automatically in the Forecasts tab.
Forecast Precision Specify the decimal place precision of forecast figures in this field.
You can set up relationship types to reflect many-to-many reciprocal relationships between primary entities.
Users can then define the relationships using the Relationships tab displayed on all primary entities.
Parent/Sibling Entity Select the Parent or Sibling from a list of primary entities. For example,
Person.
Child/Sibling Entity Select the Child or Sibling from a list of primary entities. For example,
Company.
Relationship Name (On The relationship name of the Parent or first Sibling Entity. For example,
Parent/Sibling Entity) Directs.
Relationship Name (On The relationship name of the Child or second Sibling Entity. For
Child/Sibling Entity) example, Directed By.
Display Color The color of the heading of the entities grouped into this relationship
type.
Note: Editing a group modifies the underlying SQL query for the group.
l A static group stores the query that generated the group and a snapshot of the records that
matched the query criteria when the group was created. Users can add additional records to the
group by rerunning the query or manually adding them through the user interface.
l A dynamic group stores only the query that generated the group contents. Each time a user opens
a dynamic group, the query is run and the group contents are refreshed.
Group information is stored as key attribute data. For more information, see Viewing key attribute data
generated by groups and Introduction to key attribute profiling.
l When a user creates a static group, a piece of key attribute data is saved with the group and the
group members.
l When a user performs an action against a static or dynamic group and selects a Parent Category
value, a piece of key attribute data is saved with the action and all records affected by the action.
l You can use the key attribute data to generate reports, create a new group, or perform a follow-up
action. For more information, see Creating a report based on key attribute data.
Note: You cannot access key attribute data for a private group. For more information, see Group fields in
the User Help.
To send mass emails as HTML and to include inline images, do the following.
For example, you can update the same field on multiple records, selectively delete records in a group, and
delete documents and communications linked to Person and Lead records in a group.
1. Ensure mass operations are enabled. For details, see Enabling mass operations.
2. Back up the database and ensure all users are logged out of Sage CRM. For details, see Locking
the system.
3. Click My CRM | Groups.
4. Click the name the group that you want to update.
Note: Search Select Advanced fields are not available for mass update.
8. Specify the new value for the field and click Save.
9. Click OK and click Continue.
1. Ensure mass operations are enabled. For details, see Enabling mass operations.
2. Back up the database and ensure all users are logged out of Sage CRM. For details, see Locking
the system.
3. Click My CRM | Groups.
4. Click the name of the group that you want to update.
5. Click Update Territory.
6. Select the new group territory from Territory name.
7. Click Save.
8. Click GO and click Continue.
You delete a document or communication for all of Sage CRM does the following:
its associated Person and Lead records in Sage
CRM. l Permanently deletes the document.
l Flags the communication as deleted. The
communication is no longer visible to the
users.
You delete a document or communication for some Sage CRM deletes only links to the document or
of its associated Person and Lead records in Sage communication from the records.
CRM.
Sage CRM keeps the document or communication
and links to other records associated with the
document or communication.
1. Ensure mass operations are enabled. For details, see Enabling mass operations.
2. Back up the database and ensure all users are logged out of Sage CRM. For details, see Locking
the system.
3. Click My CRM | Groups.
4. Click the name of the group that includes the documents and communications you want to delete.
5. To exclude Person or Lead records from the delete operation, select the Exclude check box next to
the records.
6. Click Mass Delete.
7. In the dialog box that opens, select the check boxes next to the items you want to delete.
8. Click Delete. If prompted, confirm that you want to delete the selected items.
You can display group key attribute data on the record that it is stored against so users can view and change
the data. For example, a tab containing key attribute data in the person context can display mail merges and
email blasts performed against the person, and the groups to which the person belongs. You cannot access
key attribute data for a private group. For more information, see Group fields in the User Help.
4. Bitmap lists images in the Icons folders. To select an image that displays as a button, ensure the
image is stored in the Icons folders and the Buttons folders.
l %ProgramFiles(x86)%\Sage\CRM\<CRM Instance Name>\WWWRoot\Themes\Img\
[ThemeName]\Icons
l %ProgramFiles(x86)%\Sage\CRM\CRMDPP\WWWRoot\Themes\Img\Color\Icons
l %ProgramFiles(x86)%\Sage\CRM\<CRM Instance Name>\\WWWRoot\Themes\Img\
[ThemeName]\Buttons
l %ProgramFiles(x86)%\Sage\CRM\CRMDPP\WWWRoot\Themes\Img\Color\Buttons
The context available to ASP pages and .NET extensions changes according to the current user and the
group that's accessed. The Key0 value in the URL indicates which entity is in context. For example, in
http://[servername]/
[installname]/CustomPages/Test.asp?SID=30356227028747&F=&J=Test.asp&Key0=4&Key4=4&K
ey25=111
Note: You can also delete documents and communications for multiple Person and Lead records at
once. For details, see Deleting documents and communications in a group.
You delete documents that are not linked to any Sage CRM permanently deletes the documents.
other records in Sage CRM.
You delete documents that are linked to other Sage CRM deletes only links to the documents
records in Sage CRM. from the Person record, but keeps the underlying
documents.
1. Ensure mass operations are enabled. For details, see Enabling mass operations.
2. Back up the database and ensure all users are logged out of Sage CRM.
3. Find and open the person whose documents you want to delete.
4. Click the Documents tab.
5. Click Delete All Documents, then Confirm Delete.
You delete communications that are not linked to Sage CRM flags the communications as deleted
any other Person records in Sage CRM. and the communications are no longer visible to the
users.
You delete communications that are linked to other Sage CRM deletes only links to the
Person records in Sage CRM. communications from the Person record, but
keeps the communications and links to other
Person records associated with the
communications.
1. Ensure mass operations are enabled. For details, see Enabling mass operations.
2. Back up the database and ensure all users are logged out of Sage CRM.
3. Find and open the person whose communications you want to delete.
4. Click the Communications tab.
5. Click Delete All Communications, then Confirm Delete.
You delete communications that are not linked to Sage CRM flags the communications as deleted
any other Lead records in Sage CRM. and the communications are no longer visible to the
users.
You delete communications that are linked to other Sage CRM deletes only links to the
Lead records in Sage CRM. communications from the Lead record, but keeps
the communications and links to other Lead
records associated with the communications.
1. Ensure mass operations are enabled. For details, see Enabling mass operations.
2. Back up the database and ensure all users are logged out of Sage CRM.
3. Find and open the lead whose communications you want to delete.
4. Click the Communications tab.
5. Click Delete All Communications, then Confirm Delete.
To display extended characters in PDF reports, install the Arial Unicode MS font on the client machine.
6. Reset IIS.
Creating a report
1. Click Reports | <Report Category>.
2. Click New.
Note: When you select Relative and Week in the search criteria, the report doesn't return data
for the last seven days. Rather, it returns data for the seven days prior to the start of the current
week, which is set in the My week starts on option in the user preferences.
6. Complete the Report Formatting panel fields to define how data is displayed in the report.
7. To add a chart to the report, complete the Chart Options panel fields.
8. Click Save.
Field Description
Name The name of the report. This must be unique across all users and categories.
Source View The name of the view used for the report. A view is a virtual table that pulls data
from one or more database tables and presents it in the report.
For a list of views that you can use in reports, see Report views. If a view containing
the fields that you require is not listed, you can create a new view. For more
information, see Creating a view.
When you select a view, the Select Column panel is displayed. For more
information, see Select Column panel fields and buttons.
Report Type l List displays data as a list. When you select this option, the Auto
Hyperlinking field is displayed.
l Cross Tab displays data as a grid. A row represents one field, a column
represents another field and the intersection of rows and columns
summarizes data. When you select this option, the Cross Tab Category
field is displayed.
l Historical displays data within a specified date range. When you select this
option, the In Range Field, Out of Range Field, and Date Partition fields
are displayed. For more information, see Select Column panel fields and
buttons.
Report Style The style applied to the report. Standard with grids displays grid lines on the chart
section of a report.
You can define styles and make them available from this field. For more
information, see Adding a new report style.
Rows Per Page The number of rows of data on each page of a list report that's displayed on screen.
The report header, title, and footer are not counted as rows.
Auto Hyperlinking Links are automatically created from the contents of a list report that's displayed on
screen to relevant Sage CRM records. For example, a company name opens the
company summary page. Hyperlinks are available on predefined fields only.
Show Original The currency values entered in the system are used in reports. This is available in
Currency Values multicurrency systems only. For more information, see Enabling multicurrency
support.
Currency fields are displayed in reports to the decimal precision defined in Base
Currency. For more information, see Changing the base currency. Numeric fields
are displayed in reports to the decimal precision defined in <My Profile> |
Preferences.
Select Distinct Duplicate rows are removed from the report output. For example, in a report listing
Values companies with high priority cases, the company Design Right has two high priority
cases so it appears twice. If Select Distinct Values is selected, Design Right
appears once.
Filter By Current The report contains data that's applicable to the current user only. For example, a
User Communication list report displays communications scheduled for the current user
only.
Filter By User’s The report contains data that's applicable to the current user's primary team only.
Primary Team For example, an Opportunity list report displays opportunities assigned to current
user's team only.
Filter By User’s The report contains data that's applicable to the current user's home territory only.
Home Territory For example, an Opportunity list report displays opportunities in the current user's
home territory only.
Button Description
You cannot delete fields from Search Criteria if the report has saved searches.
For more information, see Saving report search criteria in the User Help.
Advanced Find Uses Advanced Find and complex queries to create the report.
For more information, see Using Advanced Find in the User Help.
Group By columns determine the primary sort order. Sort On columns determine
the sort order within the group.
Report results are grouped by the column in Group By. You do not need to include
this column in Report Contents because Group By creates its own column as the
first left hand column of the list report.
Add Key Attribute Opens a window where you can specify key attribute values that are included in the
Data report. For example, key attribute data that tracks subscribers to a partner
newsletter. For more information, see Key attribute profiling.
Cross Tab The columns that are displayed horizontally (from left to right) in a table in a cross
Category tabular report. Report Contents defines the information displayed vertically in the
table.
This field is displayed when Report Type is set to Cross Tab. For more information,
see Report Details panel fields.
In Range Field The type of start date that determines the date range for a historical report. Your
sales process and workflow determines which date to report on.
This field is displayed when Report Type is set to Historical. For more information,
see Report Details panel fields.
Out of Range The type of end date that determines the date range for a historical report.
Field
This field is displayed when Report Type is set to Historical. For more information,
see Report Details panel fields.
Date Partition The sections in which historical report results are displayed. For example, results
for a specific month can be divided by week.
This field is displayed when Report Type is set to Historical. For more information,
see Report Details panel fields.
Field Description
Title The title displayed on the report and the name of the chart gadget on the interactive
dashboard.
If you clone a report that contains a chart, update the chart title in the cloned report.
Left Content The header appears at the very top of the report. It is divided into left, center, and
(Header) right sections.
Left Content The footer appears at the very end of the report. It is divided into left, center, and
(Footer) right sections.
Group Orders The name of each column that's included in Group By. For more information, see
Select Column panel fields and buttons.
Sort Orders The name of each column that's included in Sort On. For more information, see
Select Column panel fields and buttons.
Column For each column that's displayed in the report (except Group By columns), you can
Formatting set the column total and alignment.
Types of Functions is the column total. For numeric fields this can be Average,
Count, Maximum, Minimum, or Sum. For non-numeric fields, this can be Count
only.
Field Description
Available On Makes the chart available in the Report Charts category on the interactive
Interactive dashboard.
Dashboard
On upgraded instances of Sage CRM, this field can be named Available On
Classic/Interactive Dashboard. In this case, it makes the chart available on the
classic and interactive dashboards.
Chart Style The type of chart that's displayed. For more information, see Charts.
Legend Alignment Aligns the legend to the bottom, top, left, or right.
Value The column used for the left axis of the chart.
Label The chart label used for the left axis. If blank, the translated field name is used.
Function The totaling function used on the left field. Valid options for numeric fields are
Average, Count, Minimum, Maximum, Sum, and Value (no totaling function).
Non-numeric fields must be set to Count because the returned value must be
numeric.
Category The field used for the bottom axis of the chart.
Label The caption used for the bottom axis. If blank, the translated field name is used.
Function Allows the value of the field to be split into date ranges. This is applicable if
Category is a date/time field. For more information, see Report Details panel fields.
Label The chart label used for the line on a combination chart.
Function The totaling function used for the line on a combination chart. Valid options for
numeric fields are Average, Count, Minimum, Maximum, Sum, and Value (no
totaling function). Non-numeric fields must be set to Count because the returned
value must be numeric.
Group By Displays a separate chart for each group. This field is displayed if there is a column
in Group By. For more information, see Select Column panel fields and buttons.
Multi-Bar Displays all groups on each chart. This field is displayed if there is a column in
Group By. For more information, see Select Column panel fields and buttons.
Segment 1 Lower The starting value of the first partition in the gauge chart. This is a percentage of the
Limit % target value. For example, if your target is 100%, you might set the lower limit to
33%. Set the color of the first partition in Segment 1 Color and the name of the
partition in Segment 1 Caption.
Segment 2 Lower The starting value of the second partition in the gauge chart. This is a percentage of
Limit % the target value. For example, if your target is 100%, you might start the second
partition at 66%. The end value of the second partition is your target which is
automatically taken from your forecast for the relevant period. For more
information, see Forecasts. Set the color of the second partition in Segment 2
Color and the name of the partition in Segment 2 Caption.
Segment 3 Upper The end value of the third partition in the gauge chart. This is a percentage of the
Limit % target value. For example, if your target is 100%, you might end the third partition at
133%. The starting value of the third partition is your target which is automatically
taken from your forecast for the relevant period. For more information, see
Forecasts. Set the color of the third partition in Segment 3 Color and the name of
the partition in Segment 3 Caption.
Segment 1 Color The color of the first partition in the gauge chart.
Segment 2 Color The color of the second partition in the gauge chart.
Segment 3 Color The color of the third partition in the gauge chart.
Point
Data is displayed as a series of data
points.
FastLine, Line
Data is displayed as a series of data points
connected by straight line segments.
A FastLine chart is a type of line chart with
a very large number of data points.
Bar
Data is grouped and represented by
vertical rectangular bars whose lengths
are proportional to the values they
represent.
Area
Data is displayed as a series of data points
connected by straight line segments. The
areas between the chart axis and the line
segments are emphasized with color.
HBar
Pie
Data is represented as slices of a circle to
show the relationships of parts to a whole.
The arc length, central angle, and area of
each slice are proportional to the quantity
of data that the slice represents.
Doughnut
Pyramid
Data is grouped and represented as
stacked sections of a triangle to show the
hierarchy and quantity of data.
Funnel
Data is grouped and represented as
stacked sections of a funnel to show the
hierarchy and quantity of data.
Stacked
Gauge
Combination
Note: The account you use must have Information Manager rights.
You can use a gauge chart in many types of report. This example creates a gauge chart and adds it to an
Actual vs Target Sales report. The first step is to set up a forecast because the chart uses your forecast
target to create partitions. If you can't access the Forecasts tab, contact your system administrator. The
partitions illustrate how your actual sales compare to your forecast target. Depending on how you've
configured the chart, the first partition could indicate that you are very below target, the second partition
could indicate that you are approaching your target, and the third partition could indicate that you've
exceeded your target.
A gauge chart is also useful in a customer service report to show how you're performing against your SLA
target.
A combination chart is also useful in a Monthly Sales Trends report to show information such as the
revenue earned from sales and the number of sales that were closed in a particular period.
Report views
The following views are available for use in reports.
Account vReportAccount
Activity vUserActivity
Activity vUserActivitySummary
CallList vReportCallList
Campaigns vCampaignCommunications
Campaigns vCampaignGeneratedOppos
Campaigns vCampaignLeads
Campaigns vCampaignOpportunities
Campaigns vCampaignReturns
Campaigns vSearchListWaveItems
Campaigns vWaveCampaign
CaseProgress vCaseProgress
CaseProgress vReportCaseProgress
Cases vReportCases
Cases vReportSLACasesViolation
Communication vReportCommunication
Company vAtRiskCustomers
Company vRelaCompanyCase
Company vRelaCompanyCompany
Company vrelacompanyperson
Company vRelaEntitiesAll
Company vReportCompany
Forecast vReportForecastHistory
Lead vCampaignLeadOppos
Lead vLeadsConvertedToOpportunities
Lead vReportLead
NewProduct vNewProducts
Opportunity vConvertedLeads
Opportunity vDaysToCloseOpp
Opportunity vOpportunitiesLost
Opportunity vOpportunityPendingComms
Opportunity vOpposClosedYearOnYear
Opportunity vReportOpportunity
Opportunity vSalesVsForecast
Opportunity vTopInProgressOpportunities
OpportunityProgress vReportOpportunityProgress
Orders vMailMergeOrders
Orders vOrderOppo
Person vReportPerson
Quotes vescalationquotes
Quotes vMailMergeQuotes
Quotes vQuoteOppos
SolutionLink vSolutionCaseLinkReport
Solutions vReportSolutions
Solutions vSolutions
System vsummarylocation
System vsummarysalesperson
System vsummarytaxcode
UserContacts vReportUserContacts
Users vReportAdmin1
WaveItems vWaveItemLeadToOppos
WaveItems vWaveItemWaveCampaign
Waves vWaveItemsCampaign
Waves vWaveLeadtoOppos
Waves vWaves
1. Create a group that includes the relevant key attribute data. For more information, see Creating a
group from the Groups tab in the User Help.
l You must add the key attribute data to the Group Contents and the Search Criteria.
l To plot a chart against all data, select each option in the selection list when answering the
question 'Matches any of the values'.
l When you've saved the group, click SQL on the Group Details screen to view the
underlying SQL. Copy the SQL to the clipboard.
2. Click <My Profile> | Administration | Customization | Company.
3. Click the Views tab and click New.
4. Create a new view and paste the group SQL into View Script. For more information, see Creating a
view for reports.
l Remove DINSTINCT from the first line.
l Add CREATE VIEW <viewname> to the start of the SQL.
l Ensure Reports View is selected.
5. Click Reports | <Report Category> and click New to build a report and create graphs using the new
key attribute data view. For more information, see Creating a report.
Cloning a report
1. Click Reports | <Report Category>.
2. Click the Edit icon beside the report you want to clone.
3. Click Clone.
Managing reports
l Creating a report category
l Moving a report to a different category
l Translating a report name
l Adding a new report style
l Deleting a report
l Editing the Reports menu
l Configuring report settings
Deleting a report
1. Click Reports | <Report Category>.
2. Click the Edit icon beside the report name.
3. Click Delete.
4. Click Confirm Delete.
Tip: If you get "The size of the report is too big, use the filter criteria to reduce the size of the report" error,
use the steps above to increase the value in the Desktop size limitation (Kb) option, and then run the
report again.
You can set up a standard classic dashboard, which a user can access from My CRM | Dashboard.
1. Click <My Profile> | Administration | Users | Standard Classic Dashboards. A list of existing
classic dashboards is displayed.
2. Click Standard Classic Dashboard to create a new standard classic dashboard. The Dashboard
Details page is displayed.
3. Enter the name of the new dashboard, and fill in the fields:
l Display Contents From - select from a list of existing standard classic dashboards to base
the new dashboard on.
l Restrict To Team - select from a list of teams, if you want this classic dashboard to only be
available to, for example, the Direct Sales team.
l Set As Team Default - select if you want this classic dashboard to be the default for the
team.
4. Use the Filter By drop-down list to navigate to different categories of classic dashboard content.
5. Click Add beside the content you want to add.
l The content is added into the Narrow or Wide column lists.
l Use the up and down arrows to change the order of the classic dashboard content.
l To remove classic dashboard content, highlight the content in the column listing, then click
the minus button. Alternatively, you can navigate to the filtered list on the left-hand side of
the page, where the content is stored, and click the Remove arrow.
l Click Clear to clear all the dashboard content.
6. When you have finished adding the standard classic dashboard content, click Save. The standard
classic dashboards list is displayed, showing the new dashboard you have created.
When a user logs on and selects the Dashboard tab for the first time, and selects the Classic Dashboard
option, the standard classic dashboard is displayed.
The Company Dashboard tab can be used to display a management overview of the customer account
status .
When you defines a standard Classic Company Dashboard, it is displayed when the user first clicks the
Dashboard tab in the context of a company. The user can then customize the Company Dashboard to suit
their needs.
1. Click <My Profile> | Administration | Users | Standard Classic Dashboards. A list of existing
dashboards is displayed.
2. Click Company Dashboard to add a new company dashboard.
3. Click Continue.
4. Use the Filter By drop-down list to navigate to different categories of dashboard content.
5. Click Add beside the content you want to add.
6. When you've finished adding the company dashboard content, click Save. The standard
dashboards list is displayed.
l Email
l Exchange Integration
l Classic Outlook Integration
l Lite Outlook Integration
l E-marketing
l MailChimp Integration
l Document templates
l Library
Introduction to email
l Standard Sage CRM email functionality lets users send and record emails using the embedded
email editor or Microsoft Outlook and it creates communication records for outbound emails. The
embedded email editor and Outlook are not mutually exclusive options for sending email, you can
enable both.
l Email Management functionality is an optional extra to Standard Sage CRM email. It is a Windows
service that runs as a background process on the Sage CRM server and processes inbound and
outbound emails according to predefined business rules. It's installed automatically with a Sage
CRM installation but must be set up and customized. It works with both the embedded email editor
and Microsoft Outlook to handle outbound mail. It can also transfer information from inbound mails in
your Outlook mailbox into Sage CRM.
l Send emails directly from Sage CRM to companies and people stored in the Sage CRM database,
and to other Sage CRM users using the embedded email editor or Microsoft Outlook. The
embedded email editor and Outlook are not mutually exclusive options for sending email, you can
enable both.
l Send emails from the Communications tab in the context of a Person, Company, Lead,
Opportunity, Case, or Solution. Send emails from the Solutions Summary page that automatically
include the solution details in the email body.
l Use Send Email to send an email using the embedded email editor. The specified mail
server handles the transfer of the message.
l Use Send Using Outlook to open an MS Outlook window and send an email using Outlook.
The email includes recipients already selected in Sage CRM and any content already
added. This option is available in Internet Explorer only.
l Forward or BCC an email to the Mail Manager Server filing address and to other email addresses,
such as [email protected]. Any email arriving at one of the email addresses defined in Email
Management is subjected in Sage CRM to the rules in the associated template and rulesets. These
rules specify where the email record is stored in Sage CRM.
l Forward inbound emails to any mail system. For example in MS Outlook, to the Mail Manager
Server filing address. This automatically files the email with the correct customer record in Sage
CRM.
l Save attachments to filed emails in the Library tab of the corresponding Sage record.
l Specify multiple email addresses to file different types of inbound and outbound emails. For
example, [email protected].
l Customize business rules in Sage CRM, by associating customized rulesets with each email
address.
l Associate each email address with a script template. For more information, see Working with script
templates.You can script templates using Email Objects. For more information, see the Developer
Help on the Sage CRM Help Center.
If you're running the Email Management Server you can forward emails to the Mail Manager Server Filing
Address for filing. For more information, see Email Management. Alternatively, you can use the File Email
option in the Lite Outlook Integration or the Document Drop options. For more information, see the User
Guide.
l Configure standard email in Sage CRM. For details, see Configuring standard email.
l Ensure that Sage CRM is accessible from outside of your corporate network.
Sage CRM provides two built-in templates for creating consent emails:
By default, the template body contains two hyperlinks pointing at the following URLs:
%CRMSubmitConsentLink% When a recipient clicks this hyperlink, the consent record status is
changed to Consented.
Example:
http://myserver.mydomain.com/crm/eware.dll/
SubmitConsent?consentId=%CRMConsentId%
%CRMSubmitConsentLink% When a recipient clicks this hyperlink, the consent record status is
&status=1 changed to Withdrawn.
Example:
http://myserver.mydomain.com/crm/eware.dll/
SubmitConsent?consentId=%CRMConsentId%&status=1
Warning: Do not delete these hyperlinks, because they are used to update the status of the
corresponding consent record in Sage CRM.
4. Click Save.
When a recipient clicks a link in a consent email, the default confirmation page opens. You can change this
behavior and redirect the recipient to any URL you want. For example, it can be a custom confirmation page,
a thank you page, or any website.
You can set only one URL for all links in a consent email. If this option is blank, the default
confirmation page opens.
4. Click Save.
Email/SMS settings
Field Description
Use CRM's embedded email Enables the embedded email editor. Displays Send Email on all
editor Communications tabs and activates the embedded email editor when
the user clicks an email hyperlink in Sage CRM. The default value is Yes.
Allow send using Outlook Displays Send Using Outlook on the embedded email editor which
opens an Outlook window. The Outlook window includes any addresses
and text already added to the email in Sage CRM but it doesn't include
attachments. An email that's sent using this button is saved in the
Outlook Sent Items. However, when using this button with standard
Sage CRM email functionality, additional text or addresses added to the
email in Outlook are not included in the Sage CRM Email Out
Communication record. To overcome this limitation, combine this feature
with Email Management. The default value is Yes.
Internal SMTP: Sage CRM acts as the SMTP client to the Outgoing mail
server. You must specify the Outgoing mail server IP address and SMTP
port. A limitation of this option is that the email is always recorded as a
sent communication even in cases when the email has not been
dispatched by the mail client. To overcome this, users can cc themselves
when emailing companies and contacts so they can cross-reference
communications with emails that have arrived in their mailbox.
Outbound emails should be CRM: The standard Sage CRM outbound filing stores a copy of the
filed by email in the communication record saved against the company or person
the email was sent to.
Mail Manager Server filing The email address of the mailbox that Email Management runs on. For
address example, [email protected].
Mail Manager Server filing The prefix that's added between the mailto recipient and the Mail
address prefix Manager Server Filing Address for mailto tags. The default value
(&bcc=) puts the Mail Manager Server Filing Address in the BCC line of
the email.
Outgoing mail server (SMTP) The name or IP address of the mail server if you're using Internal SMTP.
SMTP port Change the default value only if your Email Server Port differs from 25.
Use TLS for SMTP Select this checkbox to establish a connection to the mail server using
Transport Layer Security (TLS). For supported TLS versions, see the
2020 R1 Hardware and Software Requirements.
SMTP user name The SMTP server username if the mail server is using Basic SMTP
authentication.
SMTP password The SMTP server password if the mail server is using Basic SMTP
authentication.
SMS domain name The SMS gateway that receives messages from the incoming mail folder
of an email server. The address format it recognizes to send as the SMS
message is <phone number>@<SMS domain>. For example
[email protected].
SMTP server for SMS The name of the mail server or IP address of the machine on which it is
messaging installed. It's used to receive the emails to be sent as SMS messages.
Use TLS for SMS Select this checkbox to send SMS messages using TLS. For supported
TLS versions, see the 2020 R1 Hardware and Software Requirements.
Use SMS features Enables SMS features. You must restart Sage CRM to enable SMS.
SMS from address Any valid email address. It's used by the Send SMS workflow action. If
this field is blank, the workflow rule tries to use the logged on user’s email
address. If the logged on user’s address is not available, SMS From
Address is not populated.
Consent Response URL Specify a custom URL to open when a recipient clicks a link in a consent
email. For example, you can use this option to redirect recipients to a
custom confirmation or thank you page. You can set only one URL for all
links in a consent email.
There are some points to consider when using TLS with Sage CRM:
l You need the connection details for your mail server. Default SMTP over TLS details for Exchange
Online and Gmail are as follows:
l Exchange Online: smtp.office365.com:587
l Gmail: smtp.gmail.com:465
Note: For supported TLS versions, see the 2020 R1 Hardware and Software Requirements.
Users can send emails from the address set up on the From and Reply To Email Addresses screen. For
more information about sending emails, see the User Guide.
There are four translatable templates for this information, with the following caption codes:
l replytemplate
l replytemplatehtml
l forwardtemplate
l forwardtemplatehtml
Email Management
l Email Management overview
l Running the Email Management service
l Configuring Email Management
l Working with script templates
l Adding rulesets to Email Management
l The user sends an email to a specified email address. For example, [email protected].
l The Email Management service accesses the mailbox.
l The service reads each email in the mailbox.
l The Email Management service reads the custom script into memory and builds the user defined
rulesets if they have been defined in the system. For more information, see Adding rulesets to Email
Management.
l The rulesets are inserted into the script file as JavaScript. Rulesets are already built into the defalut
Communication.js script.
l A number of ready-built Objects are passed into the script file, including one to access email.
Alternatively, click View Log Files on the Email Management Server Options screen. Emails that
cause the system to fail internally are saved in a rogue email folder in
%ProgramFiles(x86)%\Sage\CRM\Services\CustomPages\Scripts.
If you have problems starting the Email Management service, you may need to install it manually.
1. Click Start | Run and type cmd. The DOS prompt window is displayed.
2. Navigate to the folder where the eWareEmailManager.exe file is saved and type
eWareEmailManager /i.
3. Click Enter. A pop-up box confirms that the application is installed.
1. Click Start | Run and type cmd. The DOS prompt window is displayed.
2. Navigate to the folder where the eWareEmailManager.exe file is saved and type
Field Description
Enabled Enables Email Management on the mailbox. Allows you to maintain a list
of multiple addresses, activating and deactivating them as required. For
example, [email protected] is required in the last month of
each quarter, but should not be available in other months.
Mail box access method The method used to access the mailbox. Values are POP and MAPI.
Email Address The email address of the mailbox on which Email Management is
enabled.
If you're configuring options for the outbound email mailbox, enter the
Mail Manager Server Filing Address. This is the address you specified in
<My Profile> | Administration | Email and Documents | Email
Configuration.
POP Server/MAPI Profile The name of the POP server used for incoming mail or the MAPI profile
Name name.
To check this name on the Sage CRM server, right-click the Microsoft
Outlook menu option, and click Properties | Show Profiles. The default
profile is MS Exchange Settings.
POP3 Port The port that POP3 can use to send emails.
Use TLS for POP Select this checkbox to receive emails from the POP email account using
TLS.
POP Account Name/MAPI The user name of the POP email account or the MAPI mailbox name. To
Mailbox Name check this name on the Sage CRM server, right-click the Microsoft
Outlook menu option, and click Properties | Show Profiles. Select the
MAPI Profile Name and click Properties. The mailbox name is specified
in Mailbox.
SMTP Server The name of your SMTP server if your SMTP server is different to your
POP server. If left blank, Email Management uses your POP server for
outbound mails. The field is not required for MAPI.
SMTP Port The port that SMTP can use to send emails.
Use TLS for SMTP Select this checkbox to send emails to the SMTP server using TLS. For
supported TLS versions, see the 2020 R1 Hardware and Software
Requirements.
SMTP User Name The user name for the SMTP server, if required by the Mail
Administrator.
SMTP Password The password for the SMTP server, if required by the Mail Administrator.
Administrator Email Address The email address to which service messages are sent when the service
starts or if there's a problem with the service.
CRM User The Sage CRM user that Email Management considers to be the logged
on user. For example, when Cases and Communications are created,
this user is specified as the user who created them.
Template The script file used to process the email. Script files are shipped as part
of Email Management and allow you to specify various ways to handle
emails. For more information, see Email Management and objects.
Default Ruleset Assigned The default user to which the Case or Communication is assigned.
User
Default Ruleset Assigned The default team to which the Case or Communication is assigned.
Team
Default Ruleset Action The default action. For example, the Track Case action means that most
emails are filed as cases and assigned a Case ID but if the email already
contains a Case ID, a Communication is filed to track the case.
Field Description
Manager Logon The logon name of a Sage CRM user with access rights to the database.
For example, the Admin user.
Manager Password The password of a Sage CRM user with access rights to the database.
Set to Yes to poll the mail server every 20 seconds and send information
to a log file in the Sage CRM install directory.
You should set to Yes when you first set up and test the service.
Set to No to poll the mail server less frequently and send less detailed
information. You should set to No after testing for improved
performance.
Polling Interval The polling interval (in minutes) at which Email Manager services poll a
specified mailbox.
You can configure the Email Management server to use Messaging Application Programming Interface
(MAPI).
MAPI is Microsoft’s proprietary messaging API and is enabled by default by Microsoft Exchange.
Email status
To see if the Email Management service is currently running, and to view the number of outbound emails
and bad email, click <My Profile> | Administration | Email and Documents | Email Status.
For more information about working with Email Objects, see Email Management and objects and
Customizing script templates using objects.
There are three core functions are at the base of both Communications.js and Support.js that run in the
following order: BeforeMainAction, MainAction, AfterMainAction.
BeforeMainAction and AfterMainAction are declared in the script file. MainAction is not declared. The
MainAction function is generated from the rules defined on the Rules input form in Sage CRM. The function
should never be declared in any JavaScript file used with Email Management. If you require any complex
functionality, it can be coded into the BeforeMainAction or AfterMainAction functions.
We recommend that you use one of these scripts. However, if neither are suitable, you can write a new
script. Please contact your Certified Sage CRM Consultant before writing new scripts. You must implement
new scripts in a test environment before installing them on a live system.
When the default Communications template is used for Email Management, all emails sent to the default
mailbox are filed in the Sage CRM database as communications and all corresponding email attachments
are filed in the CRM Library tab.
When an email is received in the specified mailbox, the email database table is checked for all people
associated with the email address. If only one person is associated with the email address (even if it's a
private and business type), a communication is created for that person, and it's also associated with the
Sage CRM user. If an associated person cannot be found or if multiple people are associated with the
address, the email database table is checked for an associated company. A communication is created for
the company and it's also associated with the Sage CRM user.
Outbound email
For each outbound email, a communication is created with a communication link to each recipient in the
Sage CRM database. If no match is found, the email is saved as a completed communication against the
Sage CRM user only. The sender must be a valid Sage CRM user with an email address in the Sage CRM
database, and the specified Mail Manager Server Filing Address must be in the BCC field.
When the email is successfully sent, the customer receives the email, a communication is recorded in Sage
CRM, and the email handling details are added to the log file. Depending on the polling interval that you've
configured in Advanced Email Management Server Options, the communication might not appear in
Sage CRM immediately.
For emails received by users and forwarded to the Mail Manager Server Filing Address, this email address
must be the only address in the To field. The original sender's email address must be the first email address
contained in the body of the email that's forwarded to the mailbox. Email Management recognizes the first
address in the body as the original sender's address and files the email with this customer record. A
communication record is created against the customer record containing details of the email forwarded from
the Sage CRM User.
Attachments to emails
Attachments to emails are stored with the communication record created when Email Management filed the
inbound or outbound email.
For information about using Email Management, see Filing Inbound and Outbound Emails in the User Help.
Use the Support template (Support.js) with Email Management to handle emails effectively in a customer
service environment.
This example uses a mailbox on the company's email server called [email protected]. Customers can
log customer service issues using this mailbox. The example describes what happens when an email is
received by [email protected] from a person or company in the Sage CRM database.
1. Kieran O’Toole, a person in the Sage CRM database, sends an email to [email protected] to
log a customer service issue.
2. An auto reply is sent to Kieran telling him that a case has been logged. It includes a Case ID. If
Kieran's email already contained a Case ID, a new case would not be created.
3. A case is created and logged for the Customer Service Team. The case is included in the list of
cases associated with Kieran O’Toole. It is also listed in Team CRM | Customer Service, because
Customer Service is specified in Default Ruleset Assigned Team. For more information, see
Adding rulesets to Email Management.
4. Two communications are recorded against Kieran, one to acknowledge receipt of his email (Email
In) and another to signal that an auto reply was sent (Email Out). The Email Out communication is
also included in Team CRM | Customer Service.
5. When Kieran replies to the email he received from [email protected] to say that he has
managed to get the software up and running, an Email In communication is recorded against Kieran
and also in Team CRM | Customer Service.
1. When the Email Management service starts, is started up it creates a Sage CRM Object and logs in
to Sage CRM using registry entries.
You can customize the features of Email Management using the following objects. For detailed descriptions
of the methods and properties of each object, see the Developer Help on the Sage CRM Help Center.
l MsgHandler Object: The MsgHandler Object provides basic access to the Email Object and
functionality for the system. It is the top level object within the scripting. It is passed into the script at
run time.
l Email Object: The Email Object provides access to the email itself through its properties and
methods. This object is passed into the script by default as the Email Object but can also be
accessed from the MsgHandler Object as follows:
myemail = MsgHandler.msg
l AddressList Object: Part of the Email Object, this object provides access to the To, CC and BCC
lists of addresses. You can access this object as follows:
myaddresslist = email.CC;
l MailAddress Object: This object provides access to an individual address from the AddressList
Object. You can return an individual MailAddress object as follows:
myaddress = email.CC.Items(1);
l AttachmentList Object: This object provides access to the email attachments. You can access this
Object as follows:
myAttachmentList = email.Attachments;
For example, you could specify that all emails coming into the [email protected] mailbox are filed in
Team CRM | Customer Service according to the Track Case action by default. But any emails from
companies of type Competitor or Industry Analyst should be handled in a different way. To do this, you can
apply a new ruleset to the [email protected] mailbox.
1. Click <My Profile> | Administration | Email and Documents | Email Management Server
Options.
2. Click the hypertext link of the Email Management service and click Add Ruleset.
3. Complete the Rules Panel fields.
4. Add up to two more rules for this ruleset. Use And to separate rules when both rules must be true for
an action to be performed. Use Or to separate rules when the action is performed if either of the
rules are true.
5. Select the action that's performed if the rules are met. If the rules are not met, the default actions are
performed. For example, create a communication.
6. Select the Sage CRM user and the team that the action is recorded against from Assigned User
and Assigned Team. For example, a Communication is created if a rule is satisfied, and it is
assigned to the marketing manager and the Marketing Team.
7. Click Save and then click Continue.
Field Description
Operator The operator used in the Rule. For example, Equal To, Not Equal To.
Rule Execution Order The order in which the Ruleset is executed. For example, if you have
defined three Rulesets, you can specify a specific order or execution.
Exit Rule Performs the associated action when this Ruleset is executed, but does
not execute any other Ruleset.
Sage CRM Exchange Integration is an integration between Sage CRM and the Exchange server. There is
no synchronization to individual Outlook clients. The synchronization runs in the background and does not
require user triggers; it continues even when Outlook clients are closed. A single, impersonated Exchange
user is used to access all users’ mailboxes so different credentials are not required for each mailbox.
Appointments, tasks, and contacts can be synchronized between Sage CRM and Exchange Server. This
functionality is supported if the user is working in the Outlook client, Outlook Web Access, or using a mobile
device that connects to Exchange. For example, if a sales manager schedules meetings for field sales
people in Sage CRM, the sales people receive information about the meetings on their smart phones
without needing to synchronize or open their laptops and launch Outlook desktop client. This means that
vital Sage CRM information is available in real-time to users who are on the move.
The optional Lite Outlook Plugin can be installed on the client machine to allow users add contacts to Sage
CRM from the Outlook client, file single or multiple Outlook emails to one or more Sage CRM records, and
attach Sage CRM shared documents to Outlook emails. For more information, see About Lite Outlook
Integration. Each user must install the plugin manually.
Task Help
Ensure you are using a version of Exchange Server with See the 2020 R1 Hardware and
access to the EWS API that supports impersonated users. Software Requirements on the Sage
CRM Help Center.
Expose the EWS virtual directory so an impersonated user Configuring Exchange Server
can read the schema from the EWS endpoint.
Set up an Exchange impersonated user mailbox to access the Configuring Exchange Server
mailboxes of other Exchange users.
Create a connection from Sage CRM to the Sync Engine and Creating a connection to Exchange
from the Sync Engine to Exchange Server so data can be Server
synchronized between applications.
Lite Outlook Integration lets users add contacts to Sage CRM from the Outlook client, file single or multiple
Outlook emails to one or more Sage CRM records, and attach Sage CRM shared documents to Outlook
emails. Lite Outlook Integration does not synchronize any data between Outlook and Sage CRM. For this
reason, it should be used with Exchange Integration.
In order to use Lite Outlook Integration, a user must download and install a plugin on the Outlook client
machine. The plugin works on both 32-bit and 64-bit machines. As a system administrator, you can enable
Task Help
Specify in Exchange Server settings that the Install Lite Creating a connection to Exchange
Outlook Integration button is displayed. This button lets users Server
download and install the Lite Outlook Plugin.
If you're using Sage CRM over HTTPS, or you're using a Changing Lite Outlook Plugin port
non-standard port, you might need to change the default port
used by the Lite Outlook Plugin installer.
Enable logging for Lite Outlook Integration so you can view Enabling logging for Lite Outlook
and resolve errors. Integration
Tip: If Exchange Integration is enabled and the Lite Outlook Plugin is installed, Sage CRM users who
haven't been enabled to synchronize with Exchange or who don't use Exchange can still file emails and
add contacts to Outlook.
Task Help
Select the Sage CRM user mailboxes that you want to Enabling user mailboxes for
synchronize with Exchange. synchronization
Change the rules that are used to synchronize data between Setting Exchange synchronization
Sage CRM and Exchange to suit your particular business options
requirements if necessary.
View synchronization logs to find out more about Working with synchronization errors
synchronization errors and how to resolve them.
The Exchange environment consists of the Mailbox server and the Exchange Web Services (EWS) API.
The Exchange impersonated user reads schema from the EWS endpoint. Schema are made available by
enabling Anonymous authentication and disabling Windows authentication on the EWS virtual directory.
Data is made available by enabling Basic authentication in the Exchange Administration Center (EAC). On
its own, Basic authentication is not a secure authentication method, so we recommend that you use Secure
Sockets Layer (HTTPS) to secure the connection between Sage CRM and Exchange.
The Sync Engine synchronizes between endpoints. It obtains a batch of resource changes from a source
endpoint (CRMJ) and applies it to a target endpoint (EWS). These records are stored on the
EcngIntegration table.
The Sync Engine communicates with EWS using SOAP over HTTP(S) and it communicates with Sage
CRM using HTTP(S) (SData and specialized services). It can be deployed on a remote server.
When the Sync Engine synchronizes data from Exchange to Sage CRM, Sage CRM performs
deduplication and conflict management. Records are inserted, updated, or deleted in Sage CRM.
When the Sync Engine synchronizes data from Sage CRM to Exchange, the Sync Engine performs
deduplication, inserts, updates, deletes on the mailboxes.
l Sync resource. A record representing a single record that is synchronized and stored in the
EcngSyncResource table. Each record has a unique UUID, references to the base Sage CRM
entity, and details of when the record was synchronized.
l Sync state. The state of a record on the EWS side of the integration. Used to check for changes on
the Exchange side of the integration.
l Feed. An XML structure used to transfer changes to resources on the CRMJ endpoint. It contains
many entries.
l Entry. A subset of a feed that contains changes to a specific resource. For example, contacts.
We recommend that an initial synchronization is performed during Sage CRM and Exchange downtime
because large volumes of data are transferred and may impact performance.
l Organizer. The organizer of an appointment is the user who creates the appointment in Exchange.
The exception is where an appointment is created in a shared calendar. For example, an assistant
creates a meeting for a manager using the manager's shared calendar. In this case, because the
manager owns the calendar, the manager is the organizer. The organizer must always attend the
event. The organizer's copy of an Exchange appointment is the only reliable version of the
appointment and it's the version that's synchronized to Sage CRM.
l Sync user. When configuring Exchange Integration, you must flag the mailboxes that will
synchronize with Sage CRM. A user with an Exchange mailbox that's been configured to
synchronize is called a Sage CRM sync user.
l Meeting. An appointment with more than one attendee is a meeting.
l Required attendees. All Sage CRM users (including resource users, but excluding the organizer)
and external attendees added to the appointment in Sage CRM appear as required attendees on
the appointment in the organizer's Exchange mailbox.
l External attendees. The External attendees feature in Sage CRM communications sends an
Exchange meeting request to all invitees both internal and external to the Sage CRM database or
your own Exchange environment.
Appointments are synchronized between Sage CRM and the default Exchange calendar only.
Appointments are not synchronized between Sage CRM and any secondary Exchange calendars. The
Sync Engine synchronizes the following calendar items between Sage CRM and Exchange if appointments
are set to synchronize bi-directionally.
l All single (non-recurring) appointments and meetings that have not yet synchronized and have an
End Date within the last 14 days or at any date in the future from the time the synchronization
occurs.
l All recurring appointments that have not yet synchronized and where the end date of the recurrence
pattern of the master occurrence is within the last 14 days or at any date in the future from the time
the synchronization occurs.
Some calendar items cannot be synchronized between Sage CRM and Exchange.
Warning: When a synchronized field on an Appointment is updated, a new request is sent to all
attendees. This is particularly important to note when adding confidential information to an Appointment.
l The Sync Engine uses the following rules to determine whether calendar items should be
synchronized from an enabled Exchange mailbox to Sage CRM:
l If the organizer of the appointment or meeting is the mailbox owner, the item is synchronized
to Sage CRM as a normal Sage CRM appointment.
l If the organizer is not the mailbox owner, this is an invitee copy of the original meeting. In this
case, if the organizer is a Sage CRM Sync User, this invitee copy is not synchronized to
Stub appointments
When a meeting is created in the organizer’s calendar in Exchange, an identical copy of the meeting is
created as a tentative event in the calendar of each invitee. Each invitee can change their copy but the
changes are visible to that invitee only and are not visible to the organizer or any other invitee.
To ensure that a user's Outlook/Exchange calendar mirrors their Sage CRM calendar, all invitee copies are
synchronized to Sage CRM as separate Stub appointments. Each invitee sees their associated stub
appointment only; the appointment is read-only but can be deleted. The exception to this is where the invitee
forwards their copy of the meeting to other people. In this case, the organizer receives an email about the
new invitees and the meeting in the organizer’s calendar is updated to include them. The original invitees are
notified about the new invitees only if the organizer sends a meeting update.
An invitee cannot remove other invitees from their copy of the meeting. Any changes that an invitee makes
to their copy of the meeting are temporary; whenever the organizer modifies the meeting and sends out an
update, all existing invitee copies are overwritten by the organizer’s copy.
Synchronizing tasks
If tasks are set to synchronize bi-directionally between Sage CRM, the Sync Engine synchronizes tasks that
have been modified or created within the last 14 days from when the initial synchronization was started.
Tasks are owned by one user only so synchronization occurs between Sage CRM and the Exchange
mailbox of the task owner. Mass tasks (tasks generated against groups or lists) are not synchronized and
are not included in the skipped items log.
The table below lists task status mapping when synchronizing from Exchange to Sage CRM.
In Progress In Progress
Deferred Pending
Completed Complete
The table below lists task status mapping when synchronizing from Sage CRM to Exchange.
In Progress In Progress
Complete Completed
Contacts are not shared by Exchange mailboxes, but contacts from many mailboxes can be linked to one
person record in Sage CRM. Click Add Contacts to manually add contacts from the Outlook client to Sage
CRM.The Lite Outlook Integration Plugin must be installed on the Outlook client to use this functionality.
1. Correctly download and install a compatible version of Tomcat on the remote server. Sage CRM
2020 R1 uses Apache Tomcat 8.5.24.
2. Stop the Tomcat service (Apache Tomcat 8.5 <SageCrmInstallName>Tomcat8) on the Sage
CRM server.
3. Move the following from the Sage CRM server to the remote server hosting Tomcat:
l File %ProgramFiles(x86)%\Sage\CRM\<InstallName>\
tomcat\webapps\<InstallName>ExchangeSyncEngine.war
l Folder %ProgramFiles(x86)%\Sage\CRM\<InstallName>\
tomcat\webapps\<InstallName>ExchangeSyncEngine
Example:
Source folder on the Sage CRM server Target folder on the remote server
%ProgramFiles(x86)%\Sage\CRM\ <TomcatInstallationFolder>\webapps
<InstallName>\tomcat\webapps\
9. Create a connection to Exchange Server using the Sync Engine deployed on the remote server.
These steps are described in Creating a connection to Exchange Server.
In this type of environment, it’s important that the Sync Engine runs on only one of the Sage CRM servers. If
there are multiple Sage CRM servers, with an individual exchange Sync Engine deployed on each, there
would be issues with conflicting Exchange synchronization resources and there could also be performance
issues if each Sync Engine tried to perform a synchronization every few minutes.
In multi-server environments, you should install only one Sync Engine instance on the primary server in a
group. To ensure that installing subsequent servers won’t break the existing Exchange synchronization, do
the following.
1. Disable the integration from the Sage CRM UI on the first server.
2. Install the next node.
3. Remove the Replication Engine from the new node.
a. Stop the Apache Tomcat 8.5 <SageCrmInstallName>Tomcat8 Windows service.
b. Remove the file %ProgramFiles(x86)%\Sage\CRM\<InstallName>\
tomcat\webapps\<InstallName>ExchangeSyncEngine.war
c. Remove the folder %ProgramFiles(x86)%\Sage\CRM\<InstallName>\
tomcat\webapps\<InstallName>ExchangeSyncEngine
d. Start the Apache Tomcat 8.5 <SageCrmInstallName>Tomcat8 Windows service.
4. Enable integration on the first node.
Note: Ensure the user's Sage CRMemail address matches the impersonated user's primary SMTP
address in Exchange. Also ensure the user is included in the global address list in Exchange.
You must prepare Exchange Server to ensure Sage CRM Exchange Integration works correctly.
1. Complete the prerequisites to configure Exchange Impersonation. For more information, see the
latest articles on msdn.microsoft.com.
l Enable Client Access Server (CAS) on Exchange Server. This performs several functions
including exposing the EWS virtual directory.
l Set up domain administrator credentials, or other credentials with the permission to create
and assign roles and scopes.
l Install Remote PowerShell on the computer from which you run commands.
2. Set up an Exchange impersonated user mailbox to access the mailboxes of other Exchange users if
you have not already done so.
3. Run the following cmdlet in the Exchange Management Shell. This applies the
ApplicationImpersonation role to the Exchange impersonation user so that it can access other
mailboxes.
For more information about the Exchange Management Shell, see Using the Exchange
Management Shell on msdn.microsoft.com.
For complete information about the New-ManagementRoleAssignment cmdlet, run the following
command in the Exchange Management Shell:
Alternatively, to manually enable a user for impersonation using EAC, add the
ApplicationImpersonation admin role in permissions and add the mailbox used for impersonation to
this role.
If you're using Office 365 Online, you must explicitly give the impersonated user application
impersonation rights in the Office 365 Exchange Admin Centre or via PowerShell commands.
4. Using Outlook Web Access, log on as the impersonation user to initialize the account.
5. Click Servers | Virtual directories | EWS | Authentication and enable Basic authentication in the
Exchange Administration Center (EAC). Basic authentication is how Sage CRM authenticates with
EWS. On its own, Basic authentication is not a secure authentication method so we recommend
that you use Secure Sockets Layer (HTTPS) for the connection between Sage CRM and Exchange
to secure the connection.
1. Click <My Profile>| Administration | Email and Documents | Exchange Server Integration |
Connection Management.
2. Click New.
3. Complete the Exchange Server connection fields.
a. Enter a value in Exchange Web Service URL, Exchange Server User Name, Domain,
and Password for an Exchange Server impersonation user.
b. Enter a value in CRM User Name for the Sage CRM user with full administrator rights who
is used to communicate between Sage CRM and the Sync Engine.
c. To deploy the Sync Engine remotely, select No in Use Default Sync Engine Location and
select the checkboxes. For more information, see Deploying the Sync Engine on a remote
server.
4. Click Save.
5. Click Continue. The Exchange Server Connection and User Mailbox Management tabs are
displayed.
6. Select the user mailboxes that you want to enable for synchronization and review the
synchronization options. For more information, see Enabling user mailboxes for synchronization
and Synchronization management fields.
Field Description
Exchange Exchange Web Services (EWS) URL of Exchange Server. HTTP and HTTPS are
Web Service supported. For example, https://myserver/ews/exchange.asmx
URL
You must enter the the correct EWS endpoint, and not the link to the EWS WSDL
definition file. To use Office 365, enter
https://outlook.office365.com/EWS/Exchange.asmx
Note: Use this tool to test your EWS connection:
https://testconnectivity.microsoft.com
Exchange User name of a Windows Exchange Server mailbox that has access to the mailboxes at
Server User the EWS endpoint that you want to synchronize with. This is Exchange Server exposed
Name by the EWS API.
Domain Windows domain of the Exchange Server account specified in Exchange Server User
Name.
Password Password of the Exchange Server account specified in Exchange Server User Name.
CRM User User name of the Sage CRM user with full Administrator rights that's used to
Name communicate between Sage CRM and the Sync Engine.
Use Default When the connection is saved and established, the Sync Engine is deployed by default
Sync Engine to %ProgramFiles(x86)%\Sage\CRM\<InstallName>\Tomcat\Webapps directory of
Location the Sage CRM installation. To deploy the Sync Engine in an alternative location, set this
field to No. For more information, see Deploying the Sync Engine on a remote server.
If you change the default port for Sage CRM on IIS to any port other than port 80, and
want to set up Exchange Integration, you must set this field to No and enter the server
name and port number separated by a colon(:) in Sync Engine Location.
Sync Engine The SData URL of the remotely deployed server. This field is displayed only if you set
Location Use Default Sync Engine Location to No.
Outlook A read-only field that displays the version of the Lite Outlook Plugin used with Exchange
Plugin Integration.
Version
Allow Users Yes displays the Install Lite Outlook Integration button in <My Profile> | Preferences.
to Manually This button allows users who've been set up to synchronize with Exchange to install the
Install Plugin Lite Outlook Plugin.
No hides the button. Select this if you don't want users to access the plugin or if you want
to install the plugin using MSI/Active Directory Group Policy. For more information, see
About Lite Outlook Integration.
Allow Non- Yes allows users with the appropriate security/territory rights to edit appointments in
Organizers to Sage CRM which are linked to appointments in the organizer mailbox.
Edit Linked
Organizer No allows only the (Exchange) organizer of the appointment to edit the appointment in
Appointments Sage CRM.
Logging Level Full logging writes all errors, skipped items, conflicts, and all other logging regarding the
synchronization to the log files.
You can view log files in <My Profile> | Administration | Email and Documents
| Exchange Integration | Logging.
Users with rights to view their own log files can view them in My CRM | Exchange
Integration Logs.
Send updates Yes sends an update to all attendees of a meeting that occurred in the past whenever a
to past user makes a change to the meeting information.
appointments
At the time of writing, these settings were available at the following URL:
https://outlook.office.com/owa/?path=/options/popandimap
b. Note the server name and ports. Typically, you need SMTP settings for sending emails) and
POP settings for Email Manager). The default settings are as follows:
Protocol Server name Port
For supported TLS versions, see the 2020 R1 Hardware and Software Requirements.
3. Click <My Profile> | Administration | Email and Documents | Email Management Server
Options and select Use TLS for POP.
4. Sage CRM automatically negotiates the correct version of TLS with Exchange Online.
5. Grant your Sage CRM SMTP user the SendAs right. For more information, see Granting the
SendAs right.
To send emails from Sage CRM as any user, you must enable the SendAs right on the Exchange server
using PowerShell.
Note: PowerShell is installed on your client. You don't need to install the Exchange remote PowerShell
tools.
3. When prompted, enter the credentials for an Exchange administrator. The Exchange connection
URL shown below (https://ps.outlook.com/powershell/) is for Exchange Online, but you
can substitute your own Exchange CAS server, or an Exchange instance hosted by a third party.
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri
https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication
Basic -AllowRedirection
Import-PSSession $Session
Enable-OrganizationCustomization
This command may take a few moments to complete.
4. When you're connected to the Exchange instance, you can grant the SendAs right in one of the
following ways:
Note: Use the pipe operator (|) to get an array of mailbox objects and send them to your command. This
allows you to quickly grant the SendAs right over a large number of mailboxes, without selecting them all
individually.
1. Create a distribution list called CRM Users containing two Exchange users who also use Sage
CRM. The user email addresses in the example below are [email protected] and
[email protected].
New-DistributionGroup -Name "CRM Users" -IgnoreNamingPolicy
"[email protected]","[email protected]" | %{ Add-
DistributionGroupMember -Identity "CRM Users" -Member $_ }
2. Run the following command to list the members of the distribution group:
Get-DistributionGroupMember "CRM Users"
3. Send the members of the distribution group to the Get-Mailbox command and forward the array of
resolved mailboxes to the Add-MailboxPermission cmdlet. The mailbox for the Sage CRM SMTP
user is [email protected]:
Get-DistributionGroupMember "CRM Users" | Get-Mailbox | Add-MailboxPermission
-User [email protected] -AccessRights FullAccess
Note: Exchange Integration does not use users' licenses when carrying out a synchronization, so the
number of users enabled for the integration can be greater than the number of concurrent licenses.
1. Click <My Profile> | Administration | Email and Documents | Exchange Server Integration |
Connection Management.
2. Click the User Mailbox Management tab. A list of all Sage CRM users (excluding Disabled,
Deleted, Resource users, or any users without an email address) is displayed.
3. Click Change. This button is displayed only if the synchronization process is disabled.
4. Select the Synchronize checkbox beside the user mailboxes that you want to synchronize with
Exchange. We strongly recommend that you enable all Sage CRM users for Exchange
synchronization to ensure a seamless integration. Synchronization does not occur until the
synchronization is enabled.
5. Click Save. The Sync Engine checks the connection to the user mailboxes through the
impersonation user.
l Where a connection to a mailbox is successful, an Enabled icon is displayed in the
Synchronization column.
l Where a connection to a mailbox is unsuccessful, a Failed icon is displayed in the
Synchronization column.
1. Click <My Profile> | Administration | Email and Documents | Exchange Server Integration |
Synchronization Management.
2. If the connection is currently enabled, click Disable. The Connection Status must be disabled to
make changes to Exchange synchronization options.
3. Click Change.
4. Change the values in the Synchronization management fields.
5. Click Save.
All Synchronization Management fields are global and apply to all mailboxes involved in the synchronization.
All fields on the Status panel are read-only.
Field Description
Exchange Web Service URL Exchange Web Services URL that was specified when setting up the
connection to Exchange Server.
Connection Status Disabled when a connection is first set up or if the connection has been
temporarily disabled. For example, when you are enabling additional
user mailboxes for synchronization.
Fail when the number of standard errors during the last synchronization
was greater than the value in Max Errors Allowed or a fatal error
occurred.
Success with Errors when the number of standard errors in the last
synchronization was less than or equal to the value in Max Errors
Allowed.
Last Sync Time Date and time that the most recent synchronization started.
Next Sync Time Date and time of the next scheduled synchronization. This is the time
that the last synchronization finished + the synchronization interval
(minutes).
Conflicts in Last Sync The number of conflicts in the last synchronization. This is not dependent
on the selected logging level.
Skipped Items in Last Sync The number of skipped items in the last synchronization. This is not
dependent on the selected logging level.
Sync Tasks Yes synchronizes tasks in the direction defined in Task Sync Direction.
Sync Contacts Yes synchronizes contacts in the direction defined in Contact Sync
Direction.
Appointment Sync Direction This field is disabled if Sync Appointments is set to No.
Task Sync Direction This field is disabled if Sync Tasks is set to No.
Contact Sync Direction This field is disabled if Sync Contacts is set to No.
Appointment Conflicts Determines which version is used when there's a duplicate or conflict on
an appointment record.
Task Conflicts Determines which version is used when there's a duplicate or conflict on
a task record.
Contact Conflicts Determines which version is used when there's a duplicate or conflict on
a contact record.
The default value is 180. Using the default value, if a delete request
comes from Exchange on an appointment where the End Date is 180
days or older, the appointment is not deleted, but the link to Exchange is
deleted. If the appointment is deleted in Exchange and the End Date is
within 180 days, the appointment is deleted in Sage CRM.
You can enter zero and blank values, but we don't recommend that you
use these. Using zero, if a delete request comes from Exchange on any
appointment regardless of its age, the appointment is not deleted, but
the link to Exchange is deleted.
Archived Recurring The default value is 180. Using the default value, if a delete request
Appointment Policy (days) comes from Exchange on a series of appointments where the End Date
of the last occurrence in the series is 180 days or older, the series is not
deleted, but the link to Exchange is deleted. If the series of appointments
is deleted in Exchange and the End Date of the last occurrence in the
series is within 180 days, the series is deleted in Sage CRM.
You can enter zero and blank values, but we don't recommend that you
use these. Using zero, if a delete request comes from Exchange on a
series of appointments regardless of its age, the series is not deleted, but
the link to Exchange is deleted.
Archived Task Policy (days) The default value is 180. Using the default value, if a delete request
comes from Exchange on a task where the Last Modified Date is 180
days or older, the task is not deleted, but the link to Exchange is deleted.
If the task is deleted in Exchange and the Last Modified Date is within
180 days, the task is deleted in Sage CRM.
You can enter zero and blank values, but we don't recommend that you
use these. Using zero, if a delete request comes from Exchange on any
task regardless of its age, the task is not deleted, but the link to
Exchange is deleted.
Sync Interval (minutes) Number of minutes between the end of the last synchronization and the
start of the next synchronization. The default value is 5.
Set this field to zero to start the next synchronization as soon as the last
synchronization ends.
Response Timeout Number of seconds that Sage CRM waits for a response from the
(seconds) Exchange Web Services endpoint or the Sync Engine before returning a
fatal error.
The default value is 300. If timeouts occur for the first synchronization,
increase this value for the first synchronization and then decrease the
value. If subsequent synchronizations result in timeouts, increase this
value for normal operation to suit your environment.
Max Errors Allowed Number of standard errors allowed before the synchronization fails. The
default value is 100.
Include CRM Info in Body Yes displays the top content (related company and person) of an
appointment in the appointment body in Exchange. You can customize
the top content that's included in the body in <My Profile> |
Administration | Translations (caption code OTL_
AppointmentDetails, OTL_TaskDetails).
The setting does not apply to tasks because top content is always
included in tasks.
Expand Distribution Lists Yes synchronizes a meeting invitation or appointment scheduled for a
distribution list in Exchange to Sage CRM as an appointment for each
member of the list.
l The Exchange Server Integration menu option is displayed in <My Profile> | Administration |
Email and Documents.
l The Synchronize with Exchange Server checkbox and Show Exchange Server Integration Logs
field are displayed in <My Profile> | Administration | Users | Users | <user>. For more
information, see User fields.
l Classic Outlook Integration fields are no longer displayed in <My Profile> | Administration | Users
| User Configuration. For more information, see User Configuration Settings fields.
l The Install / Re-install Classic Outlook Integration button and Full Menu In Outlook field are no
longer displayed in <My Profile> | Preferences.
1. Click <My Profile> | Administration | Email and Documents | Exchange Server Integration |
Synchronization Management.
2. Click Enable.The synchronization status changes to In Progress.
When the synchronization has completed, the synchronization status changes to Waiting before the next
sync is due.
1. Click <My Profile> | Administration | Email and Documents | Exchange Server Integration |
Connection Management | User Mailbox Management and flag users 1-30 to synchronize.
2. Click <My Profile> | Administration | Email and Documents | Exchange Server Integration |
Synchronization Management and trigger an initial synchronization for these 30 users only. When
the initial synchronization for these users is finished, disable the synchronization.
3. Flag users 31 – 60 to synchronize and re-enable the synchronization. This triggers an initial
synchronization for users 31 – 60 and a subsequent synchronization for users 1 – 30.
4. When this synchronization is finished, disable the synchronization.
5. Flag users 61 – 90 to synchronize and re-enable the synchronization. This triggers an initial
synchronization for users 61 – 90 and a subsequent synchronization for users 1 – 60.
6. When this synchronization is finished, disable the synchronization.
Sage CRM handles the following scenarios as standard errors. They are logged according to the specified
logging level
l Data Sync Error. Data is synchronized from Exchange to Sage CRM or Sage CRM to Exchange,
but Sage CRM or Exchange cannot process the create/update/delete for a
contact/task/appointment. For example, because non-numeric characters have been synchronized
to an Integer field. Each failed create/update/delete from either Sage CRM or Exchange is added to
the overall error count for a specific synchronization.
l Cannot Connect to Mailbox. During the course of a synchronization, Sage CRM cannot connect to
a specific Exchange mailbox that has been flagged to synchronize with Sage CRM. The Sage CRM
user mailbox is flagged with a red X in the User Mailbox Management list and the Last Sync column
displays the last time a synchronization was successfully started for the user. Sage CRM doesn't
attempt to reconnect to the mailbox during the current synchronization. It does attempt to connect
during the next synchronization.
Sage CRM handles the following scenarios as fatal errors and stops all activity for the current
synchronization. Fatal errors are logged according to the specified logging level and synchronization is
attempted at the next scheduled synchronization time.
l No response from EWS endpoint or Sync Engine within the time specified in Response Timeout.
l Sage CRM cannot connect with the EWS URL. For example, due to an authentication problem.
l Sage CRM is connected to Exchange Server but not to any of the flagged mailboxes.
l Sage CRM cannot connect to the Sync Engine or vice versa.
Troubleshooting steps
l Establish if the error occurs on all mailboxes, or only certain mailboxes. To do this, disable all users
except the problem user, and test with specific synchronization types.
l Investigate if the error occurs during a specific type of synchronization. For example, when
synchronizing contacts from Sage CRM to Exchange, or when synchronizing tasks from Exchange
to Sage CRM. If it occurs when synchronizing from Exchange to Sage CRM, check the SCRM and
Exchange Sync Engine logs. If it occurs when synchronizing from Sage CRM to Exchange, check
the CXF and Exchange Sync Engine logs.
l Investigate if the synchronization causes the Exchange Sync Engine to stop responding. Check the
Tomcat service logs for a crash.
l Check all relevant logs. An issue with data synchronization is not necessarily a fault in the Sync
Engine. Errors reported by the Sync Engine could be caused by errors on one of the endpoints.
You can also view the logs from the Sage CRM installation in
%ProgramFiles(x86)%\Sage\CRM\<InstallName>\Logs\Exchange Integration.
Users with rights to view their own log files can view them in My CRM | Exchange Integration Logs.
You set the logging level for the logs in the table below in <My Profile> | Administration | Email and
Documents | Exchange Server Integration | Connection Management. For more information, see
Exchange Server connection fields.
User folder Logs activity information and skipped items on individual mailboxes and
errors that occur on a single mailbox.
Generic folder Logs errors and activity not associated with a specific mailbox. The
exchangeConfiguration log is most likely to contain errors the occur on a
webapp level.
Exchange Configuration Log Contains all activity on the configuration of the Exchange Integration for
any given day including connecting to the Sync Engine, connecting to the
EWS endpoint, and connecting to specific mailboxes.
Exchange Conflicts Contains all conflicts for the Exchange Integration for any given day, for
all mailboxes involved in a synchronization that day.
Skipped Items - CRM to Contains all skipped items when synchronizing from Sage CRM to
Exchange Exchange for the Exchange Integration for any given day, for all
mailboxes involved in a synchronization that day.
Skipped Items - Exchange to Contains all skipped items when synchronizing from Exchange to Sage
CRM CRM for the Exchange Integration for any given day, for all mailboxes
involved in a synchronization that day.
Sync Activity - CRM to Contains all sync activity and sync-related errors for any given day for all
Exchange mailboxes involved when synchronizing from Sage CRM to Exchange.
Sync Activity - Exchange to Contains all synchronization activity and synchronization-related errors
CRM for any given day for all mailboxes involved when synchronizing from
Exchange to Sage CRM.
You set the logging level for the logs in the table below in the log4j.properties file in the
exchangesyncengine webapp WEB-INF folder.
Exchangesynchronisation - High level activity log that displays the number of records to be
log4j.properties file processed. In general, it indicates if an error response is retrieved
from EWS or CRMJ.
Exchangesyncengine Logs activity (including GETs and POSTs), HTTP error codes if
received, and stack traces.
Exchangesyncdefault Logs all synchronization activity. This displays everything that occurs
in sequence.
Exchangesyncenginestacktrace Logs stack traces caused by exceptions. This is a useful starting point.
l Don’t enable DEBUG logging on any webapp until you've identified the general area where the
problem is occurring.
l If you're unsure which area is causing the error, archive logs and generate a new set of standard
logs.
l If you believe an error is returned by Exchange, or the error is caused by data sent to Exchange,
enable the general, inbound, and outbound CXF logs.
l If you believe the error is occurring in the CRMJ webapp, examine the CRMJ log files.
Classic Outlook Integration files emails, and synchronizes contacts, appointments, and tasks between Sage
CRM and Microsoft Outlook. It lets users file single or multiple Outlook emails to one or more Sage CRM
records, and attach Sage CRM shared documents to Outlook emails. Sage CRM Classic Outlook
Integration supports email accounts running on Microsoft Exchange Server MAPI or POP3. Roaming
Profiles are not supported.
l Recurring appointments.
l Appointments which have been modified in the last 14 days.
l Appointments with an end date between the last 14 days and today.
l Tasks which have been modified in the last 14 days.
Note: The plugin installer (.msi) file cannot be used to deploy the plugin via Group Policy.
Task Help
Specify Sage CRM time zone settings. Incorrect time zone Setting the time zone
settings can prevent Sage CRM contacts synching to
Outlook.
Display the Install Classic Outlook Integration button for a Configuring Classic Outlook Integration
specific user.
If you're using Sage CRM over HTTPS, or you're using a Changing Classic Outlook Plugin port
non-standard port, you might need to change the default port
used by the Classic Outlook Plugin installer.
Task Help
Select the direction in which data is synchronized between Configuring Classic Outlook Integration
Outlook and Sage CRM.
Enable synchronization of contacts, appointments, and tasks. Configuring Classic Outlook Integration
Prevent synchronization to Outlook for specific Sage CRM Preventing synchronization to Outlook
records if necessary.
Decide what happens to appointments, tasks, and contacts in Configuring Classic Outlook Integration
Sage CRM when they're deleted in Outlook.
Configure how often automatic synchronization occurs. Configuring Classic Outlook Integration
Enable logging for Classic Outlook Integration so users can Enabling logging for Classic Outlook
view and resolve synchronization errors. Integration
Task Help
Review how contacts are mapped between Sage CRM and Contact data mappings
Outlook and change the mappings if necessary.
You can use data upload to import a large number of contacts Uploading Outlook Contacts to Sage
from Outlook to Sage CRM. CRM
Review how appointments are mapped between Sage CRM Appointment data mappings
and Outlook and change the mappings if necessary.
Review how tasks are mapped between Sage CRM and Task data mappings
Outlook and change the mappings if necessary.
Review how tasks statuses are mapped between Sage CRM Task status mappings
and Outlook and change the mappings if necessary.
You can customize the details that are added to tasks and Customizing task and appointment
appointments sent from Sage CRM to Outlook. details
l If a user is filing emails or adding contacts in Outlook using the plugin, one seat of a concurrent
license is used.
l If a user is filing emails or adding contacts in Outlook using the plugin, and is also logged on to Sage
CRM using a browser, one seat of a concurrent license is used.
1. Click <My Profile> | Administration | System | System Behavior and set the value of Server time
zone to the time zone set in Date and Time in the Windows Control Panel on the CRM server.
2. Click <My Profile> | Administration | Users | <user> | Users Preferences and set the value of
Time Zone to the time zone set in Date and Time in the Windows Control Panel on the user's
machine. This may be different for users in different office locations, or for users who are accessing
Sage CRM while traveling. Alternatively, the user can set the value in <My Profile> | Preferences |
Time Zone.
Outlook Plugin Version Specifies the Classic Outlook Plugin version. Use this field to manually
update the Outlook Plugin version after installing an Outlook Plugin
patch.
Outlook Integration Options l Classic Outlook Integration. Displays a button that lets the user
install the Classic Outlook Plugin and use Classic Outlook
Integration.
l Lite Outlook Integration. Displays a button that lets the user
install the Lite Outlook Plugin and use Lite Outlook Integration. If
Exchange Integration is enabled, the Lite Outlook plugin provides
additional functionality to the Exchange Integration.
l Both. Displays both the Classic Outlook button and the Lite
Outlook button on a 32-bit system. It displays only the Lite
Outlook button on a 64-bit system. Only one plugin can be
installed.
l None. Prevents the user installing the Classic Outlook Plugin or
the Lite Outlook Plugin because no plugin buttons are displayed.
One Way Synchronization Specifies the direction in which data is synchronized between Outlook
and Sage CRM in Classic Outlook Integration.
When you change this value, users must restart their Sage CRM session
in Outlook and initiate synchronization for the change to take effect.
Synchronize Outlook Specifies whether to delete appointments, tasks, and contacts in Sage
Deletions CRM when they're deleted in Outlook. The items are deleted in Sage
CRM during Outlook synchronization.
Managing CRM and Outlook Specifies how to resolve data conflicts between Outlook and Sage
Updates CRM when bidirectional synchronization is enabled (One Way
Synchronization is set to No). To view conflicts, use the View Conflict
Log in Outlook.
Synchronize Outlook Tasks Enables or disables the synchronization of tasks between Outlook and
Sage CRM.
Auto Sync (In Minutes) Specifies the number of minutes at which automatic synchronization
between Outlook and Sage CRM occurs.
When a user requests a download of an Outlook plugin .msi file, Sage CRM modifies the .msi file by applying
custom installation parameters to it. This invalidates the digital signature that has been applied to the .msi file
out of the box.
As a result, when a user runs the downloaded .msi file, Windows may display a warning reading that the
digital signature of the file is invalid. To avoid this, you can configure Sage CRM to automatically sign the
.msi files with a valid certificate after custom installation parameters have been applied.
l Be installed in the Local Computer\Personal certificate store on the Sage CRM server.
l Have a corresponding private key.
l Be enabled for the code signing purpose.
l Be trusted on the client computers on which users will run the signed .msi files.
To ensure this, install the certificate in the Trusted Root Certification Authorities store on each
client computer.
Note: Sage CRM is supplied with a demo certificate. For more information, see Using a demo
certificate.
If you leave this option blank, Sage CRM tries to find a suitable certificate in the following certificate
store locations on the Sage CRM server:
l Local Computer\Personal
l Local Computer\Trusted Root Certificate Authorities
Sage CRM is supplied with a certificate you can use to sign the Outlook plugin installer (.msi) files for
demonstration purposes.
You can find the demo certificate and its corresponding private key in the following location on a Sage CRM
server:
l SageCRMSelfSigned.cer. Public key that is used to verify the signed .msi files. Install this public key
on each client computer where users will be running the .msi files.
l SageCRMSelfSigned.pfx. Private key that is used to sign the .msi files. Install this private key on
your Sage CRM server. The private key password is SageCRM.
Alternatively, you can set a flag in the Comm_CRMOnly column in the Communication table to prevent a
specific Communication record synchronizing to Outlook. This allows you to use a table script, hidden field,
or equivalent to update the column when a communication record is saved and particular criteria are met.
For example, you might want to not synch communication records with an action of Phone In. The Comm_
CRMOnly flag overrides the value in One Way Synchronization.
l STRING Debug = 1
Business
1. Export the contacts from Outlook using the Import and Export wizard in Outlook and save them as
an Excel file.
2. In Sage CRM, click <My Profile> | Administration | Data Management | Data Upload.
3. Select Company and click Continue.
4. Click New.
5. Browse to your Outlook contacts MS Excel file.
6. Select Outlook Data from Select From Existing Mappings. This imports the contacts using
predefined Outlook data mappings.
7. Add a description of the data upload.
8. Click Save.
All Day All Day Event in Outlook becomes an All Day Event in Sage CRM (midnight to 23:59).
Event An All Day Event in Sage CRM (midnight to 23:59) becomes an All Day Event in Outlook.
In Progress In Progress
Deferred Pending
Completed Complete
The mappings in the table below are used to synchronize task status data from Sage CRM to Outlook.
In Progress In Progress
Complete Completed
Original:
<Company>Company:
Name: <comp_name/>
</Company><Account>Account
Name: <acc_name/>
</Account><Person>Person:
Name: <pers_firstname/> <pers_lastname/>
Phone: (<pers_phonecountrycode/>)<pers_phoneareacode/> <pers_phonenumber/>
</Person><Address>Address:
Street: <addr_address1/>
City: <addr_city/>
</Address>
Changed:
<Company>Company:
Name: <comp_name/>
Fax: <comp_faxnumber/>
</Company><Account>Account
Name: <acc_name/>
</Account><Person>Person:
Name: <pers_firstname/> <pers_lastname/>
Phone: (<pers_phonecountrycode/>)<pers_phoneareacode/> <pers_phonenumber/>
</Person><Address>Address:
Street: <addr_address1/>
City: <addr_city/>
</Address>
7. Click Save.
8. Click <My Profile> | Administration | System | Metadata to refresh the translation metadata.
9. To implement the change, log off Sage CRM and Outlook and then log back on to Sage CRM and
Outlook.
Lite Outlook Integration lets users add contacts to Sage CRM from the Outlook client, file single or multiple
Outlook emails to one or more Sage CRM records, and attach Sage CRM shared documents to Outlook
emails. Lite Outlook Integration does not synchronize any data between Outlook and Sage CRM. For this
reason, it should be used with Exchange Integration. For more information, see About Exchange
Integration.
Lite Outlook Integration supports email accounts running on Microsoft Exchange Server MAPI or POP3. It
supports Roaming Profiles. This is a Windows feature that allows a user profile to be stored on a central
server rather than on each individual local machine (local profile). For more information, see
msdn.microsoft.com/en-us/library/windows/desktop/bb776892(v=vs.85).aspx.
Note: You cannot use the plugin installer (.msi) file to deploy the plugin via Group Policy.
Display the Install Lite Outlook Integration button for a Configuring Lite Outlook Integration
specific user.
If you're using Sage CRM over HTTPS, or you're using a Changing Lite Outlook Plugin port
non-standard port, you might need to change the default port
used by the Lite Outlook Plugin installer.
Enable logging for Lite Outlook Integration so you can view Enabling logging for Lite Outlook
and resolve errors. Integration
l If a user is filing emails or adding contacts in Outlook using the plugin, one seat of a concurrent
license is used.
l If a user is filing emails or adding contacts in Outlook using the plugin, and is also logged on to Sage
CRM using a browser, one seat of a concurrent license is used.
l If a user is filing emails or adding contacts in Outlook using the plugin, and a second user is logged
on to Sage CRM using a browser, two seats of a concurrent license are used.
l The license is freed up when Outlook closes or the Sage CRM session expires. Where a user is
using the plugin in Outlook and using Sage CRM in a browser, the license is freed only when both
Outlook and the Sage CRM session close. The license is not freed when the user action (synching,
or filing an email) completes.
When a user requests a download of an Outlook plugin .msi file, Sage CRM modifies the .msi file by applying
custom installation parameters to it. This invalidates the digital signature that has been applied to the .msi file
out of the box.
As a result, when a user runs the downloaded .msi file, Windows may display a warning reading that the
digital signature of the file is invalid. To avoid this, you can configure Sage CRM to automatically sign the
.msi files with a valid certificate after custom installation parameters have been applied.
l Be installed in the Local Computer\Personal certificate store on the Sage CRM server.
l Have a corresponding private key.
l Be enabled for the code signing purpose.
Note: Sage CRM is supplied with a demo certificate. For more information, see Using a demo
certificate.
If you leave this option blank, Sage CRM tries to find a suitable certificate in the following certificate
store locations on the Sage CRM server:
l Local Computer\Personal
l Local Computer\Trusted Root Certificate Authorities
Sage CRM is supplied with a certificate you can use to sign the Outlook plugin installer (.msi) files for
demonstration purposes.
You can find the demo certificate and its corresponding private key in the following location on a Sage CRM
server:
l SageCRMSelfSigned.cer. Public key that is used to verify the signed .msi files. Install this public key
on each client computer where users will be running the .msi files.
l SageCRMSelfSigned.pfx. Private key that is used to sign the .msi files. Install this private key on
your Sage CRM server. The private key password is SageCRM.
1. Ensure you have the latest version of VSTO. You can download it here:
https://www.microsoft.com/en-GB/download/details.aspx?id=48217
2. Close Outlook.
3. On your computer go to Computer | System Properties | Advanced.
4. Click Environment Variables.
5. In the System variables panel, click New.
l Enter VSTO_SUPPRESSDISPLAYALERTS in Variable name and enter 0 in Variable
value.
l Click Save.
6. In the System variables panel, click New.
l Enter VSTO_LOGALERTS in Variable name and enter 1 in Variable value.
l Click Save.
E-marketing overview
Sage E-marketing for Sage CRM is an integration with Swiftpage (http://www.swiftpage.com). All E-
marketing activity is initiated from within the Sage CRM user interface. This is how it works:
1. The system administrator logs on to Sage CRM and registers for the E-marketing service.
2. An E-marketing account and users are created on the Swiftpage server.
3. The E-marketing account is registered on the Swiftpage server and the E-marketing functionality is
enabled in Sage CRM.
4. An E-marketing user logs on to Sage CRM and creates an E-marketing campaign.
5. E-marketing email details are immediately sent from Sage CRM to the Swiftpage server.
6. The E-marketing email is sent from the Swiftpage server to the recipient group specified by the
Sage CRM user.
7. The recipient interaction with the E-marketing email (opens, clicks, etc.) is returned to the Swiftpage
server.
8. Once a day, all data from all E-marketing campaigns is synchronized from Swiftpage to Sage CRM.
9. The Sage CRM E-marketing user receives the campaign analysis data.
Note: When you enable E-marketing, the Opt out of E-marketing Communications flag is
automatically set on the Company, Person, and Lead Summary screens. E-marketing emails are never
sent to the associated company, person, or lead email addresses when this flag is set, even if the user
manually deselects the option.
The Swiftpage Sync time, which collates all of the daily results, completes at 03:00 Mountain Time.
Mountain Time is GMT -6 hours (Mountain Daylight Time) or -7 hours (Mountain Standard Time). This
includes information about anyone who has opted out of receiving E-marketing emails from your company.
This means that it may take up to 48 hours for the opt-out information to reach Sage CRM. For example (all
times GMT), a recipient opts out at 3 pm on the February 20th. Swiftpage collates the results at 10 am on
February 21st. Sage CRM synchronizes this information back at 11 pm on the February 21st which is 32
hours after the opt-out occurred.
Users can change the Sage CRM Sync time by editing SyncEngineConfiguration.xml in %ProgramFiles
(x86)%\Sage\CRM\<InstallName>\
tomcat\webapps\<InstallName>SPSyncEngine\WEB-INF.
<configuration>
<syncStartTimeHour>23</syncStartTimeHour>
<syncStartTimeMinute>0</syncStartTimeMinute>
</configuration>
Field Description
Account Name E-marketing Account Name. The Account Name must be unique (to
Swiftpage), made up of alpha-numeric characters, and not contain any
spaces.
Billing Currency Select currency. This is the currency you will be quoted and billed in
when you purchase the full Swiftpage service. Once saved, this field
cannot be edited.
Field Description
Password Select a password for the E-marketing user. This can be changed by the
user (from Marketing | E-marketing) or by an Administrator. If an
Administrator changes another user's E-marketing password, the user
must log off Sage CRM and back on again, to activate it and continue
working with E-marketing features. If the user changes their own
password, it is effective immediately.
Email Signature Line Maps to the SignOff field in Swiftpage templates. Should contain sign off
phrase such as "Regards," or "Thanks,". Only available when editing an
existing user.
Email Address Type in the email address for the E-marketing user. When this user
sends out emails, this will be the From address. This can be changed by
the user from Marketing | E-marketing User Profile.
User Select from a list of Sage CRM users to map the E-marketing user to.
Only one Sage CRM user can be mapped to one E-marketing user. The
first E-marketing user - the E-marketing Account Administrator - must be
a full System Administrator in Sage CRM. All E-marketing users must be
at least Info Managers to work with E-marketing. You can disable the E-
marketing and Drip Marketing User options on the E-marketing Account
Administrator, so that the E-marketing license can be made available for
a marketing user. This can be done from <My Profile> | Administration
| Email and Documents | SwiftPage E-marketing | Edit Users – as
long as you have a full E-marketing (not trial) account.
Field Description
Address First line of the address of the company where the E-marketing user
works.
Address (optional) Second line of the address of the company where the E-marketing user
works.
City City of the address of the company where the E-marketing user works.
State State of the address of the company where the E-marketing user works.
Mandatory if the Country field is set to United States.
Postal/Zip Code Post or zip code of the address of the company where the E-marketing
user works. Mandatory if the Country field is set to United States.
Country Country of the address of the company where the E-marketing user
works.
Web Site Web site of the company where the E-marketing user works.
Field Description
Copy contact details from Select to copy the details entered in the User & Contact Details panel.
above The information in the Email panel is used in standard E-marketing email
templates, including footer information. This is to comply with anti-spam
regulations.
You can also add a user to the E-marketing account when you are creating the user in Sage CRM. For more
information, see Setting up a new user and User fields.
You can set up new users and change purchased email send limit assignments. For more information, see
Adding users to the E-marketing account and Editing E-marketing users.
About MailChimp
MailChimp is an email marketing solution that's integrated with Sage CRM to let you create online
campaigns, send emails, and track results. It's less complicated than SwiftPage and comes with a free plan.
1. The System Administrator logs on to Sage CRM and integrates Sage CRM with MailChimp. This
involves creating a MailChimp account and adding a MailChimp API key and Audience ID to Sage
CRM so they can communicate with each other.
2. The System Administrator specifies how frequently campaign statistics are synchronized from
MailChimp to Sage CRM.
3. The System Administrator grants MailChimp access rights to Sage CRM users.
4. The user logs on to Sage CRM and sends information about the Sage CRM contacts to be used in a
new MailChimp campaign to the MailChimp server.
5. The user creates a MailChimp campaign. This involves designing a template, adding text, and
specifying a recipient group.
6. The user sends the emails, schedules them to be sent at a specified time, or saves the campaign for
future use.
7. The MailChimp server sends campaign emails to the specified recipient group.
8. The recipient interaction with the campaign email (opens, clicks, unsubscribes) is returned to the
MailChimp server. The recipient can chose to opt out from the campaign.
9. Data from all campaigns is synchronized from the MailChimp server to Sage CRM. Communication
records are created in Sage CRM for each recipient. Recipients who have opted out are flagged
The number of emails you can send depends on your MailChimp pricing plan. For more information, see
mailchimp.com/pricing.
Note: If you're re-enabling a disabled MailChimp integration, click <My Profile> | Administration |
Email and Documents | MailChimp Integration | Edit | Enable.
l In Sage CRM, click <My Profile> | Administration | Email and Documents | MailChimp
Integration and click create a MailChimp account in the coaching caption.
or
l Follow the steps in the Create an Account topic provided in the MailChimp Help.
As part of the integration process between Sage CRM and MailChimp, you must find and specify an API
key. Sage CRM uses this key to communicate with MailChimp. Before you can get the API key, you must
first create a MailChimp account. For more information, see Creating a MailChimp account.
After you've integrated Sage CRM and MailChimp, you can change the API key. If you change it to another
API key on the existing MailChimp account, all campaigns remain active. However, if you change it to an API
key on a different account, all campaigns are disabled and campaign statistics are not updated automatically
or manually. You can't revert to the old API key. This means that if campaigns are disabled, you can't re-
enable them.
As part of the integration process between Sage CRM and MailChimp, you must find and specify an
Audience ID. Sage CRM uses this ID to send subscriber information to MailChimp. Before you can get the
Audience ID, you must first create a MailChimp account. For more information, see Creating a MailChimp
account.
After you've integrated Sage CRM and MailChimp, you can change the Audience ID. If you change it to
another Audience ID on the existing MailChimp account, all campaigns remain active. However, if you
change it to an Audience ID on a different account, all campaigns are disabled and campaign statistics are
not updated automatically or manually. You can't revert to the old Audience ID. This means that if
campaigns are disabled, you can't re-enable them.
Note: Delete all unsupported fields from the MailChimp audience settings. For example, the default
audience in a new MailChimp account may contain the Birthday field, which is not supported by Sage
CRM out of the box.
For a list of audience fields supported by Sage CRM, see MailChimp audience fields supported out of
the box.
l For instructions on how to delete a field, see Add and Delete Fields in the Audience Settings in the
MailChimp Help.
1. Click <My Profile> | Administration | Users | Users and search for the user that you want to
configure.
2. Click the Last Name hyperlink.
3. Click Change.
4. Select Yes from Enable MailChimp and click Save.
When a user creates a new MailChimp campaign in Sage CRM, they must log on to MailChimp. They can
log on using the administrator account details that you used when creating the MailChimp account. If you
don't want them to use the administrator log on details, you can create another user in MailChimp with
Manager rights. A Manager can create and send campaigns, import lists, and view reports.
1. In MailChimp, click your profile name to open the Account Panel and click Account.
2. Click the Settings drop-down and select Users.
3. Click Invite a User.
4. Enter the email address of the Sage CRM user that you've enabled for MailChimp.
5. Select Manager.
6. Enter an invitation message.
7. Select the reCAPTCHA checkbox.
8. Click Send Invite. The email recipient can create a username and password for their new
MailChimp account. For more information, see Manage User Levels in Your Account.
l For instructions, see Add and Delete Fields in the Audience Settings in the MailChimp Help.
To ensure that a Person, Company, or Lead record being added to the system has a unique email address,
system administrators can enable the detection of duplicate email addresses.
With the detection of duplicate email addresses enabled, if a user is adding or editing a Person, Company,
or Lead record and tries to assign an email that is already used by another record in the system, an error
occurs.
1. Click <My Profile> | Administration | Email and Documents | Documents and Reports
Configuration.
2. Click Change.
3. Update the mail merge settings. For more information, see Document and report settings.
4. Click Save.
Note: To enable mail merge for a new custom entity, you must use the Advanced Customization Wizard
to create the entity, and select Has Communication and Has Library. The wizard creates a new view
called vMailMerge[entityname]. For more information, see Entity parameters.
Physical root directory for The path to the directory where mail merge documents are stored.
mail merged documents
HTTP alias for physical root The alias for the directory where mail merge documents are stored. This
directory for mail merged is set up in IIS. This is a legacy field that’s no longer used.
documents
Default document templates The path to the directory where mail merge templates are stored.
location for mail merge
Root directory for reports The path to the directory where reports are stored.
Reports query timeout The maximum amount of time, in seconds, that Sage CRM waits for a
report to run before a timeout error is displayed.
Reports build timeout The maximum amount of time, in seconds, that Sage CRM waits for a
report to build before a timeout error is displayed.
No: The value in Desktop size limitation is used when a report is run.
Use No if you regularly run large reports.
Reports export visible for non Yes: All users can export reports to PDF or spreadsheet format and
admin users view reports on screen.
No: Only a user with info manager or full system administrator rights can
export reports to PDF or spreadsheet format. All users can view reports
on screen.
This setting relates to reports run from the Reports menu and does not
affect summary reports. Enable access to summary reports in Summary
Reports Enabled.
Desktop size limitation (Kb) The size limit in Kb of the report for desktop clients. This is an
approximation; it counts the size of the XML rather than the HTML
output. It prevents very large reports running and taking all the
bandwidth.
If you regularly run large reports, you should set this to 60 MB (61 440
Kb). It must not exceed 120 MB (122 880 Kb).
PocketPC size limitation (Kb) The size limit in Kb of the report for mobile clients. This is an
approximation; it counts the size of the XML rather than the HTML
output. It prevents very large reports running and taking all the
bandwidth.
Document sync server The name of the server where documents are stored if different to Sage
CRM.
Stream images from memory Yes(default): An image produced by a graphic, chart, or organizational
chart is retained in memory and streamed to the client.
ActiveX viewer for Crystal Yes: Enables ActiveX viewer for Crystal reports.
reports
No: Disables ActiveX viewer for Crystal reports.
Crystal is not currently supported by Sage CRM. This setting remains for
backward compatibility for customers using unsupported versions of
Crystal.
Crystal reports version The version of Crystal reports installed on the web server.
Crystal is not currently supported by Sage CRM. This setting remains for
backward compatibility for customers using unsupported versions of
Crystal.
Crystal reports viewer path The path to the IIS virtual directory required for Crystal viewer support.
Crystal is not currently supported by Sage CRM. This setting remains for
backward compatibility for customers using unsupported versions of
Crystal.
Adobe converter path and The full path and file name of the Adobe converter program.
filename
Adobe converter parameter Parameters used when calling the Adobe converter program. %1 and
string %2 are placeholders for the source and destination file names and
should not be removed. -q enables quiet mode, which suppresses
information messages. Error messages are still displayed.
Report generator maximum The maximum amount of memory allocated to the report generation
memory (MB) process. The default setting is 1024MB (1GB).
Number of concurrent The number of mail merge and Excel report generation processes that
processes are carried out concurrently. New processes can start before the
previous process has completed. For example, one user’s mail merge
runs at the same time as another user’s Excel report output.
Impersonated user The login ID of the local machine administrator which Sage CRM uses to
save files to the server. The impersonated user login ID and the
impersonated user domain are required for a valid logon.
Export to file available on The type of users that can view the Export Group to file action button.
search / groups For more information, see Export Group to File.
Send email available on The type of users that can view the Send Email action button. For more
search / groups information, see Send Email.
File extension restrictions The extensions of file types that cannot be uploaded to Sage CRM.
Separate by commas. For example: exe, asp, bat.
These file restrictions apply to Drop files here and Document Drop only.
They do not apply to email attachments.
File size limitation (Mb) The size limit for each file that can be uploaded using Add File.
File upload limitation The maximum number of files per upload when using Add File. For
example, set to 10 to allow a user upload up to 10 files in a single
transaction.
Max mail merge memory The maximum amount of memory allocated to the mail merge process.
(MB) The default setting is 1024MB (1GB) but can be increased.
The amount of memory required for mail merge depends on the number
of records merged and the size of the template (the number of graphics
and amount of text).
Mail merge timeout The maximum amount of time, in seconds, that Sage CRM waits for a
mail merge to complete before a timeout error is displayed. If users
frequently receive timeout errors during mail merges, you can increase
this value. The default value is 300 seconds (5 minutes).
Max Mail Merges Allowed The number of users who can perform concurrent mail merges. The
default is 5. If you increase this value, you must also increase the value of
Max mail merge memory because more memory is required.
You can upload a new Word (.docx) or HTML (.htm or .html) template and make it available to users.
The file is listed in File(s). A green check mark indicates that it was uploaded successfully. A red
cross indicates that it wasn't uploaded. To upload successfully, a file must comply with the system
file size, type, and number of files settings that you've configured in Document and report settings.
3. Configure the Shared Template Details.
4. Click Save. Users can access the template when carrying out a mail merge. If you're uploading an
HTML template that you've created in Sage CRM, the original filename is used followed by a
number in parentheses.
Note: To upload successfully, a file must comply with the system file size, type, and number of files
settings that you've configured in Document and report settings.
Field Description
Owner The owner or author of the template. This must be a Sage CRM user.
Entity The context in which the template is available. For example, if set to Opportunity,
the template is available when a user belonging to the team specified in Team
performs a mail merge in the context of an opportunity.
Description A short description of the template. Complete this field to help users select the most
relevant template.
Quick Template The template is used as the default quick quote or quick order template.
You can edit a Word template that's included in the Shared Templates list. You can also edit a HTML
template if you have HTML experience. Use a text editor to open .htm and .html files. Be aware that
incorrect changes to the HTML code can result in templates no longer working properly.
Warning: If you are using Internet Explorer, follow the steps in Editing a shared template (Internet
Explorer).
6. You can customize the field name. For more information, see Modifying language translations. For
example:
l Caption Code: CurrentDate
l Caption Family: ColNames
l Caption Family Type: Tags
l UK Translation: Current Date (DD MM YYYY)
l US Translation: Current Date (MM DD YYYY)
Note: To enable mail merge for a new custom entity, you must use the Advanced Customization Wizard
to create the entity, and select Has Communication and Has Library. The wizard creates a new view
called vMailMerge[entityname]. For more information, see Entity parameters.
The table below shows the mail merge view for each entity. The fields in each view are listed in Insert Sage
CRM Field when a user creates a template or performs a mail merge. You can customize existing mail
merge views but you cannot use a new mail merge view with a different name. For more information, see
Editing a view.
The quote and order mail merges make use of additional views to display line items.
vMailMergeChildrenQuotes
CREATE VIEW vMailMergeChildrenQuotes AS SELECT QuoteItems.*, NewProduct.* FROM
QuoteItems Left Outer Join NewProduct ON QuIt_ProductId = Prod_ProductId WHERE Quit_
Deleted IS NULL
vMailMergeChildrenOrders
CREATE VIEW vMailMergeChildrenOrders AS SELECT OrderItems.*, NewProduct.* FROM
OrderItems Left Outer Join NewProduct ON OrIt_ProductId = Prod_ProductId WHERE Orit_
Deleted IS NULL
Users access library files through the Document tab on various entity summary screens. You can configure
access to uploaded files by team or territory.For more information, see Documents in the User Help.
The default location for library files is on the web server: %ProgramFiles
(x86)%\Sage\CRM\<InstallName>\Library. You can configure the library location in Document and report
settings and move it to a separate server if necessary.
Each file in the library has a corresponding record in the library table that describes the file name and
provides the interface to find and retrieve the file. You can use the properties of the libr_status to specify
if the file can be downloaded for viewing or editing. The Status is displayed on the Details panel of the
relevant document.
Orphan Documents Library items which used to be associated with entities (Communication,
Company, Person, Opportunity, etc.). If the communication was deleted
but the library item was not deleted, then the library item has no parent
record, and cannot be accessed via the user interface.
Document Templates Templates which have been uploaded to <My Profile> | Administration
| Email and Documents | Document Templates.
Global Library Library items which are attached to entities (Communication, Company,
Person, Opportunity etc.).
l The pipeline-style graphic displays library item types and the Sage CRM database size.
l Excess displays if you are currently exceeding your storage limit.
Warning: Customizations that you make to Sage CRM impact system metadata. For this reason, you
should lock Sage CRM and notify users before you begin any customization work. For more information,
see Locking the system.
The language used in the screens is defined in each user profile. To change the language the user works in:
l Inline translation is useful when renaming field names in one or multiple languages.
l Field customization is useful when you're changing the translations of selection lists in one
language.
l Translations list is useful when you're adding translations for selection lists in multiple languages.
Warning: You should not add or delete translation records on the Translations page as doing so has far-
reaching effects on your system. You should use this functionality only if you've completed a Developer
training course.
For more information about changing the text in coaching captions, see Customizing onscreen coaching.
Field customization
Field customization lets you change the translations of selection lists in one language.
Translations list
Translations list lets you add translations for selection lists in multiple languages. This example adds French,
German, and Spanish translations
The following table explains the standard fields on the Translation Details page.
Field Description
Caption Code The system code that is stored—not what the user sees on the screen.
For example, LetterOut. This stays the same regardless of the language
translation. It is set up when the selection choices are defined. For more
information, see Fields.
Caption Family The Caption Family groups the code. For example, LetterOut, LetterIn,
PhoneOut, PhoneIn all belong to the Caption Family Comm_Action.
Caption Family Type The Type of Caption Family. For example, for a selection list the family
type is Choices.
Caption Order The order the caption appears in the selection list.
Caption Context Can be used to add free text to a custom caption to give it more meaning.
This provides context information for translators less familiar with the
system.
Managing help
l Installing help files locally
l Switching between local and web help
l Customizing help links
l Adding field-level help
l Customizing onscreen coaching
If your environment includes multiple Sage CRM servers, you need to install help files only on one of them.
Other Sage CRM servers will automatically get access to the help files once they are installed.
After installing help files locally, you can always switch back to using help hosted on web servers.
The Help Setup file is available on the Sage CRM Partner Community. The file name has the
following format:
SageCRM_<VersionNumber>_HelpSetup.exe
2. Copy the Help Setup file to the Sage CRM server on which you want to install help.
3. Run the file and complete the Setup Wizard. You will be prompted to enter administrative
credentials for the Sage CRM database.
l <Sage CRM installation folder> is the folder you specified when installing Sage CRM. By default,
this is %ProgramFiles(x86)%\Sage\CRM\CRM.
l <Language> is the language of the help files, for example, EN, DE, ES, or FR.
Local help files include context-sensitive help, which users can access by clicking the Help button in the
Sage CRM UI. The language in which context-sensitive help is displayed depends on the user’s language
preference. For more information, see Setting up a new user. If the help file in the user’s chosen language
has not been installed, help is displayed in system default language.
After installing help files, you can edit the files or replace them completely.
Sage CRM help is created using Madcap Flare. If you have the expertise and licenses to create a
customized help project which mirrors the Sage CRM help file structure, you can replace parts or all of the
standard Sage CRM help with your customized project. Alternatively, you can create help using the help
authoring tool of your choice and replace part or all of the standard Sage CRM help.
l The default initial file for the User Help and System Administrator Help is named Default.htm and
located in the corresponding folder (Main Menu or Administration) specified in the table above.
Note: We recommend that you back up the local help files before modifying them. Sage CRM is
delivered with new help files and context-sensitive links with each release. Custom local help files and
links are preserved on upgrade.
1. Identify the field name where you want field-level help to be displayed. For example, pers_suffix.
2. Click <My Profile> | Administration | Customization | Translations.
3. Click New.
4. Add the new translation. The caption code must match the column name. For example, with pers_
suffix, the caption family must be set to ColHelpText, and the caption family type to Tags.
5. Type the text for the field tooltip in the language translation fields.
6. Click Save. A question mark icon is displayed beside the field. Hover over the question mark icon to
view the help text.
1. Enable coaching captions in <My Profile> | Administration | System | System Behavior | Allow
Coaching In CRM.
2. Click <My Profile> | Administration | Customization | Translations.
3. Select Inline coaching captions editing. A new Add /Edit Coaching Text link is displayed at the top
of every screen. This link lets you add or edit the coaching text for the current screen.
4. Navigate to the screen where you want to add new on-screen coaching text.
For example, click New | Company. Enter a name in Company Name and click Enter Company
Details.
5. Click Add/Edit Coaching Text at the top of the screen. The Onscreen coaching page is displayed in
a new window.
The Extensibility Module is required to record changes and create a component. For more information on
recording and creating components, see the Developer Help on the Sage CRM Help Center.
Components supplied to you may contain full details of any of the following areas:
l Field Customizations.
l Field Security—where the update applies to "Everyone".
l Screen Customizations—including Field Level Scripting and Custom Content.
l View Customizations.
l List Customizations.
l Tab Customizations—including System Menus and Menu Buttons.
l Block Customizations—including Dashboard blocks.
l Table and Database connections.
l TableScript Customizations.
l Translations—including inline translation mode, field customization method and translations list
method.
l Reports—creation of new reports and modification of existing ones.
l Most Workflow Customizations.
l Button Groups.
l Interactive Dashboards.
Customization script files, such as ASP pages, will be included automatically if they are directly referred to
(for example, by a newly created tab). However, when an ASP page is updated, or when a file that is
indirectly referred to is added (for example, an "include file" in an ASP page), then these files must be
l Ensure that the component you are about to install is in ZIP file format.
l Component ZIP files supplied to you may contain more than one component. When you upload a
ZIP file containing more than one component, all of the components contained in the ZIP file are
available for installation.
l Copy the component ZIP file to a location where it is easily accessible.
Tip: By default, you can install a component only once. To allow multiple installs of a component, open
the component ecf file and set multipleinstalls to Y.
Uninstalling components
1. Click <My Profile> | Administration | Customization | Component Manager.
2. Select the component from the Available Components list.
3. Click Install Component.
4. Select Check this to uninstall the <component>.
5. Click Install component. The <component> tab is no longer displayed.
When configuring the Mapping component, system administrators can select a map service provider to be
used. For example, OpenStreetMap and its contributors, Stamen, Esri, F4map, Komoot, or ViaMichelin.
Note: To use the Mapping component, the client computers must have Internet access. The component
embeds unencrypted content from a remote website, so the component doesn’t work when HTTPS is
enabled.
In this section:
1. Open SQL Server Management Studio and connect to the SQL Server hosting the Sage CRM
database.
2. In Object Explorer, expand the root node, expand Databases, and locate the Sage CRM database.
By default, this is CRM.
3. Right-click the Sage CRM database and click New Query.
4. Enter the following SQL query and click Execute:
5. Select the last two lines in the query and click Execute again:
RECONFIGURE
GO
The Mapping component uses a free map search provided by MapQuest. To enable the map search in Sage
CRM, you need to create a MapQuest account, generate a consumer key, and then provide that key to the
Mapping component.
1. Ensure that your Sage CRM license allows you to use the Component Manager.
2. Download the Mapping component from https://community.sagecrm.com/add_on_store/m/sage_
crm_downloads/22244.aspx.
3. Log on to Sage CRM as a system administrator.
4. Click <My Profile> | Administration | Customization | Component Manager.
5. Under Add Component, browse to select and open the .zip file you downloaded in step 2.
6. Click Upload New Component. The component is added to the Available Components list.
7. In Available Components, select Sage CRM Mapping Component, and click Install Component.
Note: Ensure you select the latest download of the component. If you’ve installed the Mapping
component before, the latest version has a number after the name. For example,
MappingComponent(1).zip.
Warning: Do not select the checkbox below this option, as this uninstalls the component. This
checkbox does not confirm that you agree to terms and conditions.
9. Click Install Component. If prompted, confirm that you want to install the component.
10. When the installation completes, click Continue.
In this step, you enable the map search and select the map service provider to be used with the Mapping
component.
In this code, replace CONSUMER KEY with the actual consumer key you obtained from
MapQuest.
l var mapObj = {
name: "MapTiles",
url: [
In this element, uncomment the URLs of the map service provider you want to use. You can
use only one provider. When switching providers, make sure to comment out the URL of the
provider you switch from.
Warning: Do not uncomment the names of map service providers. If you do so, the
Mapping Component won’t work.
Note: After you change the settings.js file, for example, select a different map service provider,
every user must refresh their browser cache for your changes to take effect.
The Mapping component is now ready to use. Once you have installed and configured the Mapping
component, the Map tab becomes available for companies, cases, opportunities, and leads.
Out of the box, Sage CRM database doesn’t contain GPS coordinates for entities. To accurately display a
company, case, opportunity, or lead on the map, you must specify its location manually.
1. Click the Search arrow on the top bar and click <Entity>.
2. Search for the entity record and open it.
3. Click the Map tab.
4. Click Search. The address is displayed in the search box and a pin is displayed in the approximate
position of the address.
You can use the Mapping component to create a map gadget and link it to a list gadget on the interactive
dashboard. When a user selects an entity in the list gadget, it’s displayed on the map.
1. Click the Search arrow on the top bar and click <Entity>.
2. Search for the entity record and open it.
SageCRM.CUSTOM_TEAM_CALENDAR_USER_COLORS = {
};
Where
3. Save and copy the file to the following folder on the Sage CRM server:
<Sage CRM installation folder>\WWWRoot\js\custom
Desktop HTML List Contents Shows the fields that are currently displayed as list columns in the
Calendar List tab.
Field Select the field you want to add to the Calendar List as a column.
l Checkbox
l Date Only
l Date & Time
l Email Address
l Integer
l Multiline Text
l Numeric
l Phone Number
l Selection
l Text
l User Select
l WWW URL
Other field types are not supported even though they are present in the
list. When you add a field whose type isn't supported, that field doesn't
appear in the Calendar List.
Hyperlink to Select the entity to which you want to hyperlink entries in the column.
Alignment Select how you want to horizontally align values in the list column.
Possible values:
l Centre
l Left
l Right
Show Heading Display or hide the field caption in the column heading.
Possible values:
Default Order By Enable or disable the default sorting of the list by the column.
Possible values:
l Yes. Sorts the list in the ascending order using the column
values.
l No. Disables sorting by the column.
1. Download the Advanced Customization Wizard .zip file from the Sage CRM Partner Community.
Make sure you download the wizard for your version of Sage CRM.
You can search for and download the Advanced Customization Wizard (formerly known as the Main
Entity Wizard) on the Sage CRM Partner Community.
2. To access the Partner Community, you must be either a Sage CRM Business Partner or member of
the Sage CRM Developer Program. For more information on how to join, see Join the Sage CRM
Developer Program.
3. In Sage CRM, install and start the Advanced Customization Wizard:
a. Log on to Sage CRM as a system administrator.
b. Click <My Profile> | Administration | Customization | Component Manager.
c. Under Add Component, specify the Advanced Customization Wizard .zip file you
downloaded in step 1 of this procedure.
d. Click Upload new component.
e. Under Available Components, click to select Advanced Customization Wizard, and then
click Install Component. After its installation, the Advanced Customization Wizard remains
listed under Available Components. This allows you to use the wizard to create custom
entities in the future.
4. On the Component Parameters, Step 1 of 2 screen, specify parameters for the entity being created.
For more information about these parameters, see Entity parameters.
Entity parameters
Parameter Description
Entity Name Enter the name for the new custom entity you want to create.
Entity Column Prefix Enter the four letter prefix you want to add to the names of columns in the
entity table.
Do not include an underscore. The prefix must follow the applicable identifier
rules configured on the database server.
Tag with Component Allows you to script out and further customize new entities. The value in this
Name text box has the following format:
<EntityName>_Component
When creating a new custom entity, you can select this component and click
Preview Script to view the changes involved in creating the entity.
You can set this component as the currently recording component and further
customize the entity. For example, you can script out the entire customization.
Add to My CRM When selected, creates a custom list and a custom tab for the My CRM work
area. Displays a list of new entity records associated with a user.
Add to Find When selected, makes the custom entity available for search in Sage CRM.
Selecting this check box creates a custom search entry screen and a
corresponding search results list.
Add to Team CRM When selected, creates a custom list, an ASP page that displays the list, and a
custom tab for the Team CRM work area. Displays a list of all new entity
records associated with a team.
Has Companies When selected, creates a company tab and adds a corresponding custom
company list to the tab group.
This enables you to view a list of associated companies for all new entity
records, and link existing companies to the new entity using a Link button.
To set up deduplication for companies in this scenario, see Enabling
deduplication for a custom entity.
Has Accounts When selected, creates an account tab and adds a corresponding custom
account list to the tab group.
This enables you to view a list of associated accounts for all new entity
records, and link existing accounts to the new entity using a Link button.
Owned by Companies When selected, adds a custom tab to the Company tab group. This custom
tab displays a list of associated new entity records for a company.
Allow Web Service When selected, enables the new entity for Web Services. For more
Access information, see Web Services in the Developer Help on the Sage CRM Help
Center.
Has People When selected, creates a people tab and adds a corresponding custom
people list to the tab group.
This enables you to view a list of all associated people for all new entity
records, and link existing people to the new entity using a Link button.
To set up deduplication for people in this scenario, see Enabling deduplication
for a custom entity.
Owned by People When selected, adds a custom tab to the People tab group.
This custom tab displays a list of associated new entity records for a person.
Allow Read-only SData When selected, enables the new entity for SData. For more information, see
Access SData in the Developer Help on the Sage CRM Help Center.
Has Opportunities When selected, creates an opportunities tab and adds a corresponding
custom opportunities list to the tab group.
This allows you to view all the associated opportunities for all new entity
records.
Has Leads When selected, creates a lead tab and adds a corresponding custom leads list
to the tab group.
This allows you to view all the associated leads for all new entity records.
Owned by Leads When selected, adds a custom tab to the Leads tab group.
This custom tab displays a list of associated new entity records for a lead.
Has Cases When selected, creates a cases tab and adds a corresponding custom cases
list to the tab group.
This allows you to view associated cases for all new entity records.
Owned by Cases When selected, adds a custom tab to the Cases tab group.
This custom tab displays a list of associated new entity records for a case.
Has Communications When selected, creates a communications tab and adds a corresponding
custom communications list to the tab group.
This allows you to view associated communications for all entity records.
Select this check box to perform mail merges from the context of the newly
created entity.
Has Library When selected, creates a library tab and adds a corresponding custom library
list to the tab group.
This enables you to view all associated library entries for all new entity
records.
Select this option to perform mail merges from the context of the newly
created entity.
Owned by Orders When selected, adds a custom tab to the Orders tab group.
This custom tab displays a list of associated new entity records for an order.
Owned by Quotes When selected, adds a custom tab to the Quotes tab group.
This custom tab displays a list of all the associated new entity records for a
quote.
Workflow When selected, creates a workflow for the custom entity and enables default
workflow rules for the new entity.
Has Workflow Progress When selected, creates a progress table for the custom entity table and allows
you to add progress notes for custom entity records.
Deduplication When selected, creates a deduplication screen for the new entity so you can
set deduplication rules in Sage CRM.
To set up a deduplication screen for a new entity that has People or has
Companies, see Enabling deduplication for a custom entity.
For Dot Net When selected, creates an entity for which you can write a .NET module
instead of using ASP pages. The entity is created with metadata in the usual
way but as ASP pages are not created, you must use the .NET DLL to
customize the entity.
Owned by Accounts When selected, adds a custom tab to the Account tab group.
This custom tab displays a list of associated new entity records for an account.
Owned by When selected, adds a custom tab to the Opportunities tab group. This
Opportunities custom tab displays a list of associated new entity records for an opportunity.
l ASP files
l Metadata
ASP files
The Advanced Customization Wizard generates custom ASP files for the custom entity depending on the
component parameters you configure for the entity.
Metadata
The Main Entity Wizard generates metadata for the new main entity depending on the component
parameters you configure for the entity. You can view the metadata in Enterprise Manager (for example, in
the Custom_Tables table) and in Sage CRM (<My Profile> | Administration | Customization | <Entity>).
Metadata Description
<EntityName>SearchBox The entry screen used for search selects and finds
on new entities.
<EntityName>Grid The grid used for search selects and finds on new
entity records.
Depending on the options you select on the Parameter Info screen, an entity progress table may be
available. For example ProjectProgress. You can customize this in the same way as a typical progress table.
When you create a custom entity, it is automatically added to the Reassign User Records page. Also the
Status field (proj_status) that is used as a filter is automatically added to the new table.
To prepare the custom entity for reassignment, the administrator has to edit or add the necessary values of
the Status field, as follows:
From
CRM.URL(141)+"&Key-1="+iKey_
CustomEntity+"&PrevCustomURL="+List.prevURL+"&E=Accounts", 'Person', 'insert'));
to
CRM.URL(1201)+"&Key-1="+iKey_
CustomEntity+"&PrevCustomURL="+List.prevURL+"&E=Accounts", 'Person', 'insert'));
Tip: For more information about URL, see Url(Action) in the Developer Help on the Sage CRM Help
Center.
l <EntityName>.gif
l small_<EntityName>.gif
When the current theme in Sage CRM is Contemporary, the default locations of these files are as follows:
l %ProgramFiles(x86)%\Sage\CRM\CRM\WWWRoot\Themes\
Img\Ergonomic\Icons
To change the default logos for an entity, create your custom .gif logo files, name them according to the
patterns above, and then copy your files to the appropriate locations to overwrite the original logo files stored
there.
3. Click the Fields tab to see the entity columns that you can include in the view.
Each entity also has a hidden unique identifier that's used for SQL joins.
Table Unique ID
Project proj_projectid
Cases case_caseid
7. Click Save.
The new view is listed in Source View on the Report Options, Step 1 of 2 page when you create a new
report.
By default, Sage CRM looks for data related to a custom entity list in all database columns. You can
configure Sage CRM to look for data only in those database columns that are added to your custom entity
list. As a result, your list will load faster.
When this option is set to Yes or --None--, Sage CRM looks for data in all database columns.
4. Click Save.
If you get an error when your list is loading, a list column in your customization might be missing from the
SQL query that loads list. To resolve this issue, add the column to the list but make it hidden:
7. Click Save.
Creating a field
You can create a new field and add it to a screen. For example, to track the overall relationship of a customer
to your company, you can add a Relationship field to the Company table.
Field properties
The tables below explain the standard fields on the Change Database Field Properties screen, non-
standard fields that are displayed depending on the Entry Type you select, and the different Entry Types.
Standard fields
Entry Type Defines how the user inputs information to the field. Additional fields are
displayed on the Change Database Field Properties screen depending
on the Entry Type you specify. See the table below for details.
Column Name The field name in the database. The naming convention is the table
abbreviation_field name, for example comp_relationship. Do not use
extended characters in the column name.
If the value of Entry Type is Search Select Advanced, you can set
Default to search within the current entity, person, company, or custom
entity. For example, if your search entity is Opportunity, and you want the
search to show only opportunities in the current Company context, set
Default to Search With Current Company. If you leave this field blank,
the search doesn't filter on the current context.
Exclude from Quick Find Quick Find allows users search for key terms across all company,
people, case, opportunity, lead, solution, communication, order, quote,
and custom entity records at once. It searches text, email, and URL
fields. You can exclude an individual entity field from Quick Find to
narrow the range of results, reduce the size of the index and RAM
requirements, and shorten the time to return results. You can also
exclude an entity from Quick Find. For more information, see
Configuring Quick Find.
Non-standard fields
Field Description
Lookup Type Create New Lookup: You must create a new list of selection field values.
Use Existing Lookup: You can use an existing list of selection field
values.
Selection Height The height of the selection list. For example, set this to zero to create a
drop-down selection list when the number of selection values is greater
than zero. Set this to 10 to create a drop-down selection list when the
number of selections is greater than 10. If this field is set to 10 and the list
has only three entries, the selection list is displayed as one long list,
rather than a drop-down list.
Search SQL An SQL filter clause that's applied to the search. For example, to create
a field that allows a user to select only opportunities of type Consulting,
enter oppo_type = ‘Consulting' to restrict the available results.
If both Default and Search SQL are blank, no restrictions are applied
and a user can select any returned record.
Search Entity The default entity that Search Select Advanced fields search.
View Field Additional columns that are displayed in the Search Select Advanced
search results. For example, a Person field could also list the related
business phone number.
Tied Fields The entity that the Search Select Advanced field can search in addition
to the default search entity.
For an example of this in Sage CRM, see the Regarding field on the
Communication entity. It allows a user carry out a Search Select
Advanced on opportunities or cases.
Restrictor Fields A field that restricts the searched values for the current Search Select
Advanced field.
Use this field if there's a relationship between this entity and another
SSA field on the same table. For example, if the value of Restrictor is
Company for a Person SSA field, when a user adds a new case and
selects the company, the Person SSA field shows only the people in that
Company. This works because there's a relationship between Person
and Company whereby a person belongs to a company.
Linked Fields Fields that are populated based on the value that a user selects in the
SSA field. For example, if a Phone field is added as a linked field to a
Person SSA field, the Phone field is populated with the phone number of
the person selected in the Person field.
You must declare the Linked field in the form "'Select Field=Form Field".
You can link to multiple fields using a comma to separate each field.
There are some restrictions: do not use a semicolon to separate the
fields as this breaks functionality. And don't link to a field that's used in
the WHERE clause of the view as this causes the drop-down list to be
blank.
Search On All View Fields Allows users to search on all columns listed in View Field.
Entry types
Text With Check Box Search A text field that has radio buttons when used on a search screen or as a
search field in a report or group. The radio buttons translations are Has
Value, Is Empty, or Either. You can customize the translations for the
radio buttons in <My Profile> | Administration | Customization |
Translations.
Intelligent Select A selection list populated with predefined selections. If the number of
entries in the selection list is greater than the selection height, the user
can search first and then select. Use this entry type only when the
number of entries in the list is unmanageable for a simple Selection.
Multi-select A selection list that allows a user to select more than one option. You can
add multi-select fields to all screen types, and use them in reports and
groups. Sage CRM treats multiple selections as logical ORs. If you run a
report using two search criteria, records that meet both OR either criteria
are returned.
Date Only Date field. A user can enter a date or use the calendar. You can set a
default system date of Current Date Plus Delta (in minutes) or Current
Date. Date Only fields are not time zone adjusted.
Currency A user can enter an amount and select a currency from a list. You define
the currency list in <My Profile> | Administration | Data Management |
Currency. Currency values can be a maximum of 15 digits long,
including the decimal point and places).
Search Select Advanced Allows a user to search for records on an entry screen. A user can enter
a few letters in a field, click the SSA icon, and select an option from the
search result hyperlinks beneath the field. For example, the SSA field on
Cases tab in the context of a Solution.
Minutes Duration (in minutes) of cases and opportunities as they move from one
stage to another. You must specify the fields that flag the Start Time and
End Time.
User Group Select Allows a user to select an existing static or dynamic group and link it to a
record. The record is not added to the group.
Check Box Check box. For example, Private on the Communications entry screen.
When used on a search screen, the check box is converted into radio
button options: 'Has Value', 'Is Empty,' or 'Either'. You can customize
translations for these options in <My Profile> | Administration |
Customization | Translations.
Multiline text Multiple lines of free text. For example, Problem Details on the Case
entry screen.
Email address A link to send an email. For example, Email on the Person Summary
screen.
WWW URL WWW URL. For example, Website on the Company entry screen.
User Select A list of users. For example, Assigned To on the Case entry screen.
Team Select A list of teams. For example, Team on the Opportunity entry screen.
Date & Time Calendar and time. For example, Date & Time on the Communication
entry screen.
Editing a field
1. Click <My Profile> | Administration | Customization | Primary Entities / Secondary Entities |
<Entity>.
2. Click the Fields tab.
Deleting a field
You can delete any new fields that you've added. However, you must be careful when updating the
database. Ensure all users are logged off Sage CRM when a field deletion is taking place, and that a backup
of the database is available. Deleting a field is not reversible. If you make a mistake, you should restore the
database backup.
It is recommended that you make major changes to fields and screens on a test system before implementing
them in a live environment. Failing to do so may cause unexpected behavior in the system.
You can supplement field security with JavaScript by adding code in the scripting boxes available on the
Screens tab when customizing an entity. For more information on field-level scripting, see Using generic
JavaScript in field level scripting.
Field security changes apply immediately, and to all logged on users. There's no need to reset IIS, to carry
out a metadata refresh, or require users to log off and back on.
l If you use field-level security to restrict rights, you must check whether possible conflicts can arise.
For example, ensure that a user isn't required to enter a value into a field for which they don't have
read access.
l If checkboxes in the Read and Write Access columns are cleared, this means a default denial of
access rights to connected security types. For example, if all checkboxes in the Everyone row are
cleared, all profiles, teams, or users are denied read and write access to that field. However, a user
can access the field or change its contents if a security type that applies to that user is added to the
list and the relevant Allow checkboxes are selected.
l If one user is denied read access to a field, security considerations mean that the contents of this
field are excluded from keyword searches performed by all users. For more information, refer to
System behavior fields.
For example, you could set up new security types for a user called Susan Maye and for the Sales Manager
Profile on the Company SLA field. The following table lists the security types that could affect Susan Maye’s
rights to view or change the SLA field:
Everyone Everyone
Susan Maye is a member of the Direct Sales team and has been assigned the Sales Manager Profile.
Susan Maye as an individual user might have write access for the SLA field. However, if either the Direct
Sales team or the Sales Manager Profile are denied write access, Susan Maye’s personal settings are
overridden and she cannot change the value contained by the SLA field. Susan Maye’s access to the SLA
field is ultimately defined by the "Everyone" rights that apply to every user in the system.
Customizing mappings
l Working with lead mappings
l Mapping leads to opportunities
l Mapping leads to companies and people
l Working with solution mappings
Currently, a number of fields are converted automatically when a lead is converted to an opportunity, for
example the Description field. See the table at the end of this section for the default mappings.
Mappings can also be created from fields on the Lead table to fields on the Company and Person tables.
The mappings take effect when the lead is matched to a company and a new company record is created.
Currently, a number of fields are converted automatically when a lead is matched to a new company. For
example, the Lead Company Name maps to the Company Name. See the table at the end of this section for
the default mappings.
Lead to Company mappings can be customized by matching the field names with the same prefix. Person,
Address, and Phone mappings must use the same set of hardcoded fields. For more information, see
Mapping leads to companies and people.
lead_description oppo_description
lead_source oppo_source
lead_mainproductinterest oppo_product
lead_details oppo_note
lead_waveitemid oppo_waveitemid
lead_companyname comp_name
lead_companywebsite comp_website
lead_companyrevenue comp_revenue
lead_companyemployees comp_employees
lead_personlastname pers_lastname
lead_personfirstname pers_firstname
lead_personsalutation pers_salutation
lead_persontitle pers_title
lead_personfaxcountrycode pers_faxcountrycode
lead_personfaxareacode pers_faxareacode
lead_personfaxnumber pers_faxnumber
lead_companyaddress1 addr_address1
lead_companyaddress2 addr_address2
lead_companyaddress3 addr_address3
lead_companyaddress4 addr_address4
lead_companycity addr_city
lead_companypostcode addr_postcode
lead_companystate addr_state
lead_companycountry addr_country
However, when mapping from Lead to Person, you must use the following hardcoded values.
l lead_personlastname
l lead_personfirstname
l lead_companyaddress1
l lead_companyaddress2
l lead_companyaddress3
l lead_companyaddress4
l lead_companycity
l lead_companystate
l lead_companycountry
l lead_companypostcode
The phone, fax and email fields are all set to map to the standard phone, fax and email fields. Only
hardcoded values can be used for these fields.
Finally, for all of the above to work, the field you are transferring must be on the Entry Screen for both the
lead and, for example, the company. For example, to transfer data from lead_companyXXXX to comp_
XXXX, comp_XXXX must be on the company entry screen and the lead screen. If you leave it off the
company entry screen, you do not get the comp_XXXX data transferred.
1. Look up a field on the company table, which is not currently mapped to the lead. For example, the
new field comp_relationship. For more information, see Creating a field.
2. Make a note of the field name. For example, comp_relationship.
3. Click <My Profile> | Administration | Customization | Primary Entities | Lead | Fields.
4. Add a new field called lead_companyrelationship. You should enable the mapping to the company
field by selecting comp_relationship as the Lookup Family.
1. Click <My Profile> | Administration | Customization | Translations. The Translations Find page is
displayed.
2. Enter the translation of an existing address type in Translation and click Find.
3. Click the caption code link.
4. Make a note of the details and click Cancel. This returns you to the Translations Find page.
To add a new Person Type check box to the Person screen, follow the same steps using Link_CompPers.
You can add new email and phone types in the same way, using the caption families: Link_CompPhon,
Link_PersPhon, Link_CompEmai, and Link_PersEmai.
Field Description
Position Position on the screen. Select New Line or Same Line from the list.
Create Script You can enter JavaScript which is executed on the server side when the
input form is created.
OnChange Script JavaScript can be entered, which is executed on the client side as the
user changes information on the page. You can enter generic JavaScript
and/or Sage CRM’s Client-Side API library of functions.
Validate Script You can enter JavaScript which is executed on the server side when the
user clicks Save.
Custom Content You can enter HTML or generic JavaScript and/or Sage CRM’s Client-
Side API library of functions.
l Field security. A codeless way of securing access rights to fields across all screens.
l Scripting using the Sage CRM Client-Side API. A simple, upgrade-proof set of client-side
functions which can be called from the OnChange Script field attached to an individual field, or via
the Custom Content field associated with a screen or list. This can be most powerfully used to
change the appearance of fields on a screen to make user input faster and easier. A basic
conceptual knowledge of coding is helpful, but not essential. Scripts using the Client-Side API can
all be maintained in a single location in the ..WWWROOT\JS\CUSTOM folder of your Sage CRM
install. Maintaining and updating scripts in this way offers significant time and quality improvements
over adding scripts to individual fields or screens. This is the recommended method for carrying out
l Field Level functions - changing the way specific fields on a page behave. For example, setting a
background color or hiding a field.
l Page Level functions - changing the way parts of a screen behave. For example, setting an error
message, or adding a Print button to a screen.
l Advanced functions - these can be used in conjunction with other API calls, for example, to make
date comparisons.
Note: Client-side scripting is a tool for easily customizing the appearance of CRM screens and lists to
suit the way your users work. It is not a substitute for effective data validation or security on your system.
This should be still be handled by the existing security features of Sage CRM.
l If you are adding the code in Custom Content, it must be enclosed with <script></script> tags in this
format:
<script>
crm.ready(function()
{
// Add your script here
});
</script>
l If you are adding the code in OnChange Script, it does not need to be enclosed with
<script></script>.
l Use single quotes only in the OnChange Script field. This also applies to the OnChange Script field
in Workflow Customization actions Set Column Value, Reset Column Value, and Display Fields for
Amendment.
l If you want to try the sample code, please remove any special character formatting which will
interfere with the code before pasting into CRM. Pasting into Notepad or a similar text editor before
copying and pasting for use with Sage CRM is a good way to do this.
l Make sure the first character of the Client-Side API function is lower case. For example,
crm.markRequiredFields.
This example adds highlight, bold, and italic effects to two fields on the Company Entry Screen.
<script>
crm.ready(function()
{
crm('comp_name').bold().highlight();
crm('comp_type').italic().underline();
4. Click Save.
This example adds a pink highlight color on all required fields on the Company Entry Screen.
<script>
crm.ready(function()
{
crm.markRequiredFields('pink');
});
</script>
4. Click Save.
<script>
crm.ready(function()
{
crm.addButton('print');
});
</script>
4. Click Save.
Note: This script prints the contents of the HTML <div> element whose ID is EWARE_MID. All other
elements of the HTML page are not printed.
This example changes the Team assigned to an Opportunity depending on the type of opportunity. It's
similar to the Field Level Scripting OnChange Script example, but uses the client-side API instead, and adds
pink highlight on Team to alert the user to the change.
if(crm('oppo_type').val() == 'Mix')
{
crm('oppo_channelid').val(4);
}
else if(crm('oppo_type').val() == 'Consulting')
{
crm('oppo_channelid').val(3);
}
else
{
crm('oppo_channelid').val(2);
}
crm('oppo_channelid').highlight('pink');
This example displays a message to the user if the E-marketing opt-out check box isn't selected.
if (crm('comp_optout').val() == false)
{
crm.infoMessage('This company will not receive any E-marketing
communications');
}
The Custom Content is generated at the beginning of the page, so whatever you create appears first in the
screen or panel.
For example, add the following HTML text to the Custom Content field of the Company Summary screen.
This generates a button to open a web page where you can search on company information. The button is
displayed in the top left of the Company Summary panel.
<input type=button value="Company Information" name=Test onclick="window.open
('http://www.sagecrm.com')">
When you view a related record summary screen, the new button appears in the Company panel.
There is no limit to the size of the script that you can enter in the Create, Validate and OnChange fields,
although for larger scripts it may be easier to include the script in an ASP page in the
..WWWRoot\CustomPages folder of the Sage CRM install. For more information, see the Developer Help
on the Sage CRM Help Center.
Server-side
l Create Script. This script is run on the server when the screen is created.
l Validate Scripts. This script is run on the server when the user clicks Save on the screen.
Client-side
An OnChange script runs on the browser whenever a user changes the field to which the script is attached.
There's a difference in syntax between server-side scripts and client-side scripts. This is because server-
side scripts have access to the current CRM Object's fields and properties, whereas client-side scripts have
access to the HTML Document Object Model (DOM). For more information on the CRM Object, see the
Developer Help on the Sage CRM Help Center.
Create Script CRM Object Model, properties and methods (current context).
CurrentUser object and Value property (the value the user is
submitting).
Validate Script CRM Object Model, properties and methods (current context).
CurrentUser object and Value property, as well as Valid property and
ErrorStr method.
OnChange Script HTML DOM properties and methods as well as CurrentUser object and
Value property.
The Current User and Value are the only CRM Object properties you
can reference from the client side.
Server-side scripts are executed on the Sage CRM server. Server-side JavaScript extends the core
language by supplying objects for running JavaScript on a server. For example, server-side extensions
allow an application to communicate with a relational database, provide continuity of information from one
invocation to another of the application, or perform file manipulations on a server.
Within server-side scripts you can refer to the complete CRM object model, so you refer directly to entries
within the current context. As these scripts are run on the server you are limited to actions that do not output
information to the client.
You attach Create Scripts to the field in a screen that the script is to act on when the screen is created.
These scripts are commonly used for automatically setting fields based on input information.
Client-side scripts are loaded and run on the user's browser. Client-side JavaScript extends the core
language by supplying objects to control a browser and its DOM. For example, client-side extensions allow
an application to place elements on an HTML form and respond to user events, such as mouse clicks, form
input, and page navigation.
You attach OnChange scripts to the field that the user is going to change (not the field you want the change
action to occur on). The properties that are available are the same as for the HTML DOM. The CurrentUser
object is available client side in system generated screens.
If you view the source code of the HTML page you can view any changes you are making to the Sage CRM
objects.
Clicking on the field name’s hyperlink displays some of the properties you can access and change using
JavaScript. The most important property is the field name—in this case, "comp_relationship"—that enables
you to access the field and its associated properties in code.
In addition, you can define access rights to a field using the Field Security feature, which you select from the
Fields tab for an entity.
The Modify Field Security Screen allows you to use check boxes to indicate whether particular security types
(an individual user, a team, a security profile, or "Everyone") has read/write access to a field.
The JavaScript code written by an administrator cannot grant either read or write access to a user if it is
denied on this screen.
Field-level scripts should use a single quoted character (') instead of a double quoted character ("). For
example, case_channelid=rec('user_primarychannelid'); instead of case_channelid=rec("user_
primarychannelid");. Double quoted characters (") in field-level scripts may cause issues when installing
scripted components.
Example 1
if(CurrentUser.user_
primarychannelid==1)
{
DefaultValue='None';
}
Note: The DefaultValue property can only be set when a new record is created, or in a field
created by a workflow action.
Example 2
This example adds a Create Script, which automatically sets a new company type to Competitor and makes
this field read only when William Dolan (DolanW) creates the company.
if(Values("Act")==1200)
{
if(CurrentUser.user_logon=='DolanW')
{
DefaultValue='Competitor';
ReadOnly=true;
}
}
Example 3
This example adds a Create Script, which removes the Archive selection item from the Company Status list
when the System Administrator (Admin) creates a new company.
if(CurrentUser.user_logon=='Admin')
{
RemoveLookup('Archive');
}
4. Log in as the system administrator. When you create or update a new company, the Archive option
is no longer available on the Status list.
Note: The scripts in Examples 2 and 3 work in conjunction with whatever access settings may have
been defined in the Field Security interface because in both cases the scripts are restricting access to
the fields rather than widening it. In contrast, a script that specifies write access to a field depending on
the user’s ID will not take effect if that user has already been denied access in the Field Security
interface.
Example 1
You can add an OnChange Script, which changes the Team assigned to an Opportunity depending on the
type of opportunity. You must attach the OnChange Script to the field that you want to change.
if(typeof(oppo_channelid)!='undefined')
{
if(oppo_type.value=='Mix')
{
oppo_channelid.value='4'
}
else if(oppo_type.value=='Consulting')
{
oppo_channelid.value='3'
}
else
{
oppo_channelid.value='2'
}
}
Example 2
You can add an OnChange Script, which changes the company status to Inactive when the company type is
changed to Partner. You can use "this.value" in place of the actual field name when the script is being
attached to the actual field that is changing.
if(this.value == 'Partner')
{
comp_status.value = 'Inactive'
}
Example 3
You can add an OnChange Script, which disables the Company Revenue field when the Company Type is
set to Partner.
if (this.value == 'Partner')
{
comp_revenue.disabled='true';
}
Example 4
You can add an OnChange Script, which hides the company revenue field for companies with more than
500 employees. This example also shows how you can use the visibility property of the HTML DOM.
if(this.value =='501+')
{
comp_revenue.style.visibility = 'hidden';
}
else comp_revenue.style.visibility = 'visible'
5. Click Update and then click Save. When you create a new company and select 501+ from the
Employees list, the Revenue field is automatically hidden. The above script hides the Revenue (comp_
revenue) field when the user selects 501+. It will not be run if the field is already set to 501+.
6. To make this customization complete, you can add a Create script to the comp_revenue as follows,
and the field then remains hidden:
if (Values('comp_revenue')=='501+')
{
Hidden=true;
}
Example 1
This example adds a Validate Script, which checks the validity of the Opportunity Certainty field. If the field
value is set to less than 25%, it expects the Opportunity Priority to be set to Low. If this is not the case, a
validation error message is displayed to the user.
Note: You must attach Validate Scripts in the field you want the valid error to show up against.
if (Values('oppo_certainty')<25
&& Values('oppo_priority')!='Low')
{
Valid=false;
ErrorStr="please set the priority to Low";
}
Example 2
You can add a Validate Script, which validates that every customer who is buying a License is assigned a
Customer Reference ID that begins with the letter 'L'. Otherwise it displays an error message.
1. Click <My Profile> | Administration | Customization | Primary Entities | Opportunity, and click
the Screens tab.
2. Click Opportunity Detail Screen.
3. Select Opportunity : Customer Ref.
4. Enter the following script in ValidateScript:
custref=Values('oppo_customerref')+'';
if ((Values('oppo_type')=='License')
&& (custref.charAt(0)!='L'))
{
ErrorStr='!'+custref+'The customer reference must begin with L';
Valid=false;
}
Search screen
This type of screen is displayed when a user clicks the Search arrow and then clicks <Entity>. The
screenshot below shows the Person search screen. There are two customizable panels (blocks) on a
search screen; the search box (1), and the results list or grid (2).
Entry screen
This type of screen is displayed when a user clicks New | New <Entity> and passes the Dedupe search
screen. It can include a Web Picker panel that lets the user link the new record to an existing company or
person record. The screenshot below shows the Person entry screen.
Note: This type of screen is similar to the Quote or Order Free Text Item screen.
Filter screen
This type of box is displayed when a user clicks My CRM | <Entity>. The screenshot below shows the
Leads filter screen.
You cannot customize phone and email screens directly, but you can add new phone and email types.
Note: You can reduce load times for custom entity lists. For instructions, see Optimizing a custom entity
list for faster loading.
l Lists are displayed when you select a tab within the context of company, case, lead, opportunity,
solution, or person.
l Grids are displayed as the results of a search for a person, lead, case, or opportunity, and so on. The
lists displayed on the Company Quick Look tab are also grids.
All CRM Object Model properties and methods (current context) can be accessed. Also, the CurrentUser
object and Value property (the value the user is submitting) can be accessed.
The following grid column properties can be accessed with Create Scripts:
l Visible ( )
l Alignment ( )
l AllowOrderBy ( )
l CustomActionFile ( )
l CustomIdField ( )
l JumpEntity ( )
l ShowHeading ( )
l ShowSelectAsGif ( )
You can attach HTML and JavaScript content to an entire list or grid in the Custom Content field. For more
information, see Adding custom content to a grid or list.
if(CRM.GetContextInfo("company","comp_name"))
{
Visible = false;
}
1. Click <My Profile> | Administration | Customization | Primary Entities | Quotes | Lists | Quotes
Grid.
2. Add the following script in Custom Content.
<script>
crm.ready(function(){
crm.grids('0').rows(':gt(0)',true)
.filterWhere('quot_grossamt','ge','1000')
.highlightCell('yellow');
crm.grids('0').rows(':gt(0)',true)
.filterWhere('quot_grossamt','ge','10000')
.highlightCell('#E8D7FD');
crm.grids('0').rows(':gt(0)',true)
.filterWhere('quot_status','eq','Active')
.highlightCell('green');
});
</script>
3. Save. When you search for a quote, the resulting list shows different highlighting on the list items.
Allow Order By Yes: Allows the user to sort the list on the column. The column header
appears underlined. An arrow next to the column header indicates the
current sort order of the list.
Show Select As Gif Displays the icon instead of the description (for predefined drop-down
lists only).
Default Order By The first column in a grid that has Default Order By set to Yes controls
the order in which records are shown the first time the grid is displayed.
For example, if you set Default Order By to Yes for oppo_type on the
Opportunity Grid, and the user clicks the Search arrow and clicks
Opportunity, the displayed grid is ordered by oppo_type.
Create Script A script that's run on the server when the list or grid is created. For more
information, see Advanced list customization.
Custom Content Generic JavaScript or HTML, and/or Sage CRM Client-Side API
functions that are run when the list or grid is created. For more
information, see Advanced screen customization.
Entity list
This type of list is displayed when a user clicks the My CRM | <Entity>. The screenshot below shows the
Opportunities list.
Entity grid
This type of grid is displayed when a user clicks the Search arrow and <Entity>, and then clicks the Find
button. The screenshot below shows the Quote Items grid.
Address list
This type of list is displayed when a user opens a company or person record and clicks the Addresses tab.
The screenshot below shows the Address list on a company.
You can customize Button Groups in <My Profile> | Administration | Advanced Customization if you
have the Extensibility Module. For more information, see the Developer Help on the Sage CRM Help
Center.
It is important that you review all the System Actions available to you. Selecting certain actions saves you the
time and effort of creating an ASP page each time you want to run a standard Sage CRM screen or list.
Each option in the list corresponds to a standard Sage CRM screen, list, or screen area except customfile
and customurl, which display custom files and Web pages, respectively.
l List actions
l Related List actions
l Summary actions
l Entry actions
l Edit and Progress actions
l Find actions
l Tab actions
l Other actions
List actions
Use List actions to display lists from a tab. In most cases, the action name is intuitive. For example,
addresslist displays a list of addresses, caselist displays a list of cases, and leadlist displays a list of leads.
Displayed lists are associated with the entity in which the tab was created. So if you add addresslist to the
Person tab group, the displayed list contains People addresses. However, if you add addresslist to the
Cases tab group, the list is blank because address are not typically linked to cases.
Use Related List actions to establish relationships between entities. You can add a new tab to any entity and
build a list of related cases, communications, companies, opportunities, or people.
Summary actions
Use Summary actions to build a screen that displays a summary of the call, case, communication, company,
lead, opportunity, person, SLA, solution, wave, or waveitem. For example, callsummary displays a summary
of calls.
Entry actions
Use Entry actions to build a screen that displays an entry screen from which you can create a new call, case,
communication, company, lead, opportunity, person, SLA, solution, wave, or waveitem. For example,
newcommunicationedit displays the New Communication Edit tab. Users typically click a New button to view
any an entry screen.
l editcommunication. Not used in the system but works in the same way as communicationedit.
l lead progress. Not used in the system.
l oppoprogress. Not used in the system.
Find actions
Use Find actions to build a screen that displays a Find screen from which users can search for cases,
communications, companies, leads, opportunities, people, and solutions. For example, casesearch displays
a Find Case tab. Users typically click a Find button and a context to perform a search within the system.
Other actions
Use other actions to build screens.
Action Description
companyorgchart Not used in the system but can be used to display a company
organizational chart.
componentadd Not used in the system but can be used to display the Component
Manager screen for adding new components.
componentinstall Not used in the system but can be used to display the Component
Manager screen for installing components.
componentscript Not used in the system but can be used to display the Component
Manager screen for scripting components.
exclude Displays the Exclude from Call List outbound call handling screen.
personcampaign Not used in the system but can be used to display a list of campaigns
related to a person.
personorgchart Not used in the system but can be used to display an organizational chart
for a company.
quicklook Not used in the system but can be used to display the person or
company quick look screen, depending on the context you add it to.
territoryadmin Not used in the system but can be used to display the Territory
Administration area.
territoryprofiles Not used in the system but can be used to display the Security Profiles
area.
transfercall Not used in the system but can be used to display the Transfer Call
Outbound Call Handling screen.
Field Description
Action Only displayed if you have the Extensibility Module. Select Other from
this field in order to display the list of system actions.
SQL Enter SQL in this field to restrict use of the tab. You can restrict tabs to
specified users or groups of users. For example, user_userid=4 or user_
userid=5 to restrict the tab to certain users.
Don't use this format to restrict several tabs because the database is
queried separately for each restricted tab.
C:4,5— to restrict the tab to certain teams, for example teams with a
Channel ID of 4 or 5.
You can also restrict the availability of the tab so that it only appears
when the company is a customer:
comp_type = 'Customer'
As you are not limited to data in the current context, this clause can be
entered in the User tab group. It hides the Opportunity tab unless the
user has any Opportunities assigned to them:
Bitmap If you're creating a button that links to a custom page, select a GIF from
the list. If you have created your own graphic using a GIF editor, copy it
to the ...\wwwroot\Img\Menu directory so that it is displayed as one of the
choices.
Sensitive Select Yes or No from the Sensitive tab to restrict the tab to specific
users.
When you create a new view or modify an existing view, ensure all SELECT statements on primary entities
in the view retrieve the _secterr column, the _assigneduserid (or equivalent) column, and the _channelid
(or equivalent) column for each primary entity referenced in the view. To do this, select the column explicitly
Warning: You should create new views from within Sage CRM only. If you create a view outside Sage
CRM using a database tool, you must update the metadata table Custom_Views so the new view is
listed in the Sage CRM UI and this is not recommended.
Creating a view
Note: When you create a new view, ensure all SELECT statements on primary entities in the view
retrieve the _secterr column, the _assigneduserid (or equivalent) column, and the _channelid (or
equivalent) column for each primary entity referenced in the view. To do this, select the column explicitly
or select all columns from the relevant primary entities. If you do not select the columns, an SQL error
may occur in the Sage CRM UI when the view is executed.
CREATE VIEW
vSimpleCaseView
AS
SELECT comp_name, comp_status, comp_type, case_description, pers_firstname,
The columns in the SELECT statement are available in the report. You can concatenate fields and
use functions on the data to manipulate the data further.
You can include derived or calculated fields in a report view. The following example creates a
derived field called pers_fullname by concatenating the pers_firstname and pers_lastname fields.
To control how the field appears in reports, ensure it's described in the custom_edits and custom_
captions metadata tables. Create an extra field on the main table of the view. In the example above,
create a new field on the person table called pers_fullname. This field doesn't hold data, but
creating the field with the same name as your derived field creates the necessary metadata. You
can then use the metadata to control the field's display properties and UI captions.
7. Click Save. The view is available to use in a report. For more information see Creating a report.
CREATE VIEW
vSimpleCaseView
AS
SELECT case_caseid, comp_companyid, comp_name, comp_status, comp_type, case_
7. Click Save. The view is available to use in a group. For more information see Creating a group in the
User Help.
Warning: A view must return one row per ID field. If the view returns duplicate rows, it is not listed in the
Source View drop-down when creating a group.
The View tab for an entity lists the columns that you can include in a new view. The Fields tab for an entity
lists the fields that can be included in a view.
Table Unique ID
Cases case_caseid
Opportunity oppo_opportunityid
Company comp_companyid
Lead lead_leadid
Person pers_personid
Order Orde_OrderQuoteID
Quote Quot_OrderQuoteID
Each table has a hidden unique identifier that you can use to create SQL joins between tables. Each table
exists in relationships and foreign keys link the tables together.
Case vKeywordSearchListCases
Company vSearchListCompany
Lead vKeywordSearchListLead
Opportunity vKeywordSearchListopportunity
Person vSearchListPerson
Communication vSearchListCommunication
Orders vOrders
Quotes vQuotes
You can specify only one Keyword Search view per entity to avoid returning the same record twice in a
single set of search results. You can edit an existing Keyword Search view. For more information, see
Editing a view.
Tip: When creating a Keyword Search view, you must include fields that allow security policies to work.
For example, a Keyword Search view on Person should include pers_primaryuserid and pers_secterr.
You should also include fields from other tables that complete the business object. For example, a
Keyword Search view on Person should include fields from the Person, Company, Address, Phone, and
Email tables.
AS
Project.*,
vCompanyPE.*,
vPersonPE.*
FROM Project
8. Click Save.
In Sage CRM SData "feeds" can be consumed in a read-only format by Sage CRM via the Interactive
Dashboard and by third-party applications.
The view in this example includes a derived field, oppo_daysopen, to show how long an opportunity has
been open. When created as an SData view, this can easily be made available to the users via the
Interactive Dashboard. The SData view could also be used by a third-party application which supports
SData feeds.
Note: SData views are not affected by the SData setting on the External Access tab. In this example, the
Read-only SData setting on the <My Profile> | Administration | Customization | Primary Entities
| Opportunity | External Access tab can be set to Yes or No. The view is still available for access.
CREATE VIEW
vOppoDatesOpen
AS
SELECT *
FROM OPPORTUNITY
7. Click Save.
8. To test the view on the Interactive Dashboard, click My CRM | Dashboard and open a dashboard.
9. Click Modify Dashboard | Add New Gadget | SData Feed.
10. Select CRM SData Provider and click Next.
11. Select the new view you created, and click Next.
12. Select the columns to display on the gadget and complete the gadget wizard steps.
The SData view you created is represented in a new gadget on the user's landing page. The URL to make
the view available to another application would take the following format:
http://myserver/sdata/[installname]j/sagecrm/-/vOppoDatesOpen
Editing a view
Note: When you edit a view, ensure all SELECT statements on primary entities in the view retrieve the _
secterr column, the _assigneduserid (or equivalent) column, and the _channelid (or equivalent)
column for each primary entity referenced in the view. To do this, select the column explicitly or select all
columns from the relevant primary entities. If you do not select the columns, an SQL error may occur in
the Sage CRM UI when the view is executed.
This example adds the case_description field to the case mail merge view.
Case_CaseId, Comp_CompanyId
to:
5. Click Save. If you make a syntax mistake, you can't save the changes.
Deleting a view
You can delete user views. Deleting a view may affect several areas of Sage CRM.
Field Description
Read-only SData Enabled by default. Select Yes or No to enable or disable an entity for
Sage Data (SData) access.
This setting exposes Sage CRM entities so that they can be read and
queried by third-party applications using ATOM feed technology on the
SData standard. For more information on working with SData, see the
Developer Help on the Sage CRM Help Center.
For more information on working with Web Services, see Web services
fields and the Developer Help.
l Header content is summary information from the current entity. To customize header information,
click <My Profile> | Administration | Customization | Primary Entities / Secondary Entities |
<Entity> | Summary Report | Edit Summary Content.
l List output is information from the entities linked to the current entity. To customize the layout of a
list, click <My Profile> | Administration | Customization | Primary Entities / Secondary Entities |
<Entity> | Summary Report | <List>.
l To change the default font for text to which a style has not been applied, open
\CRM\WWWRoot\ckeditor\contents.css and edit the body section at the top of the file. The following
example changes the default font to Courier New.
body
/* Font */
font-size: 12px;
/* Text color */
color: #333;
background-color: #fff;
margin: 20px;
}
l To set the default style selected in the text editor toolbar, open \CRM\WWWRoot\ckeditor\config.js
and add code to the CKEditor.editorConfig section. The following example changes the default
style to Courier New.
config.fontSize_defaultLabel = '16px';
config.fontSize_sizes =
'8/8pt;9/9pt;10/10pt;11/11pt;12/12pt;14/14pt;16/16pt;18/18pt;20/20pt;
22/22pt;24/24pt;26/26pt;28/28pt;36/36pt;48/48pt;72/72pt';
'Verdana';
l To apply a default style to the text when the text editor is opened, open
\CRM\WWWRoot\ckeditor\config.js and add a new section after the CKEditor.editorConfig
section.
CKEDITOR.on('instanceReady', function(evt) {
});
l To view the changes, clear the cache in users’ browsers.
Web leads
Sage CRM enables you to create web pages for collecting lead information simply by clicking a button. This
one-click process generates the HTML to define a web form page for entering lead details. This HTML page
can be inserted into a corporate web site, enabling a seamless transfer of information from a client-defined
interface to the Sage CRM database.
The generated HTML contains the URL of the Sage CRM installation and defines the action to be taken
when the web lead form is submitted. Therefore, although customization allows the user to add or remove
fields from the form, no HTML scripting is required to make the form fully functional.
1. Click <My Profile> | Administration | Customization | Primary Entities | Leads | Web to Lead.
2. Click Change, edit the default configuration settings and click Save. For more information, see Web
to Lead configuration settings.
3. Click Web Lead HTML. The Web Lead HTML screen is displayed. Key material is grouped in the
Create Action function. Written in JavaScript, this function indicates the Sage CRM install that
receives information from the web lead form. This area is worth checking in situations when the web
lead information has not successfully transferred to the Sage CRM database. It's possible that in
certain situations when an Sage CRM is reinstalled under a different name, the URL used by the
HTML page generated by an earlier install is no longer valid.
4. You can copy the HTML from this screen to your corporate website so that your customers can
create leads in Sage CRM through your website. The raw HTML copied from the Web Lead HTML
screen creates a basic form for capturing lead information.
5. Enter test lead data and click Save And Submit.
6. Return to Sage CRM and search for the lead you added using the web page. The new lead is
displayed with the Source set to Web.
Web Lead Enabled Select this check box to enable the Web to Lead functionality. When you
do this Sage CRM can capture leads.
Only Accept Web Leads If you want to restrict the ability to generate leads from any Web site,
From The Following IP specify the exclusive IP address that leads can be generated from.
Address
Web Lead Return URL Specify the URL you want the user's browser to be redirected to after
the lead has been created.
For example, you need to store address details for a new company because all companies have an
associated address. If you need to store more address information than the standard fields provide for, you
can add new fields to the address or company tables.
However, you may also want to record company-specific information, such as which companies attended
your roadshows, who attended, and when they attended. Some companies may not have any data in this
section as they never went to the roadshows, some companies will have attended many roadshows, and
some companies will have only attended one roadshow. This is ideal for key attribute profiling data.
For example, when recording training information about people at customer sites, you want to record the
results of multiple evaluation forms, so the Evaluation Form Feedback category is flagged as a Multiple
Instance Data Category. The other categories are Single Instance Data Categories, because data is stored
directly within the categories.
You should also identify fields that are common to multiple categories.
For example, if you are collecting information about home appliances purchased, you may initially think of
the following categories and fields:
All Categories
Washing Machine
Vacuum Cleaner
Fridge
You can quickly identify that each category has three fields in common; Manufacturer, Price, and Warranty
Expiration. Instead of creating these fields under each category, you can create a higher level parent
category first called "Home Appliances", which has these three fields associated with it. Then, when you
create "Washing Machine", "Vacuum Cleaner" and "Fridge" as child categories of Home Appliances, they
automatically inherit the three common fields, and all you have to add under each child category is the Model
key attribute list for each appliance type:
All Categories
Home Appliances
Washing Machine
Vacuum Cleaner
Fridge
Adding fields to the parent level category after the child categories are created does not automatically add
the new fields to the categories below. If you add a field to the parent level and then add a new child
category, the child category inherits the existing and new fields.
Field Type Check boxes, Text, Selection, Date/Time, and more. See table below for
more detail. The Field Type defines how the information is added into the
system.
Max Length Defines the maximum length of, for example, a text field.
Entry Width Defines the length of the field displayed on the screen.
Key Attribute List If the Field Type has been set to Selection, the key attribute list must be
specified here.
Blank Non-data field. Appears on the screen as ‘-’. It is used to align columns
and insert offsets.
Label Non-data field. Displays the text from the Field Name on the screen as a
label. The user is not prompted to input any data.
Phone Number Phone Number fields are displayed as hyperlinked values on the screen.
This allows CTI-enabled users to make outbound calls by clicking the
value of the field.
Currency Allows a user to enter an amount and select a currency from a list.
You can specify a group as static or dynamic. A static group is stored automatically under the Group Entries
heading, which forms part of the Key Attribute Categories list. A dynamic group appears in this list only after
an action, such as a mail merge, mass email, or task, has been run against it.
Default activities
When you create a group, you can run actions or activities against it, for example, mail merge, mass email,
or task. You can also create these under Wave Activities.
When you set up actions against a group, you are presented with a default communication screen. At the
end of the communication screen a list of categories is displayed, filled from the Activity Category Groups.
Each of these hard coded Activity Category Groups is initially filled with a Default Activity Category. They
appear under the System Categories category off the All Categories directory.
The Administrator can go in via <My Profile> | Administration | Key Attributes | Category Groups and
change the contents of the Activity Category Group, but this deletes the Category Group. It is set up in this
way because the administrator has no other way to define what appears on that communication screen from
the user side, so they cannot specify a different Activity Category Group. All they can do is edit the existing
one.
When the activity is saved, a new Category is created under the parent selected from the Category
displayed, and all of the people in the group that the action is run against are linked to a piece of Key
Attribute Data (the date of the action). Not only can you tell who is on a group, but you can tell who had what
actions run against them. You can also fill in a number of other fields on the category and use these to store
feedback information.
1. Click <My Profile> | Administration | Advanced Customization | Key Attributes | Key Attribute
Lists.
About workflow
For example, you could apply a workflow rule to opportunities to automatically generate a follow-up call
whenever a quote is issued to a customer. Or you could apply a workflow rule to cases to send an email to
the customer service supervisor if a case remains at the Investigating stage for more than twenty-four hours.
Tip: Workflows should support business processes, not replicate them. Workflows that are too
prescriptive actually prevent people from getting the most out of Sage CRM rather than helping them to
complete their tasks.
You can apply workflow to company, person, communication, lead, opportunity, case, solution, campaign,
wave, and wave item records. You can also apply workflow to custom entities. To apply workflow to an
external table, you must create a shadow table in Sage CRM. The data is retrieved from the external table in
the ASP pages associated with the workflow rules. For more information, see the Developer Help on the
Sage CRM Help Center.
Note: When you import leads into Sage CRM, they are not automatically added to a workflow. When a
lead is converted to an opportunity, it is not automatically added to an opportunity workflow; it must be
progressed using the default Accept and Reject action buttons.
l A state is the current resting place for a record in the workflow process. The user sees a predefined
set of business actions based on the record's current state in the workflow. For more information,
see Workflow states.
l A rule determines the actions that are performed on the record in a specific state and often move the
record to another state. For more information, see Workflow rules.
l An action is the execution of the rule when the user selects the workflow rule, or when conditions
are met to validate the rule. For more information, see Workflow actions.
Sage CRM has a graphical workflow tree that uses loops and branches and lets you view a visual
representation of the states and rules in your workflow as you build it.
Task Help
Conduct an analysis of your business processes and produce For sample questions to help you
a flow diagram that outlines your workflow and lists the identify your business processes, see
actions you need. the Implementation Workbook on the
Sage CRM Help Center.
Enable your system for workflow and activate workflow for Configuring workflow and escalation
the required entities. rule behavior.
Customize the Stage and Status list selections for Editing a field
opportunities, cases, leads, and solutions if necessary. These
fields often help define the state of a record at different points
in the workflow. Adding more selections to these fields does
not affect existing workflows unless you explicitly build in
behavior to use the new selections.
Check the GIF files. If you change the Stage and Status lists,
you may lose the GIF file representation of the values. To fix
this, edit or update the GIF file in the Img subdirectory of Sage
CRM. The GIF file name must exactly match the untranslated
code of the list selection.
Building a workflow
Task Help
Create a new workflow using the graphical workflow tree. Creating a workflow
Create workflow rules and add actions to the rules. Creating a workflow rule
Add states and rules to the workflow and activate the Adding states and rules to a workflow
workflow so you can test it and then make it available to users.
Entry states define entry points into the workflow. The Start state in the workflow tree is an entry state by
default. Usually, a primary rule hangs off this state to create a new entity, which automatically becomes part
of the workflow. alternatively, you can hang transition rules from the entry state so users can add existing
records to the workflow. For more information, see Workflow rules.
Duplicate states represent branching and looping in a traditional flow-chart and allow you to define
alternate paths in the workflow. For example, a lead in the Quick Sale Workflow can be progressed directly
to Sold, or put On Hold and then progressed to Sold.
Workflow rules
A workflow rule determines the actions that are performed on the record in a specific state and often move
the record to another state. There are several types of workflow rule. For information about the actions that
can work with each type of workflow rule, see Workflow actions.
l Use primary rules at the beginning of a workflow to create a new case, opportunity, solution, or lead
record that's automatically part of the workflow. The primary rule replaces the standard New button
which is displayed when workflow is deactivated. For consistency in the UI, you can set the rule
Label to New <entity> and set Alternative Image for Rule to New.gif. You generally use column
change actions with primary rules. Primary rules are represented by light purple arrows in the
workflow tree.
Note: If your workflow creates a new record that has a dedupe search or an inbuilt system
action, you must hang a transition rule rather than a primary rule from the entry state. For
example, NewCompany, NewIndividual.
l Use transition rules to connect one workflow state to the next. Transition rules are displayed to the
user as workflow action buttons. A transition rule linked to a workflow entry state lets a user add a
record to a workflow. For example, transition rules allow a user to add an existing lead record to a
lead workflow. Similarly, transition rules allow a user to add an opportunity that's been progressed
from a lead to an opportunity workflow. Transition rules are represented by purple arrows in the
workflow tree.
l Use conditional rules to create two sets of actions. One set is executed when the JavaScript
condition is true, the other set is executed when the condition is false. The JavaScript condition on a
Conditional Rule is evaluated when the user clicks the workflow rule button. This means that
conditional rules always show as long as other conditions (for example, Restrict to Team) are true.
The advantage of a conditional rule is that it's always displayed to the user as a reminder. Also,
when the user selects the rule and the conditions are not met, a message can be displayed stating
Note: You can specify a time limit on each stage of a case workflow to act as an SLA with a
warning limit. To do this, create a field on Cases that stores the start date of each stage (for
example, case_startstage) and ensure the date is entered when the case moves to a new stage.
You can base escalation rules on the value in the date field.
To record the duration of each stage, set up specific fields for each stage (for example, case_
startstage1, case_stage1duration, case_startstage2, case_stage2duration) and use Execute
SQL Statement workflow actions to update these values.
l Use global rules to add actions that are always available and do not move the workflow into another
state. Global rules always hang from the Start state. For example, use a global rule to allow the user
to edit an opportunity at any point in the opportunity’s life cycle. If the user makes changes to certain
opportunity details, the opportunity is not progressed to a different state. Global rules are
represented by blue arrows with a purple circle in the workflow tree.
Note: To change the name of an existing workflow rule, you must change the translation for all
languages in <My Profile> | Administration | Customization | Translations.
Workflow actions
There are two types of workflow actions.
l User driven actions use JavaScript to check the data condition. These actions require the user to
interact with the workflow screen and require a request from the browser. You can use these
actions with transitional, conditional, and global workflow rules because these rules are driven by
the user.
l Time driven actions use SQL to check the data and time condition. You can use these actions with
escalation rules because these rules are time based and fire automatically in the server without a
request from the browser.
The table below shows which workflow actions can be used with each type of workflow rule.
Follow-up Actions
Create Task N Y Y Y N
Create Appointment N Y Y Y N
Create Opportunity N Y Y Y N
Create Case N Y Y Y N
Create Lead N Y Y Y N
Create Solution N Y Y Y N
Informative Actions
Send Email Y Y Y Y Y
Campaign Actions
Use Set Column Value to insert a specified value into a column on the current table. For example, when an
opportunity is created, set the opportunity Certainty% field to 25.
The table below describes Set Column Value fields on the New Workflow Action Details screen.
Field Description
If the column to be updated is a date field, set Value to 0 to set the field to
the current date/time. Use an integer to set the date/time to an offset (in
minutes) from the current date/time. For example, 30 = 30 minutes from
now, 10080 = 7 days from now, and 129600 = 90 days (3 months) from
now.
You can use ## symbols to add information from the related entity. For
more information, see Using the ## and # symbols.
New Line The position of the field on the screen for this workflow rule. If you leave
this blank, the field is displayed on the same line as the previous field.
Row Span The number of rows over which the field is displayed. If you leave this
blank, the field is displayed on one row.
Col Span The number of columns over which the field is displayed. If you leave this
blank, the field is displayed over one column.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Create Script Add a field-level script using JavaScript that's executed when the
progress screen is displayed to the user. The scripting applies to the
workflow rule to which the action is linked. For more information about
field-level scripting, see Advanced screen customization.
OnChange Script Add a field-level script that's executed when a user changes the value on
the progress screen. The scripting applies to the workflow rule to which
the action is linked. You can use generic JavaScript and/or Sage CRM’s
client-side API library of functions. For more information, see Advanced
screen customization.
Validate Script Add a field-level script using JavaScript that's executed when a user
saves changes made to the progress screen. The scripting applies to the
workflow rule to which the action is linked.
Use Reset Column Value to insert a value from one field into another field. For example, you can assign an
opportunity from its current owner to the person who created the opportunity.
The table below describes Reset Column Value fields on the Workflow Action Details screen.
Field Description
You can use ## symbols to add information from the related entity. For
more information, see Using the ## and # symbols.
New Line The position of the field on the screen for this workflow rule. If you leave
this blank, the field is displayed on the same line as the previous field.
Row Span The number of rows over which the field is displayed. If you leave this
blank, the field is displayed on one row.
Col Span The number of columns over which the field is displayed. If you leave this
blank, the field is displayed over one column.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Create Script Add a field-level script using JavaScript that's executed when the
progress screen is displayed to the user. The scripting applies to the
workflow rule to which the action is linked. For more information about
field-level scripting, see Advanced screen customization.
OnChange Script Add a field-level script that's executed when a user changes the value on
the progress screen. The scripting applies to the workflow rule to which
the action is linked. You can use generic JavaScript and/or Sage CRM’s
client-side API library of functions. For more information, see Advanced
screen customization.
Validate Script Add a field-level script using JavaScript that's executed when a user
saves changes made to the progress screen. The scripting applies to the
workflow rule to which the action is linked.
Use Display Field for Amendment to display the current value of a field on the workflow progress screen.
The field value can be blank.
The table below describes Display Field for Amendment fields on the Workflow Action Details screen.
Field Description
New Line The position of the field on the screen for this workflow rule. If you leave
this blank, the field is displayed on the same line as the previous field.
Row Span The number of rows over which the field is displayed. If you leave this
blank, the field is displayed on one row.
Col Span The number of columns over which the field is displayed. If you leave this
blank, the field is displayed over one column.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Create Script Add a field-level script using JavaScript that's executed when the
progress screen is displayed to the user. The scripting applies to the
workflow rule to which the action is linked. For more information about
field-level scripting, see Advanced screen customization.
OnChange Script Add a field-level script that's executed when a user changes the value on
the progress screen. The scripting applies to the workflow rule to which
the action is linked. You can use generic JavaScript and/or Sage CRM’s
client-side API library of functions. For more information, see Advanced
screen customization.
Validate Script Add a field-level script using JavaScript that's executed when a user
saves changes made to the progress screen. The scripting applies to the
workflow rule to which the action is linked.
Use Show Message on Screen to display an onscreen message to the user. This message can provide
instructions or help to the user during the workflow.
The table below describes Show Message on Screen fields on the New Workflow Action Details screen.
Field Description
Message The message text. This can be text or a translatable code on the
translations table. Capt_Family must be ActionText and Capt_
FamilyType must be Tags.
New Line The position of the field on the screen for this workflow rule. If you leave
this blank, the field is displayed on the same line as the previous field.
Row Span The number of rows over which the field is displayed. If you leave this
blank, the field is displayed on one row.
Col Span The number of columns over which the field is displayed. If you leave this
blank, the field is displayed over one column.
Order The order in which the field is placed on the workflow progress screen
Create Task
Use Create Task to prompt the user to schedule a task as part of a workflow process, or to automatically
create a task with predefined values and no user input. You can use this action only with records that have
been created and attached to a workflow. This means you cannot use it with primary rules.
The table below describes Create Task fields on the New Workflow Action Details screen.
Field Description
You can use the # symbol to add information about the current user. For
more information, see Using the ## and # symbols.
Label for new task The label that's attached to the task. You can use it in JavaScript
conditions on future workflow rules to test the values of fields on the
communication. For example, Display the Closed workflow rule when
Status of related communication labeled "XYZ" is Complete.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
You can use ## symbols to add information about the related entity. For
example, Customer Service Call for opportunity #oppo_opportunityid#
closed on #oppo_closed#, displays the opportunity ID and the
Date/Time the opportunity was closed. For more information, see Using
the ## and # symbols.
You should use a unique subject to make it easy for users to differentiate
a large number of similar records in a list in Sage CRM or in Outlook, if
you're using Classic Outlook or Exchange Integration.
Private Specifies that the task is private. A private task is not displayed in the
Team calendar.
Created By The user who created the task. This is the current user.
Created Date The date on which the task is created. This is the current date.
Percentage Complete The percentage of the task that's completed. The user enters this value.
Completed Time The percentage of time allocated to the task that's completed. The user
enters the value.
User The user assigned to the task. If this is blank, the user in Get Default
User From is used.
Onscreen Reminder Displays an onscreen reminder notification to the user assigned to the
task.
Send Reminder Message Sends a reminder to the user assigned to the task. Reminder formats
and priorities are set up in the user’s Reminder Preferences.
Current Time Offset The number of minutes between the time at which the action is executed
and the time at which the action is recorded. This is useful if users are
working in a different time zone to the current time zone.
Use Create Appointment to prompt the user to schedule an appointment as part of a workflow process, or
to automatically create an appointment with predefined values and no user input. You can use this action
only with records that have been created and attached to a workflow. This means you cannot use it with
primary rules.
The table below describes the Create Appointment fields on the New Workflow Action Details screen.
Field Description
You can use the # symbol to add information about the current user. For
more information, see Using the ## and # symbols.
Label for new appointment The label that's attached to the appointment. You can use it in JavaScript
conditions on future workflow rules to test the values of fields on the
communication. For example, Display the Closed workflow rule when
Status of related communication labeled "XYZ" is Complete.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Subject The subject of the action. For example, Customer demo. You can use ##
symbols to add additional information about the related entity. For
example, Customer demo for opportunity #oppo_opportunityid# closed
on #oppo_closed#, displays the opportunity ID and the Date/Time the
opportunity was closed. For more information, see Using the ## and #
symbols.
You should use a unique subject to make it easy for users to differentiate
a large number of similar records in a list in Sage CRM or in Outlook, if
you're using Classic Outlook or Exchange Integration.
Created By The user who created the appointment. This is the current user.
Created Date The date on which the appointment is created. This is the current date.
Percentage Complete The percentage of the appointment that's completed. The user enters
this value.
Completed Time The percentage of time allocated to the appointment that's completed.
The user enters this value.
User The user assigned to the appointment. If this is blank, the user in Get
Default User From is used.
Send Reminder Message Sends a reminder to the user assigned to the appointment. Reminder
formats and priorities are set up in the user’s Reminder Preferences.
Current Time Offset The number of minutes between the time at which the action is executed
and the time at which the action is recorded. This is useful if users are
working in a different time zone to the current time.
Create Opportunity
Use Create Opportunity to prompt the user to create a new opportunity as part of a workflow process, or to
automatically create an opportunity with predefined values and no user input. You can use this action only
with records that have been created and attached to a workflow. This means you cannot use it with primary
rules.
The table below describes the Create Opportunity fields on the Workflow Action Details screen.
You can use the # symbol to add information about the current user. For
more information, see Using the ## and # symbols.
If you've specified a user in Assigned To, leave this blank.
Label for new opportunity The label that's attached to the opportunity. You can use it in JavaScript
conditions on future workflow rules to test the values of fields on that
opportunity.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Type The type of opportunity or general area of product interest. For example,
Services, Consulting.
Details Details of the opportunity. You can use ## symbols to add information
about the related entity. For example, Upsold from #case_description#.
For more information, see Using the ## and # symbols.
Current Time Offset The number of minutes that are added to the time at which the action is
executed. This is used to calculate the date and time displayed in the
opportunity Opened fields.
Assigned To The user assigned to the opportunity. If this is blank, the user in Get
Default User From is used.
Create Case
Use Create Case to prompt the user to create a new case as part of a workflow process, or to automatically
create a case with predefined values and no user input. You can use this action only with records that have
been created and attached to a workflow. This means you cannot use it with primary rules.
The table below describes the Create Case fields on the Workflow Action Details screen.
Field Description
Get Default User From The user assigned to the case. You can use the # symbol to add
information about the current user. For more information, see Using the
## and # symbols.
Label for new case The label that's attached to the case. You can use it in JavaScript
conditions on future workflow rules to test the values of fields on the
communication. For example, Display the Closed workflow rule when
Status of related communication labeled "XYZ" is Complete.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Current Time Offset The number of minutes that are added to the time at which the action is
executed. This is used to calculate the date and time displayed in the
case Opened fields.
Assigned To The user assigned to the case. If this is blank, the user in Get Default
User From is used.
Create Lead
Use Create Lead to prompt the user to create a new lead as part of a workflow process, or to automatically
create a lead with predefined values and no user input. You can use this action only with records that have
been created and attached to a workflow. This means you cannot use it with primary rules.
The table below describes the Create Lead fields on the Workflow Action Details screen.
You can use the # symbol to add information about the current user. For
more information, see Using the ## and # symbols.
Label for new lead The label that's attached to the lead. You can use it in JavaScript
conditions on future workflow rules to test the values of fields on that
opportunity.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Assigned to The user assigned to the lead. If this is blank, the user in Get Default
User From is used.
Create Solution
Use Create Solution to prompt the user to create a new solution as part of a workflow process, or to
automatically create a solution with predefined values and no user input. You can use this action only with
records that have been created and attached to a workflow. This means you cannot use it with primary rules.
The table below describes the Create Solution fields on the Workflow Action Details screen.
Select Hidden to automatically execute the action with predefined values without
displaying it to the user.
Label for The label that's attached to the solution. You can use it in JavaScript conditions on future
new workflow rules to test the values of fields on the solution.
solution
Order The order of the field on the screen for this workflow rule. Set the order of a field to move it
to a different position on the screen and use New Line to move the field to a different line.
Details Details of the solution. You can use ## symbols to add information from the related entity.
For example, Related to #case_referenceid#. For more information, see Using the ## and
# symbols.
Assigned The user assigned to the solution. If this is blank, the user in Get Default User From is
To used.
Use Create Word Merge Document to perform a merge that creates a Word document when the progress
screen fields are completed. The merge is performed in the same way as a document merge outside the
workflow process. A copy of the merged Word document is saved in the library. You can use this action only
with records that have been created and attached to a workflow. This means you cannot use it with primary
rules.
Field Description
Value The name of the document to be merged. If you leave this blank, the user
can select a template when performing the merge.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Use Create PDF Merge Document to perform a merge that creates a PDF document when the progress
screen fields are completed. The merge is performed in the same way as a document merge outside the
workflow process. A copy of the merged PDF document is saved in the library. You can use this action only
with records that have been created and attached to a workflow. This means you cannot use it with primary
rules.
The table below describes Create PDF Merge Document fields on the Workflow Action Details screen.
Field Description
Value The name of the document to be merged. If you leave this blank, the user
can select a template when performing the merge.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Use Execute SQL Statement to execute customized business logic. For example, use Execute SQL
Statement in campaigns to delete all communications for a wave item.
Warning: Do not use this workflow action unless you are an SQL expert and have tested your workflow
extensively in a non-live environment. Poorly constructed or erroneous SQL could have a seriously
detrimental impact on your system.
SQL Statement The SQL clause to be executed. You can use ## symbols to add
information from the related entity. For more information, see Using the
## and # symbols.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Show Confirmation Message Displays a message that allows the user cancel the action before
execution. You should set this to Yes.
Use Run Stored Procedure to insert a default value in a field as part of a workflow process. The stored
procedure performs complex calculations and can update other records in the database.
Warning: Do not use this workflow action unless you are an SQL expert and have tested your workflow
extensively in a non-live environment. Poorly constructed or erroneous SQL could have a seriously
detrimental impact on your system.
Field Description
Column The value that the stored procedure returns is inserted in this column.
Value The name of the stored procedure. The stored procedure must already
be created on the database.
You must use the following parameters in the stored procedure. The
stored procedure should always return (1).
Use Show Notification on Screen with escalation rules to display an onscreen notification to the user as
part of the workflow process. For example, you can use this action to notify a user that they've been
assigned a new web lead. You can use this action with escalation rules only.
The table below describes Show Notification on Screen fields on the New Workflow Action Details
screen.
Message The content of the notification message. You can use ## symbols to add
information about the related entity. For more information, see Using the
## and # symbols.
Send Email
Use Send Email to send an email that's automatically filed against the corresponding entity and displayed
on the Communications tab as part of the workflow process.
You can use this action on person, company, case, opportunity, solution, and custom entity (with
communications) records. You must specify a notification email address in Workflow and escalation
settings.
Warning: For any email feature to work, your IT department must set up an email server and configure
Sage CRM to connect to it.
The table below describes Send Email fields on the Workflow Action Details screen.
Field Description
If you leave this field blank, the name and email address in Notify email
name and Notify email address are used. For more information, see
Workflow and escalation settings.
To The recipient's email address. You can use the # symbol to add
information about the current user. For example, #oppo_
assigneduserid#. The user's email address must be correct. For more
information, see Using the ## and # symbols.
Subject The subject of the email. You can use ## symbols to add information
about the related entity. For more information, see Using the ## and #
symbols.
Do not file this Emails sent from a workflow using the template are not filed.
communication
Email Contents You can use ## symbols to add information about the related entity. For
more information, see Using the ## and # symbols.
For example, to add links to Sage CRM records, use the following tags:
#recordanchor#Text goes here#recordanchorend#
After clicking the link, a user must log on to Sage CRM to open the
record. This ends any current active Sage CRM session.
Use Send SMS Message to send messages to a user's phone as part of the workflow process. For
example, to notify an opportunity owner of a change in opportunity status.
Warning: You need an SMS gateway to use this action and other SMS features of Sage CRM. Contact
your IT department to set this up.
The table below describes Send SMS Message fields on the Workflow Action Details screen.
Field Description
SMS to Number The recipient of the message. You can enter a mobile telephone number
or use the ## symbols to send the message to a user such as the
opportunity owner. For more information, see Using the ## and #
symbols. The user's mobile phone number must be correctly set up in
the User table.
SMS Subject The subject of the message. You can use ## symbols to add information
about the related entity. For more information, see Using the ## and #
symbols.
SMS Body The contents of the message. You can use ## symbols to add
information about the related entity. For more information, see Using the
## and # symbols.
Use Create Task for Group to prompt the user to select a group and schedule a task as part of the workflow
process. You typically use this action with rules associated with wave items in the Campaign Management
module. For example, this action allows the user or campaign manager to set up an outbound telemarketing
action for a list of prospects.
The table below describes Create Task for Group fields on the Workflow Action Details screen.
Field Description
Get Group From A prefiltered list of groups. For example, WaIt_Groups, displays only
those groups linked to the current Campaign Wave Item.
Label for new task The label that's attached to the task. You can use it in JavaScript
conditions on future workflow rules to test the values of fields on the
communication. For example, Display the Closed workflow rule when
Status of related communication labeled "XYZ" is Complete.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Exclude Previous Recipients Displays the Exclude Previous Recipients checkbox on the workflow
progress screen. If the user selects this checkbox, the new task is
scheduled only for people who meet the group criteria and who've not
yet had a task created for them.
You can use ## symbols to add information about the related entity. For
example, Customer Service Call for opportunity #oppo_opportunityid#
closed on #oppo_closed#, displays the opportunity ID and the
Date/Time the opportunity was closed. For more information, see Using
the ## and # symbols.
You should use a unique subject to make it easy for users to differentiate
a large number of similar records in a list in Sage CRM or in Outlook, if
you're using Classic Outlook or Exchange Integration.
Private Specifies that the task is private. A private task is not displayed in the
Team calendar.
Created By The user who created the task. This is the current user.
Created Date The date on which the task is created. This is the current date.
Percentage Complete The percentage of the task that's completed. The user enters this value.
Completed Time The percentage of time allocated to the task that's completed. The user
enters this value.
User The user assigned to the task. If this is blank, the user in Get Default
User From is used.
Onscreen Reminder Displays an onscreen reminder notification to the user assigned to the
task.
Send Reminder Message Sends a reminder to the user assigned to the task. Reminder formats
and priorities are set up in the user’s Reminder Preferences.
Current Time Offset The number of minutes between the time at which the action is executed
and the time at which the action is recorded. This is useful if users are
working in a different time zone to the current time zone.
Use Create Document for Group to prompt the user to select a group and carry out a mail merge as part of
the workflow process. You typically use this action with rules associated with wave items in the Campaign
Management module. For example, this action allows the user or campaign manager to set up and send a
mail shot to a list of prospects.
The table below describes Create Document for Group fields on the Workflow Action Details screen.
Field Description
Value The name of the document to be merged. If you leave this blank, the user
can select a template when performing the merge.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Get Group From A prefiltered list of groups to choose from. For example, WaIt_Groups
displays only those groups linked to the current Campaign Wave Item.
Exclude Previous Recipients Displays the Exclude Previous Recipients checkbox on the workflow
progress screen. If the user selects this checkbox, the new document is
created only for people who meet the group criteria and who've not yet
received the mail.
Use Export Group to File to prompt the user to select a group and export it to a CSV file or delimited text file
as part of the workflow process.
The table below describes Export Group to File fields on the Workflow Action Details screen.
Field Description
Label for new task The label that's attached to the task. You can use it in JavaScript
conditions on future workflow rules to test the values of fields on the
wave item or related entity.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Exclude Previous Recipients Displays the Exclude Previous Recipients checkbox on the workflow
progress screen. If the user selects this checkbox, the exported group
contains only those records that meet the group criteria and who've not
yet been exported.
Use Create Outbound Call List to prompt the user to create an outbound call list as part of a workflow
process.
The table below describes Create Outbound Call List fields on the Workflow Action Details screen.
Field Description
Group ID field name A prefiltered list of groups to choose from. For example, WaIt_Groups
displays only those groups linked to the current Campaign Wave Item.
Label for new task The label that's attached to the outbound call list. You can use it in
JavaScript conditions on future workflow rules to test the values of fields
on the wave item or related entity.
Order The order of the field on the screen for this workflow rule. Set the order
of a field to move it to a different position on the screen and use New
Line to move the field to a different line.
Exclude Previous Recipients Displays the Exclude Previous Recipients checkbox on the workflow
progress screen. If the user selects this checkbox, a call list is created
only for people who meet the group criteria and who've not yet been
called.
You can manually activate workflow for campaigns, companies, and people, and then define your own
workflows for these entities. You can also define workflows for a custom entity if you enabled workflow when
you built the custom entity.
In addition to the standard opportunity workflow, there's a ready-to-use Quick Sale Workflow that's
designed for products that don’t require a complex sales cycle and can be sold in a few steps. You must
activate the Quick Sale Workflow if you want to use it. For more information, see Editing a workflow.
Note: The status area on the summary screens for cases, solutions, opportunities, and leads is part of
workflow. To update the status fields in this area, a user must progress the record through the workflow.
If you deactivate workflow for these entities, a Progress button is displayed rather than the workflow
actions, and a user can enter values in the status area.
If you're using escalation rules in your workflows or outside workflow, you must configure escalation
settings. For more information, see About quick notifications and escalation rules.
You activate and deactivate workflow for specific entities and configure escalation settings as follows:
Field Description
Workflow for opportunities Activates workflow for opportunities. In addition to the standard
opportunity workflow, there's a ready-to-use Quick Sale Workflow that's
designed for products that don’t require a complex sales cycle and can
be sold in a few steps. You must activate the Quick Sale Workflow to use
it. For more information, see Editing a workflow.
Workflow for campaigns Activates workflow for campaigns. Sample campaign, wave, and wave
item workflow names are prefixed with "Sage".
Workflow for companies Activates workflow for companies. Sage CRM does not include a
sample workflow for companies so you must create your own workflow.
Workflow for people Activates workflow for people. Sage CRM does not include a sample
workflow for people so you must create your own workflow.
When escalation rules are activated, you must still enable each rule
individually. For more information, see About quick notifications and
escalation rules.
Notify interval (sec) If you're not using the CRM Escalation Service, this is the minimum
interval (in seconds) between the server polling clients for notification
reminders or escalation rules.
If you are using the CRM Escalation Service, the minimum interval
between polling is 5 minutes (300 seconds) by default.
The value set in Interval on an individual rule overwrites the value set in
Notify interval.
Notification display count The number of notifications displayed onscreen at any one time. If you
set Notification display count to 20 and a user has 100 notifications, the
number beside the Notifications icon on the top bar is 100. When the
user clicks the icon, 20 notifications are displayed. When the user clicks
Close All, the next 20 are displayed.
Escalation engine tuned for System Performance: Notifications are processed at the polling rate set
in Notify interval.
Notify Email name The name that appears on a notification email. For example, when an
unsolved case is escalated and an email is sent to the team leader as
part of a case workflow, this is the name in the From field of the email.
For more information, see Send Email.
If Notify email name and Notify email address are blank and the
Escalation Service is disabled, the email address of the current user is
used.
When the Escalation Service is enabled, the email address of the current
user is not applicable and you must enter a value in Notify email name
and Notify email address.
Notify Email address The valid email account that's used to send notification emails. For more
information, see Send Email.
If Notify email name and Notify email address are blank and the
Escalation Service is disabled, the email address of the current user is
used.
When the Escalation Service is enabled, the email address of the current
user is not applicable and you must enter a value in Notify email name
and Notify email address.
Default targets for high The targets to which high priority reminder messages are sent. Options
priority reminder messages are desktop email, mobile email, and SMS.
Default targets for normal The targets to which normal priority reminder messages are sent.
priority reminder messages Options are desktop email, mobile email, and SMS.
Default targets for low priority The targets to which low priority reminder messages are sent. Options
reminder messages are desktop email, mobile email, and SMS.
Maximum SLA Actions The number of action fields that are available when setting up SLAs.
This number typically corresponds to the number of stages in the Cases
workflow. The default value is 5.
Use Escalation Service Yes: The CRM Escalation Service runs escalation rules even when no
user is logged on to Sage CRM. This is a Windows service that you turn
on in Control Panel | Administrative Tools | Services.
No: The Web server runs escalation rules but only when a user is logged
on to Sage CRM.
For more information about the Escalation Service, see About quick
notifications and escalation rules.
Building a workflow
l Creating a workflow
l Editing a workflow
l Creating a workflow state
l Creating a workflow rule
l Adding states and rules to a workflow
l Deleting a workflow
Creating a workflow
1. Click <My Profile> | Administration | Advanced Customization | Workflow.
2. Click New Workflow.
3. Enter a description.
4. Leave Enabled unchecked. You can't edit a workflow that's enabled.
5. Click Save. The workflow design page displays one default entry state from which you can build
your workflow tree.
6. Click New State to add a state to the workflow. For more information, see Creating a workflow
state.
7. Click New Rule to add a rule to the workflow. For more information, see Creating a workflow rule.
8. You can add states and rules to the workflow now or later. For more information, see Adding states
and rules to a workflow.
Note: You should fully test workflows in a test environment before you enable workflows on your
production system.
Editing a workflow
1. Click <My Profile> | Administration | Advanced Customization | Workflow.
2. Click the workflow you want to edit.
3. If the workflow is enabled, click Edit Workflow. This disables the workflow so you can edit it.
4. To change the workflow description, click Change Workflow.
a. Enter the new description.
b. Ensure Enabled is unchecked. You can't edit a workflow that's enabled.
c. Click Save.
5. To delete a state or rule from the Available States palette or a rule from the Available Rules
palette, click the state or rule in the palette. You cannot delete a state or rule that's used in a
workflow tree.
a. Click Delete.
b. Click Confirm Delete.
c. Click Save.
6. Drag new states and rules onto the tree. For more information, see Adding states and rules to a
workflow.
7. To remove a state or rule from the workflow tree, click the state or rule in the workflow tree and drag
and drop it onto the dustbin icon. When you remove a state or rule, all states and rules hanging from
it are also removed. Click OK.
8. Click Save to save any changes you've made.
9. Click Activate Workflowto activate the workflow. You should fully test all workflows on a Sage CRM
test installation before you enable them on your production system.
10. Click Cancel to return to the workflow list.
Note: If all workflow actions in your rule are marked as hidden, the rule moves to the next state
without displaying the tracking notes option.
6. To add actions to the rule, click the rule in the Available Rules palette. If you add actions to a
workflow rule that uses a .NET DLL or ASP page, the actions are not executed. The .NET method
or ASP page is executed instead.
a. Scroll to the end of the screen and click New.
b. Click the action you want to add. Not all workflow actions are compatible with each workflow
rule. For a list of actions that work with each rule type, see Workflow actions.
Tip: You can set workflow conditions using the Restricted to Team, JavaScript Condition, and Trigger
SQL Clause fields on a rule, and by adding JavaScript to the Create Script, OnChange Script, and
Validate Script fields on some actions. You can also use field security to set access right to individual
fields on a screen. For more information, see Adding security types for a field.
Field Description
Clone an existing rule The existing rule that the new rule is based on.
Clone the actions associated Clones the actions of the existing rule selected in Cone an existing rule.
with the Rule
Table or view Table:The entity table that's checked to see if the rule conditions are
met.
View: The table view that's checked to see if the rule conditions are met.
Views let you customize the set of fields within the JavaScript condition.
There may be significant performance improvements if you use a view
that includes only relevant records rather than performing a whole table
scan. If you select View, ensure the correct entity is displayed in Table.
A workflow update action occurs only on the table on which the workflow
is based. To update multiple tables at once, use an ASP page or an
Execute SQL workflow action.
Available for Cloning Includes the new rule in the Available for Cloning list so you can base
other rules on this rule and its associated actions.
Rule Enabled Enables the rule. You must enable the rule if you want to add it to a
workflow.
Type The type of workflow rule. For more information, see Workflow rules.
Alternative Image for Rule The image that's displayed in the UI if this rule is visible to the end user.
The default image is a small green bullet (WORKFLOWDEFAULT.GIF)
followed by the rule name.
Restricted to Team Restricts the rule to users who belong to this primary team. This is the
most simple way of limiting access to the rule. To restrict the rule to
members of two teams, or to create more complex restrictions, use
JavaScript in Javascript condition.
Order The order in which the field appears on screen when progressing a
workflow rule.
Interval The interval (in minutes) at which the rule runs. You can use this field to
fire rules repeatedly within a certain time frame. For example, for high
priority cases you could specify that a reminder email is sent between
7am and 9am every day to the assigned user.
If a specific rule takes longer to fire than other rules, it's a good idea to
specify a value in this field.
.NET Calls a .NET assembly and displays the Method Name field. Enter the .
NET DLL name in Custom File Name and the method in Method
Name. Use a DLL to execute custom business logic. If you add actions
to a workflow rule that uses a .NET DLL, the actions are not executed.
The .NET method is executed instead. You cannot link a .NET DLL to an
escalation rule.
Custom File Name The name of the custom file that's linked to the new rule. The custom file
must be saved in the CustomPages subdirectory of your Sage CRM
install.
If you add workflow actions to a workflow rule that uses a .NET DLL or
ASP page, the workflow actions are not executed. The .NET method or
ASP page is executed instead.
You cannot link a .NET DLL or ASP page to an escalation rule.
Method Name The name of the .NET method that's called. If you add actions to a
workflow rule that uses a .NET DLL, the actions are not executed. The
.NET method is executed instead.
Javascript condition The JavaScript condition that determines if the workflow button for the
rule is displayed. The workflow button is hidden when the condition is
false, and is displayed when the condition is true.
Rule actions occur only when this JavaScript condition is met. You can
use # codes in JavaScript conditions. For more information, see Using
the ## and # symbols.
For example, you can specify that a specific person must approve a
quote, or that an opportunity forecast must be above $10,000 to
progress from a lead to a qualified prospect.
JavaScript conditions can reference fields from any entity created by the
workflow using one of the following actions with a label:
l Create Task
l Create Opportunity
l Create Case
l Create Solution
l Create Lead
For example, you can set up a rule using Create Task with Attribute set
to Hidden that creates a communication with a label. Then you can
create a JavaScript condition that references the communication label
and executes only when the field value is Complete.
The following JavaScript condition limits access to the workflow button to
the Support team (ID 1) and Operations team (ID 5). These IDs are
taken from the Channel table in the demo data.
var intTeamID = CurrentUser.user_primarychannelid;
if (intTeamID == 1 || intTeamID == 5)
{Valid = true;}
else
{Valid = false;}
Trigger SQL Clause A condition in the form of an SQL WHERE clause. Escalation rule
actions occur only when the condition is met. The WHERE term is
assumed so you don't need to add it to this field. You can use # codes
within SQL trigger clauses conditions. For more information, see Using
the ## and # symbols.
When you create a notification rule, the user must be able to dismiss and
snooze the notification. The WHERE clause must include ‘ and xxxx_
datetimefield < #T’, and the action must use the same ‘xxxx_
datetimefield’ name. When the user dismisses the notification, the field
specified in the action is set to null. When the user snoozes the
notification, the field specified in the action is set to the current time plus
the number of snooze minutes.
When you create an email rule, you must include a stop clause so the
email is sent only once.
Add a field to the table to flag if the email has been sent. The
WHERE clause must include ‘and xxxx_emailsent = null’. In addition to
the email action, add a field action to Set Column Value that sets xxxx_
emailsent to Y.
For more information, see Trigger clause examples.
The predefined workflows for cases, solutions, opportunities, and leads contain examples of Javascript
conditions.
You can directly reference the fields of the workflowed record and return the field value. You cannot directly
reference the fields of other records that are in context of the workflowed record. Instead, you can use
CRM.GetContextInfo() to reference these fields and get data that's in context of the workflowed record.
The following is an example JavaScript condition on a custom entity called Project that's a child of Company:
if (proj_stage == 'Planning' && CRM.GetContextInfo("company","comp_
type")=='Customer') {
Valid = false;
}
else
{
Valid = true;
}
You can use ## symbols in workflow actions to add information from the related entity or the user table.
l You can use ## symbols in the JavaScript Conditions of primary, transition, conditional, and global
rules, and the Trigger SQL Clause of escalation rules to define conditions. When you use ##
symbols in a condition or statement, actual database values are substituted when the metadata is
parsed. For example, the following SQL statement compares the actual Campaign Wave Activity ID
with the value in a Communications Wave Activity field.
Update Communication set Comm_
Deleted=1 where Comm_
WaveItemId=#WaIt_WaveItemId#
l If you use ## symbols in the body of an email, SMS, onscreen message, or notification, the
translations are used.
l You can use the # symbol before certain letters to run internal function calls that return a concrete
value. For example, the following script uses #T and #U to compare the current time and user with
the values of fields containing escalation information.
Escl_DateTime<#T And Escl_
UserID=#U AND Upper(RTRIM
(comm_status))=N'PENDING'
#T Current time.
Deleting a workflow
1. Click <My Profile> | Administration | Advanced Customization | Workflow.
2. Click the workflow you want to delete.
3. Click Delete.
4. Click Confirm Delete.
5. Click Continue to return to the workflow design screen.
For example, a sales manager could use quick notifications and escalation rules configured for each sales
representative based on their targets and dates. The manager could identify leads that must be followed up
within one week to meet KPIs and generate automatic reminders for their sales reps to follow up with these
leads.
A customer service manager might use onscreen notifications to share product information such as special
offers and release dates, or to share critical real-time data so the team can be pro-active about resolving
cases and identifying upsell opportunities.
Escalation rules are usually more complex than quick notifications and can be used in a workflow or outside
the context of workflow. In general, you use an escalation rule to create a notification that contains more
than five conditions or contains a complex trigger SQL clause. If some or all of the conditions are satisfied or
the clause is triggered, a notification message is displayed onscreen or sent by email, values are updated, or
SQL is executed. If an escalation rule is included in a workflow, it's applied only to records in the correct
state. Escalation rules are time based.
The conditions in quick notifications and escalation rules are expressed using SQL. They are governed by
the same escalation mechanism and their behavior is logged in the escalation log and SQL log.
Task Help
For quick notifications to work, you must enable Workflow & Workflow and escalation settings
Escalation Configuration | Escalation. This setting also
enables the Reminder field for new tasks and appointments.
You can specify how many quick notifications are displayed Workflow and escalation settings
on screen at once.
Create a quick notification and specify what happens when Creating a quick notification
the conditions of the rule are met.
Task Help
To use the Escalation service to run escalation rules, you Workflow and escalation settings
must first turn the service on in Control Panel |
Administrative Tools | Services and then enable the service
in Workflow & Escalation Configuration | Use Escalation
Service.
For escalation rules to work, you must enable Escalation in Workflow and escalation settings
Workflow & Escalation Configuration | Escalation.
When escalation rules are activated, you must enable each Enabling an escalation rule
rule individually.
You can specify how often new escalations are triggered and Workflow and escalation settings
how many notifications are displayed on screen at once.
Predefined escalation rules display onscreen notifications to Working with predefined escalation rules
the system administrator but you can configure then to send
the information to a different user.
You can define a new escalation rule outside the context of Creating an escalation rule
workflow.
You can create escalation rules and use the escalation table Introduction to view customization
for custom entities. To do this, you must manage the data in
the escalation table with table level scripts and build a custom Table and entity level scripts in the
view based on existing escalation rules. For example, you Developer Help
could use a PostInsertRecord() event function to insert a
record into the escalation table.
Field Description
And / Or All And: The notification is created only when all the specified conditions are
met.
Field The field (database column) on which the condition script is executed.
Choose Field to insert into Click a merge field to include it in the notification message.
the Notification
Notify User The user who is notified when the conditions are met.
Notification Message The notification text that's displayed to the user. This is a required field.
You can insert merge fields from Choose Field to insert into the
Notification. You can format the message using HTML tags such as
<br> to force new lines, or <b> and <strong>.
Template The email template used for email notifications. Templates usually
contain standard content and field codes.
From The email address from which the email notification is sent.
If you leave this field blank, the name and email address in Notify email
name and Notify email address are used. For more information, see
Workflow and escalation settings.
Reply to The email address to which replies are sent. This field is available only if
you have permission to send emails from other accounts.
To The email recipients. To add a recipient to the To, CC, or BCC fields,
select the recipient in the search box on the right side of the screen and
click the green left arrow beside the To, CC, or BCC field. You can add
only one recipient at a time.
BCC The recipients who receive a blank carbon copy of the email.
Choose Field to insert into Click a merge field to include it in the email message.
the Email
Email message The email text that's displayed to the user. This is a required field. You
can insert merge fields from Choose Field to insert into the Email. You
can format the message using HTML tags such as <br> to force new
lines, or <b> and <strong>.
8. To use the rule, select Rule Enabled if it's not already selected.
9. Click Save.
Quarterly Quota Remaining Notify a sales user at the end of each month about the percentage and
amount of their remaining quota for the quarter.
Daily Quota Remaining Notify a sales user daily about the percentage and amount of their
remaining quota for the month.
Pipeline Update Notify a sales user every two weeks about the value of their pipeline for
this quarter, compared to their forecast total for the quarter.
Opportunity Close Date Notify the assigned user of an opportunity that the opportunity close date
Approaching is in five days.
Unassigned Lead Notify sales managers when a new lead has been unassigned for more
than five days.
High Value Opportunity Won Notify sales team members and sales managers when a high value deal
is won. The system administrator can configure the high value
opportunity amount.
High Value Opportunity Notify sales managers and send them an email when a high value
Created opportunity is created. This uses Total Quote Value on the opportunity.
The system administrator can configure the high value opportunity
amount.
Quote Discount Value too Notify sales managers and send them an email when a quote line item
large discount exceeds 40%.
Unassigned Opportunity Notify sales managers when a new opportunity has been unassigned for
more than five days.
Lost Opportunities Notify the sales manager when a deal has been lost.
Order repricing notification Notify a sales user when the total of an order changes.
Quote repricing notification Notify a sales user when the total of a quote changes.
Order Synch error Notify a user when there's an error synchronizing an order with the BMS
notification application.
Quote Synch error Notify a user when there's an error synchronizing a quote with the BMS
notification application.
Account Synch error Notify a user when there's an error synchronizing an account with the
notification BMS application.
Exchange Integration Notify a user when the system administrator has enabled them to
Notification automatically synchronize with Microsoft Exchange.
Email Blast Failure Notice Notify a sales user when an E-marketing email blast is not successfully
sent.
Campaign Over Budget Notify a sales user when an E-marketing campaign has exceeded the
approved budget limit.
Campaign Close To Budget Notify a sales user when an E-marketing campaign exceeds 90% of the
approved budget limit.
Backup Failure Notice Notify a system administrator when a Sage CRM backup fails.
Backup Completed Notice Notify a system administrator when a Sage CRM backup successfully
completes.
MailChimp audience upload Notify a user when a Sage CRM group of contacts is successfully
message uploaded to the MailChimp audience.
Communication Reminder Notify the assigned user of a communication task that the due date is
approaching.
Quote Expiry Notify the assigned user of a quote that the quote expiry date is in five
days.
Email Reminder Notify the assigned user of an email task that the due date is
approaching.
1. Configure escalation rule behavior. For more information, see Configuring workflow and escalation
rule behavior.
2. Click <My Profile> | Administration | Advanced Customization | Escalation.
3. Click New.
4. To clone an existing rule, ensure the rule is available for cloning. For more information, see Making
an escalation rule available for cloning.
a. Select the rule from Clone an existing rule.
b. If you want to use the rule actions, select Yes from Choose to clone the actions
associated with the Rule.
c. Enter a Rule Name.
d. Select Rule Enabled.
e. Click Save.
5. To create a completely new rule, complete the Escalation rule fields. Ensure the rule is enabled.
Field Description
Clone an existing rule The existing rule that the new rule is based on.
Clone the actions associated Clones the actions of the existing rule selected in Cone an existing rule.
with the Rule
Table or view Table: The table that's checked to see if the rule conditions are met.
View: The table view that's checked to see if the rule conditions are met.
Views let you customize the set of fields within the JavaScript condition.
It's good practice to base escalation rules on views rather than tables to
reduce the number of records that are checked. If you select View,
ensure the correct entity is displayed in Table.
Available for Cloning Includes the new rule in the Available for Cloning list so you can base
other rules on this rule and its associated actions.
Alternative Image for Rule The image that's displayed in the UI if this rule is visible to the end user.
The default image is a small green bullet (WORKFLOWDEFAULT.GIF)
followed by the rule name.
Restricted to Team Restricts the rule to users who belong to this primary team.
Order The order in which the field appears on screen when progressing a
workflow rule.
Interval The interval (in minutes) at which the escalation rule runs. If a specific
escalation rule takes longer to fire than other rules, it's a good idea to
specify a value in this field. This value overwrites the value in Notify
Interval in Workflow & Escalation Configuration.
Trigger SQL Clause A condition in the form of an SQL WHERE clause. Rule actions occur
only when the condition is met. The WHERE term is assumed so you
don't need to add it to this field. You can use # codes within SQL trigger
clauses conditions. For more information, see Using the ## and #
symbols.
When you create a notification rule, the user must be able to dismiss and
snooze the notification. The WHERE clause must include ‘ and xxxx_
datetimefield < #T’, and the action must use the same ‘xxxx_
datetimefield’ name. When the user dismisses the notification, the field
specified in the action is set to null. When the user snoozes the
notification, the field specified in the action is set to the current time plus
the number of snooze minutes.
When you create an email rule, you must include a stop clause so the
email is sent only once.
Add a field to the table to flag if the email has been sent. The
WHERE clause must include ‘and xxxx_emailsent = null’. In addition to
the email action, add a field action to Set Column Value that sets xxxx_
emailsent to Y.
l In the SQL below, #L indicates that notifications are used only if the user is DolanW.
CmLi_Comm_NotifyTime<#T AND
cmli_comm_userid=#U AND
Comm_Status='Pending' AND #L = 'DolanW'
l In the SQL below, #C indicates that the user is notified if team is their current team. It also checks
that team is null, as Team may not be a mandatory field.
CmLi_Comm_NotifyTime<#T
AND cmli_comm_userid=#U
AND Comm_Status='Pending'
AND Comm_ChannelID = #C OR Comm_ChannelID IS NULL)
l The SQL below specifies that the escalation rule runs only between 7am and 6pm, and does not run on
weekends.
(... existing SQL triggering clause) AND datepart(hour, current_timestamp)<'18'
AND datepart(hour, current_timestamp)>'7'
AND DATENAME(WEEKDAY, GETDATE()) <> 'Saturday'
AND DATENAME(WEEKDAY, GETDATE()) <> 'Sunday'
l The SQL below is taken from the Email Reminder escalation rule. It uses a stop clause (CmLi_
SMSMessageSent) to prevent the rule firing repeatedly. The email message is sent only when the
field is null. When the email is sent, the field is set to Y which prevents the rule firing again.
(CmLi_Comm_NotifyTime<#T)
AND(UPPER(RTRIM(Comm_Status))=UPPER(RTRIM(N'Pending')))
AND(CmLi_SMSMessageSent IS NULL)
AND(UPPER(RTRIM(Comm_SMSNotification))=UPPER(RTRIM(N'Y')))
When a token is supported for escalation rules, it can be used in the Trigger SQL Clause field.
When a token is supported for quotes and orders, it can be used in the Quote Format and Order Format
fields.
Sage CRM mobile apps, developed for specific devices and operating systems, give you online and offline
access to Sage CRM by storing some Sage CRM data on your device.
Sage CRM Mobile allows you to work online using a web browser on any mobile device, such as a
smartphone or tablet. Each device has a string of text, called a user agent, that describes the device to Sage
CRM. The user agent contains the version of browser and operating system that's on the device. Sage
CRM interprets the user agent and based on mappings that you've set, it displays the associated UI theme
on the mobile device. A UI theme is like a style sheet that defines how Sage CRM appears on a particular
mobile device. There are two predefined themes. For more information, see Creating a new mobile theme.
Mobile devices
If you add too many fields to a small screen, it may look crowded and be difficult for users to work with.
l The license key you specify during Sage CRM installation must allow the use of Sage CRM Mobile.
l Configured access URLs for mobile users, so that they could access Sage CRM from inside and
outside your corporate network. Make sure the users know the URLs they need to use.
l Mobile device access must be enabled for users who want to use Sage CRM Mobile. For more
information, see Enabling a user for Sage CRM Mobile.
l User agents must be mapped to the appropriate UI themes (devices).
For more information, see Mapping a user agent.
l Screens for Sage CRM Mobile should be customized as required.
For more information, see Customizing screens for Sage CRM Mobile.
The Classic dashboard, if it's available, should be customized for improved viewing on mobile
devices.
If Classic Outlook Integration or Exchange Integration is configured in Sage CRM, updates are reflected in
the tasks, appointments, and contacts accessed using Sage CRM Mobile on most devices.
Mobile devices
Firewall
l The URL for accessing Sage CRM from inside the corporate network is the same as the URL for
accessing Sage CRM from your desktop and is typically in the format http://yourserver/yourapp.
l The URL for accessing Sage CRM from outside the corporate network typically includes your
company’s IP address or domain name. The URL is normally in the format
http://companyipaddress/yourapp.
When a new device attempts to connect to Sage CRM, it sends its user agent and Sage CRM adds it to the
list of defined user agents if it isn't already included. But suppose you don't yet have the device; each of your
users will get one next month, and you need to configure Sage CRM in preparation. Because the device
can't send its user agent, you must obtain the user agent from the Internet and enter it into Sage CRM.
You can create a new theme by modifying an existing theme (device). For example, you might want to
create an iOS theme and map all user agents for old versions of iOS to it.
Field Description
User Description Enter the theme description to be displayed to the users in the Sage
CRM user interface.
XSL File Name Enter the name of the Extensible Stylesheet Language (XSL)
transformation file that converts Sage CRM output to a format
compatible with the mobile device. For each device, a set of files is
created in a folder in the following location:
<Sage CRM installation folder>\WWWRoot\
Themes\XSL
Based On Device Specifies the existing theme (device) on which the new theme is based.
Use this list only if the device is not present in the Devices list located in
<My Profile> | Administration | Customization | <Entity> | Screens.
HTTP Accepts Specifies the unique markup language used by the target device.
HTTP Content Type Specifies the markup language used by Sage CRM to reply to the
device.
Device Image Extension Specifies the image file name extension to use with the device.
Device Code Page Specifies the character set to use with the device.
Device Max Rows Specifies the maximum number of rows that can appear in a grid.
Device CSS File Specifies the Cascading Style Sheets (CSS) file to associate with the
device.
HTML 4 delivers the normal desktop UI to the device. If you want Sage
CRM to assign a browser type, select Other.
You can modify a classic dashboard for Sage CRM Mobile. For example, you might want to limit the content
available to mobile users. First, you must make a classic dashboard available to mobile users. You can then
create or modify a classic dashboard in the usual way.
You can make specific dashboard blocks available to mobile users on their classic dashboards. The
Extensibility Module is required for block customization.
/**************************************
/*************************************/
/**************************************
/*************************************/
l Tablet view. Displays Sage CRM optimized for iPad or Android Tablets with 10" or 7" screens.
l Desktop view. Displays the same look and feel as Sage CRM on Desktop. The Desktop view uses
the Sage CRM fully featured UI.
To display the Interactive Dashboard on a tablet, you must use the Desktop view.
What is CTI?
Sage CRM CTI provides CTI-enabled users with telephony functionality from their desktops, via the Sage
CRM interface. Users can select any hyperlinked telephone number in the system to call that number, and
any incoming calls are matched with contacts in the Sage CRM system so that users can quickly view
contact details while they talk, or even before they take the call.
Sage CRM requires a TAPI driver on the client machine in order to communicate with the Telephony
Server. If you have a CSTA or TSAPI solution you will require a 3rd party TAPI client in order to integrate
with Sage CRM.
The PABX switch controls the events and messaging over the Telephony Network, and the LAN server
handles the day-to-day user-based network activities. The Telephony Server is a PC-based server that has
an interface to the PABX switch and an interface to the LAN. This is the bridge that integrates telephony
functionality with software on a LAN.
The Sage CRM Server interacts with the Sage CRM CTI browser plugin, which in turn interacts with the
Telephony Server. When Sage CRM CTI is enabled, every CTI enabled user of Sage CRM has access to
the Sage CRM CTI browser plugin. All inbound and outbound telephony activities are received or created by
this plugin. In addition, the Sage CRM CTI browser plugin calls the Sage CRM server for the screen pop-
ups, which present the caller ID and Sage CRM contact information to the user.
The diagram below illustrates how Sage CRM integrates with a typical CTI network.
l A Private Automatic Branch Exchange (PABX) switch. All TAPI-compliant PABX switches are
compatible with Sage CRM.
l A Telephony Server that has been configured for all users who will use Sage CRM CTI. All the
following telephony servers are compatible with Sage CRM:
l TAPI
l TSAPI
l CSTA
Note: For TSAPI and CSTA CTI solutions, TAPI client software needs to be installed on all user
machines who will work with Sage CRM CTI because Sage CRM is compatible only with TSAPI
and CSTA systems that provide a TAPI driver. A TAPI driver must be present on the client
machine in order for integration with TSAPI and CSTA systems to work.
l Telephony Server Provider (TSP) software installed on the telephony server. Specific software
depends on the type of server.
l An operational CTI network that has been fully tested.
l Workstations configured for inclusion in the telephony network. For more details, see Enabling and
configuring CTI.
l A list that specifies the TN number (analogous to the IP associated with the user) and DN number
(user's extension number) for each Sage CRM user so that they can be enabled for CTI on the
Sage CRM server. See Role of the telephony administrator.
l A Sage CRM CTI license.
One important role of the telephony administrator is to set up telephony devices on the Telephony Server.
This involves configuring the Telephony Server to associate each user in the local network domain with a
particular telephone or telephony device. Each telephony device needs to be uniquely associated with a
local telephony IP address. Each user needs to be associated with this address and assigned a TN number.
Note: If you have difficulty in identifying telephony device names for the users you want to enable for
CTI, consider using a tool such as ExceleTel to help you do this.
An additional screen is displayed after the Default Currency dialog box that prompts you for information on
the telephony network setup.
For example, let's say you are based in the US in Washington, DC. In addition, you typically dial "9" from
your work telephone to get an outside line.
1. Select the country that you are located in from the What Country / Region Are You In Now list, for
example, United States of America.
2. Type in your area or city code in the What Area Code (Or City Code) Are You In Now field, for
example, 202.
3. In the If You Dial A Number To Access An Outside Line What Is It field, type the number that
users typically dial to get an outside line, for example, 9.
4. Continue with the installation.
Once Sage CRM is installed, you can change the CTI settings specified during the installation. For more
information, see Configuring CTI.
Configuring CTI
1. Click <My Profile> | Administration | System | System Behavior.
2. Click Change.
3. Configure the CTI fields described below.
4. Click Save.
CTI Plugin Class ID CTI plugin GUID. This GUID is always the same for the Sage CRM
plugin. If a user has developed their own plugin, they must change this
field to the GUID of their plugin.
CTI.cab Version CTI plugin version used by Sage CRM. If a user has developed their
own plugin, they must change this field to the cab name and version
number of their plugin.
External Dial Prefix The digit used in your organization to make a telephone call outside the
company (external call), for example, 9 or 0. The number will already
have been set up on the telephony server.
Default Country Code The international country code for the country you are located in.
Default Area Code The area or city code for the area or city you are located in.
Internal Number Length The number of digits in your organization's extension numbers. This is
set to 4 by default. This field enables Sage CRM to determine whether
an incoming or outbound call is an internal or external number.
TcmSetup /c <TelephonyServerName>
You need to repeat the above steps on each CTI-enabled user's machine.
l Sage CRM installed on the same server with a valid Self Service license key.
l The same server software as for a typical Sage CRM installation. Refer to the System Administrator
Guide for more information.
l You may need to install the Extensibility Module, depending on the functionality you want to
implement on your web site. For more information, see Customizing Self Service web site.
When you install Sage CRM Self Service, the following takes place by default:
l A new database called CRMSelfService is created, which contains the Visitor table, an important
table for storing visitor details.
l A new option called Self Service becomes available on the Administration | System home page.
This enables you to configure Sage CRM for Self Service and to maintain Self Service visitor
information.
l A Self Service tab becomes available when you are in the Person and Company context. This
allows People and Companies in Sage CRM to be enabled for Self Service and lets you assign a
Self Service logon ID and password to them.
It is also available on the IIS Web server under Default Web Site.
Tip: We advise that a production system runs the Self Service web application under a secured web site
(not the Default Web Site).
It contains ASP pages that reference Sage CRM blocks, image files, and include files (including the
eWaress.js file). These files create the basic Self Service functionality. You will need to carry out further
customization according to your implementation requirements.
Note: Before setting up a Self Service Web site, why not take a look at the Web to Lead feature in Sage
CRM. The Web to Lead feature allows you to include HTML on a customer web site that will allow users
of the customer Web site to create leads on the Sage CRM server. For more information on the Web to
Lead feature, see the System Administrator Help.
Registered Self Service users (that is, People or Companies registered in the Sage CRM system) can log
onto the Self Service site, view relevant information, and perform functions, such as reporting a problem or
requesting product information. An identifier in Sage CRM Self Service that enables access and rights on a
per user basis will authenticate them to perform functions. Visitor information is stored on the Self Service
database in the visitors table.
Ewaress.js file
The Sage CRM Self Service application server should be run remotely from the Sage CRM database
server. For example, a customer service case entered in the Sage CRM system can be viewed on the Self
Service web site. For more information, see the Installation and Upgrade Help on the Sage CRM Help
Center.
The eWaress.js file is the component behind this functionality. This file works in the same way as a typical
Sagecrm.js file, but it is also responsible for establishing the link between the Sage CRM database and the
Self Service database, thus ensuring that the databases can communicate with each other.
It is important to note that the eWaress.js file (rather than the Sagecrm.js file) is referenced in all Self Service
ASP pages. For more information on the Sagecrm.js and eWaress.js files, see the Developer Help on the
Sage CRM Help Center.
Note: The Self Service web site is a series of HTML based web pages, so you can add any standard
HTML field types, for example, text entry fields, drop-down lists, and radio buttons. However, you will not
be able to add Sage CRM-specific field types, such as search select advanced fields.
Please see the table below for a description of the Screen and List blocks you can customize without the
Extensibility Module. The table describes some of the blocks referenced in the Self Service demo web site.
You customize Self Service screens and lists from Administration | Customization in the normal way. Please
refer to the Administrator Help for more information on screen and list customization.
You can customize the sscaselist so that the problem details link to the case summary on the Self Service
Web site. To do this:
Note: The options Allow Order By, Order By Desc, and Default Order By are not allowed for columns.
They should be set to No or left blank.
You reference the blocks in ASP pages in the same way as you do within standard Sage CRM. One
difference, however, is that you reference the eWaress.js file (rather than the Sagecrm.js include file) on all
ASP pages.
Using the Sage CRM interface and ASP pages, you can create new blocks for Self Service or use existing
Sage CRM blocks and restrict them to show less information. You can set screens to be editable or read-
only, restricting what different users can do on the page. User passwords can be allocated at Person or
Company level. For more information about Sage CRM blocks, refer to the Developer Help on the Sage
CRM Help Center.
Typical functionality that you can add to the Self Service site using ASP pages includes:
l Server Level Security. Sage CRM supports all industry server security standards, and there are a
number of methods available to secure the Self Service server.
l Hyper Text Transfer Protocol Secure (HTTPS) can be employed to secure data sessions with
client users. When an HTTPS session commences, the server sends its public key to the browser.
In turn, the browser uses this key to send a randomly generated key back to the server. As a result,
there is a secret key exchange for the session. When IIS uses HTTPS, Sage CRM is aware of this
and when the client attaches any documents to a form in Sage CRM it sends through the encrypted
sessions.
l A firewall can be used to restrict unauthorized access to the database. Firewalls are commonly
employed to give users secure access to the Internet and, at the same time, separate a company's
Web server from its internal network. Various types of firewall are available, including packet filter,
proxy server, NAT (network address translation), and firewalls that adhere to stateful inspection
technology standards.
Sage CRM Self Service can run behind a firewall in order to protect the server from malicious attacks and to
allow only certain types of interactions to take place. The Sage CRM Self Service server can be physically
separated from the Sage CRM server, and a firewall can be installed around the Sage CRM server.
l Database Level Security. Sage CRM Self Service users do not have direct access to the
database. The Sage CRM Self Service pages opened by the user send requests via IIS to the
eWare DLL to access the database.
l Network Security. Sage CRM supports all industry standard network encryption protocols.
l Visitor List. Allows you to view a list of registered and anonymous visitors and view and edit visitor
profiles. For more information, see Modifying Visitor list.
l Self Service Configuration. Allows you to specify database connection settings. For more
information, see Configuring Self Service.
l Visitor Maintenance. Allows you to remove inactive visitors to keep your Visitor list short. For more
information, see Removing inactive visitors.
1. Click the Visitor List tab. You can view a list of visitors to the Self Service web site.
2. To search for a particular visitor, end the visitor's last name.
3. To view and edit visitor details, click the visitor's name hyperlink. When you click the Person
hyperlink, the Person Summary page opens. You can view and edit visitor profiles. The type of
information that you can view depends on your Sage CRM implementation.
The table below describes the standard fields on the Self Service Configuration tab.
Field Description
Database Driver The type of driver on which the Self Service database sits.
Database Server The name of the server on which the Self Service database sits.
Database User Name The ID of the user who will be used to connect to the Self Service
database.
Database Password The password of the user who will be used to connect to the Self Service
database.
Enterprise Database Driver The type of driver on which the Sage CRM database sits.
Enterprise Database Server The name of the server on which the Sage CRM database sits.
Enterprise User Name The ID of the user who will be used to connect to the Sage CRM
database.
Enterprise Password The password of the user who will be used connect to the Sage CRM
database.
Session Expires In (Hrs) How long the Self Service session lasts for until the user is logged out.
l System configuration
l Groups
l Email and documents
l System customization
l Mobile
l Installation
Depending on the version of Sage CRM and Internet Explorer that you're using, the button might not
appear. You can use a Sage CRM CSS workaround to ensure the button always appears. This example
displays the Clear button on date picker time fields in Sage CRM when using the Color theme. Add this to
\CRM\WWWRoot\Themes\color1.css.
.EDIT.hasDatepicker {
.EDIT[name$="_TIME"] {
To set logging levels, modify the level for the keyWordSearch logger in log4j.xml in
\CRM\tomcat\webapps\crmj\WEB-INF\. The most useful settings are DEBUG and ERROR.
If you can restart the service from the Services Control Panel or the command prompt but not from Sage
CRM, the Sage CRM user account probably does not have the Start/Stop Windows Services permission, or
cannot access net.exe.
By default, the Quick Find service listens on port 8983 on localhost. The Quick Find service is bound to
localhost so it does not respond to requests originating from a different Sage CRM web server. This is
necessary because the filtering of Quick Find results is carried out in another part of Sage CRM.
1. In Management Studio, configure the port and hostname in the SolrEngineUrl entry on the
Custom_Sysparams table.
UPDATE Custom_SysParams SET Parm_Value =
N'http://<hostname>:<port>/solr/'
WHERE Parm_Name = N'SolrEngineUrl'
This entry contains a URL endpoint for the Quick Find service, such as
http://localhost:8983/solr/
Do not bind the Quick Find service to any IP address that's accessible remotely. On a multi-server
installation of Sage CRM, each CRM web server hosts its own instance of the Quick Find service.
2. In Sage CRM, click <My Profile> | Administration | System | Metadata.
l Select Refresh System Parameters.
l Click Execute Refresh.
3. Use Notepad to open the Quick Find service installer file:
\CRM\Services\QuickFind\bin\SageCRMQuickFind-install-svc.cmd. Configure the port and
other options and save your changes.
l The Quick Find port parameter is in the QUICKFIND_PORT parameter setting.
l The host / IP address is in the QUICKFIND_HOST parameter.
l It is strongly advised that you do not change the QUICKFIND_HOST variable from localhost to
a port accessible remotely from the Sage CRM web server.
4. Double-click SageCRMQuickFind-install-svc and run it as a local administrator. Alternatively, run
it as a local administrator from a command prompt. The Quick Find service is stopped, uninstalled,
and reinstalled with the new settings.
5. If you encounter an error starting the service, check the logs in \CRM\Services\Logs\QuickFind.
Warning: Rebuilding the full index can consume significant system resources if a large amount of data is
added to the index.
6. If the index is not rebuilt and \CRM\QuickFind is not recreated, do the following:
l Start the Quick Find service from the Services Control Panel. For more information, see
Restarting the Quick Find service.
l Check the keywordSearch.log in \CRM\Logs.
l Ensure the ServerNames value in the Custom_Sysparams table is correct. The Quick Find
service starts on the first server in the list.
You can use 64-bit JRE with the Quick Find service so the service can index more data.
Warning: Change to a 64-bit JRE with caution and only if memory-related issues occur with the Quick
Find service.
1. Install a 64-bit Java 8 JRE on the Sage CRM web server or another machine.
2. Copy the contents of the JRE folder to a new folder called \CRM\Services\JRE\jre8x64. Ensure
the path to the x64 Java.exe is \CRM\Services\JRE\jre8x64\bin\java.exe.
3. Stop the Quick Find service if it's running.
4. Navigate to \CRM\Services\QuickFind\bin and make a copy of SageCRMQuickFind-install-
svc.cmd.
5. Open SageCRMQuickFind-install-svc.cmd in a text editor.
6. Change the following settings:
l PR_JAVA_HOME: Point this to the new JRE. For example, %CRM_SERVICES_
DIR%\JRE\jre8x64.
l QUICKFIND_JVM: There is no client mode for the x86 JRE. Point this to %PR_JAVA_
HOME%\bin\server\jvm.dll.
l ALLOCATED_MEM: The amount of memory to make available for the Quick Find service.
1. Reset IIS.
2. Restart Sage CRM.
3. If the message persists, initialize the indexing service in one of the following ways:
l Put field-level security on any primary entity text field. For example, deny rights. You can
take the field-level security off the field immediately.
l Select a Keyword Search view. For example, vSearchListCompany. Unselect the
Keyword Search checkbox for the view and save. Then reselect the Keyword Search
checkbox and save again.
l Delete the FullText.ix folder from the Library. After a default interval of five minutes, the
indexer service starts to build a full index. You can specify the gap between incremental
indexes in <My Profile> | Administration | System | Keyword Search | Interval.
Exporting groups
Issue Solution
An error occurs when exporting a group 1. Open the db.properties file in %ProgramFiles
to a text file (x86)%\Sage\CRM\<CRM Instance
Name>\tomcat\webapps\crmxxj\WEB-INF.
2. Locate the jdbc settings and ensure the server name
in the settings matches the CRM server name rather
than local host name.
A Services not available error is written 1. Disable the antivirus software or firewall.
to scrm.log when exporting a group.
2. Run the startup.bat file in %ProgramFiles
(x86)%\Sage\CRM\<CRM Instance
Name>\tomcat\bin.
3. If prompted, give Java or Tomcat permission to run.
A group is exported to a CSV file but the Ensure your browser doesn't block pop-up windows and
exported file doesn't automatically open ActiveX plugins.
or your browser doesn't prompt you to
open the file.
1. Ensure that you've configured the Mail Manager Filing Address and set a prefix in <My Profile> |
Administration | Email and Documents | Email Configuration.
2. Check that you've created an entry for the Email Management Filing Address in <My Profile> |
Administration | Email and Documents | Email Management Server Options.
3. To check that outbound email is sent to the Mail Manager Filing Address mailbox, disable Email
Management on this mailbox. To do this, open the Email Management Filing Address entry in Email
Management Server Options and deselect Enabled.
4. Send an email from Sage CRM and check the Mail Manager Filing Address mailbox for the email.
5. To re-enable Email Management on the mailbox, open the Email Management Filing Address entry
in Email Management Server Options and select Enabled.
If Email Management is running on the mailbox and reading emails successfully, the email you sent
disappears from the mailbox. If it doesn’t disappear, recheck the Email Management Filing Address,
specifically the Email Account logon and password.
6. To enable debugging, click <My Profile> | Administration | Email and Documents | Email
Configurationand select Yes from Debug.
7. Check the log file (yyyymmdd<installname>MailManager.log) in ...\Program
Files\Sage\CRM\Services\Logs.
If a cannot log message is displayed in the file, the Email Account logon and password you specified
for the Email Management Filing Address are incorrect.
8. Check the RogueMails folder to ensure there’s no erroneous formatting in the email (which can be
generated by a bug in an email server or client). The folder is located in
...\Program Files\Sage\CRM\Services\CustomPages\Scripts\RogueMail.
To stop Email Management creating two communications for each email it files:
1. To ensure CDOSYS is installed, open IIS and look for a Virtual Server folder. This folder is present
only if CDOSYS is installed.
2. To check that CDOSYS is running, open IIS, right-click the Default SMTP Virtual Server Folder
and click Start.
3. Open the CDOSYS BadMail folder. If there are emails in this folder, emails are not getting from the
CDOSYS SMTP server to the mail server, or are being bounced back. If this is the case, open the
emails to find the error.
l The From address may not be configured for emails that are sent as notifications from Sage
CRM. To correct this, click <My Profile> | Administration | Advanced Customization |
Workflow and configure Notify Email Name and Notify Email Address .
l The To address might not be configured. This is also possible for emails that are sent as
notifications or from workflows. Check the bad email to see where it's coming from, then
configure the email address.
4. Open the CDOSYS Queue and Pickup folders. If there are emails in these folders, CDOSYS is not
running, or the mail server is not relaying emails. Ensure the mail server is configured to relay emails
from the Sage CRM server.
5. To ensure that CDOSYS can find the mail server, open IIS Manager, right-click Default SMTP
Server and select Properties | Delivery/Advanced. Enter the IP address of the mail server in
Smart Host and restart CDOSYS.
6. Check that the mail server allows relaying. If it doesn’t, emails can be delivered to internal company
mailboxes but not to external mailboxes. Ask the mail server administrator to enable relaying.
This issue is caused by the default settings in the CKEditor configuration file. As a result, CKEditor overrides
the original Outlook formatting and extra paragraphs, lines, and spaces may appear in filed emails.
CKEditor is a third-party component used by Sage CRM to process emails. For more information about the
CKEditor configuration file, go to http://docs.ckeditor.com/#!/guide/dev_configuration.
To fix this issue, edit the CKEditor configuration file on your Sage CRM server:
config.autoParagraph = false;
4. To prevent the insertion of extra spaces and disable default CKEditor styling, append the following
code to the file:
config.allowedContent =
{
$1:
{
elements: CKEDITOR.dtd,
attributes: true,
styles: true,
classes: true
}
};
config.contentsCss=[];
5. Save your changes and close the file. As a result, the Config.js file should look as shown in Sample
Config.js file.
6. Open IIS Manager and restart the Sage CRM web site.
config.allowedContent =
{
$1:
{
elements: CKEDITOR.dtd,
attributes: true,
styles: true,
classes: true
}
};
config.contentsCss=[];
l In IE, go to Tools | Internet Options | Security | Trusted Sites and add the Sage CRM web site to
the list of trusted sites.
l If possible, disable antivirus software and firewalls while you install the plugin.
l HKEY_CURRENT_
USER\Software\Microsoft\Office\Outlook\Addins\SageCrmOutlookAddIn2010
l HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ACCPAC\CRM
l HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Code Store
Database\Distribution Units\{0AFD9937-10D5-436F-9F2B-08BF61754446}
l HKEY_LOCAL_
MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\ModuleUsa
ge\C:/Windows/Downloaded Program Files/OtlTools.ocx
l HKEY_LOCAL_
MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls\crmoutlook
plugin*.*
l HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Messaging
Subsystem\MSMapiApps\crmoutlookplugin*.*
1. Open IIS Manager (inetmgr.exe), expand the CRM virtual directory and double-click URL Rewrite.
2. Click Add Rule(s).
3. In Inbound rules, double-click Blank rule and name the rule Outlook plugin - force Windows
authentication.
4. In the Match URL section:
a. Set Requested URL to Matches the Pattern .
b. Set Using to Regular Expressions.
5. Set Pattern to *eware.dll/go and select Ignore case.
6. In Conditions, set Logical Grouping to Match All.
7. Add a condition with an input of {QUERY_STRING}.
a. Set Check if input string to Matches the Pattern.
b. Set Pattern to OutlookAction=logon.
c. Select Ignore case.
8. Add a condition with an input of {HTTP_AUTHORIZATION}.
a. Set Check if input string to Does Not Match the Pattern.
b. Set Pattern to Negotiate.*.
c. Select Ignore case.
1. Back up the system registry before making any modifications to the registry keys.
2. Open the registry editor (regedit.exe).
3. Delete the following keys if they exist.
l HKEY_CURRENT_USER\Software\Microsoft\Office\Outlook\Addins\
SageCrmOutlookAddIn2010ForExchange
l HKEY_CURRENT_USER\Software\Sage
l HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\
Code Store Database\Distribution Units\
{0AFD9937-10D5-436F-9F2B-08BF61754446}
l HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\
CurrentVersion\ModuleUsage\
C:/Windows/Downloaded Program Files/OtlTools.ocx
To solve this issue, you can create an Interactive dashboard gadget to display orphan Communication
records, a flag to identify orphan records, and a table level script to link an orphan Communication record to
an existing Person or Company record.
c. Click Save.
1. Locate the following folder that was created during the plugin installation:
%UserProfile%\AppData\Local\Temp\<Integer>\otlplugin
2. Copy the otlplugin folder to the Temp folder, and then delete the <Integer> folder. As a result, the
path to the otlplugin folder will look as follows:
%UserProfile%\AppData\Local\Temp\otlplugin
Issue Solution
No Impersonation The Exchange Server User Name specified in Exchange Server Connection
rights Setting requires impersonation rights in Exchange. Check the user rights in
Exchange.
Cannot access If the EWS URL cannot be accessed, the connection cannot be set up. Paste
EWS URL the EWS URL into a browser and check it can be accessed using the
impersonation user’s username and password.
Wrong authentication If the EWS folder in IIS on Exchange Server has the wrong authentication
settings on EWS settings, the connection cannot be set up. For more information, see
folder Configuring Exchange Server in the System Adminstrator Help.
Tomcat is not running The Tomcat service is required to establish the Exchange connection and to run
the Sync Engine. If the Tomcat service is not running, errors usually occur in
other areas of Sage CRM that rely on this service. For example, the Interactive
Dashboard. Restart the Tomcat service if it has stopped. Alternatively, you can
schedule a Tomcat service restart.
jdbc.properties or The jdbc.properties file contains the wrong server name or port number, or the
syncengine.properties syncengine.properties file contains the wrong server name. These files are
contain incorrect typically located in ..\Program Files\Sage\CRM\
server or port [installname]\tomcat\webapps\[installname]ExchangeSyncEngine\WEB-
information INF.
CRM is attemping to establish a connection with the Sync Engine. Please wait..
1. Click <My Profile>| Administration | Email and Documents | Exchange Server Integration |
Connection Management.
2. Set Use Default Sync Engine Location to No.
3. Enter the server name and port number separated by a colon(:) in Sync Engine Location. For
example, http://SERVER:8080/sdata/crmExchangeSyncEngine/crmExchange/-/.
Synchronizing contacts
When you enable contact synchronization in Exchange Integration, the contacts are added to the
EcngSyncResource table. They are then moved to the EWSSyncResource table and the number of
contacts decreases as they're processed.
However, running the following SQL statement shows that x number of records have been added to the
EcngSyncResource table but they have not been successfully moved to the EWSSyncResource table.
select * from EcngSyncResource with (NOLOCK)
where exsr_UUID not in (select EWRS_UUID from EWSSyncResource WITH (NOLOCK)) and
exsr_Deleted is null and exsr_processed = 0 and exsr_EndpointID in (6009,6014)
To troubleshoot this issue, update one of the contacts before performing a synchronization to check if it
processed. Also check the log files for any errors or conflicts when processing the records.
Note: The exsr_NoUpdateToRecord column is set to 1 during Exchange synchronization if the record
has not been updated since the last synchronization session.
This issue can be caused by the Sage CRM SMTP user having insufficient rights on the Exchange mail
server to send emails using a different email address.
To send emails from Sage CRM as any user, you must enable the SendAs right on the Exchange server
using PowerShell. For detailed information, see Granting the SendAs right to an SMTP user in the System
Administrator Help.
Issue Solution
Mail merge fails because The Tomcat service is required to perform a mail merge. If the Tomcat
Tomcat is not running. service is not running, errors usually occur in other areas of Sage CRM
that rely on this service. For example, the Interactive Dashboard. Restart
the Tomcat service if it has stopped. Alternatively, you can schedule a
Tomcat service restart.
Mail merge fails when a large l Reduce the size of the mail merge template by resizing images or
number of records are changing images to GIF format.
merged.
l Reduce the number of records that are merged at once. For
example, perform a merge on all person records with names
beginning with A-L and then perform a second merge on all
person records with names beginning with M-Z.
Mail merge fields that are not This issue can occur on upgraded versions of Sage CRM. Run the
included in a group's Group following query:
Content list are not merged update Custom_SysParams set Parm_Value ='N'where parm_
when performing a mail name ='AllowDupRecs'
merge on a static or dynamic And then perform a metadata refresh.
group.
Mail merge fails and an SQL The number of columns in a view exceeds 1024 columns. Remove fields
error 208 is displayed. from the view and perform the mail merge again. Test this on a local
test environment before you implement it on the production server.
For more information, see Optimizing a custom entity list for faster
loading in the System Administrator Help.
To resolve these errors, select a company and person for the opportunity.
1. To disable the Advanced Content Filter, open config.js in the <Sage CRM installation
folder>\WWWRoot\ckeditor\ directory.
2. Add the following line to set the allowedContent property to True.
CKEDITOR.editorConfig = function( config )
config.toolbar = "Full";
config.disableNativeSpellChecker = false;
config.resize_enabled = false;
config.fillEmptyBlocks = false;
config.pasteFromWordRemoveFontStyles = false;
config.pasteFromWordRemoveFontStyles = false;
// config.extraAllowedContent = 'img(*){*}[*]';
config.allowedContent = true;
config.toolbar = [
'/',
];
config.fontSize_sizes =
'8/8pt;9/9pt;10/10pt;11/11pt;12/12pt;14/14pt;16/16pt;18/18pt;20/20pt;22/22pt;24
/24pt;26/26pt;28/28pt;36/36pt;48/48pt;72/72pt';
};
3. Run iisreset at the command prompt to restart IIS on the Sage CRM server.
4. Clear the browser cache on all users' machines.
MailChimp Integration
Issue Solution
When you send a group to MailChimp, the Sage Remove all unsupported merge fields from your list
CRM notifications area displays Merge Max Limit in MailChimp.
Exceeded.
For a list of supported merge fields, see
This message indicates that your list in MailChimp "MailChimp merge fields supported out of the box"
includes one or more merge fields that are not in the System Administrator Help posted on the
supported by Sage CRM. Sage CRM Help Center.
When you create a workflow rule, Sage CRM inserts the rule name in both the Translation and the Caption
Code fields. If you update a workflow rule name in <My Profile> | Administration | Advanced
Customization | Workflow, only the Caption Code field is updated. To update the Translation field, do the
following.
Note: When you create a new lead directly in Sage CRM, the Lead workflow action buttons are
displayed.
You must also specify the restrictor field in the relevant mobile theme file.
Sage CRM Mobile is not Ensure that the user agent for the mobile device is correctly mapped to
displayed the device in Sage CRM. The user agent might either be unassigned to a
theme (device), or assigned to a different theme (device). For more
information, see Mapping a user agent in the System Administrator
Help.
Devices link is not available in The mobile license for Sage CRM is not installed. Contact your Business
Advanced Customization Partner about obtaining a license key with the mobile option.
area
Sage CRM Mobile is not The mobile device sends a different user agent when a link is accessed
displayed when Sage CRM from the home screen. Check unassigned user agents for a mobile
is accessed through a link on device user agent, and map it to the correct theme (device).
the home screen
Mobile device cannot locate Ensure that the Sage CRM installation is either publicly accessible or
the Sage CRM web server that the smartphone is connecting to a VPN which can access your Sage
CRM account.
Default logon screen Sage CRM metadata has not yet been loaded. For example, due to an
displayed instead of the Sage IIS reset. When you log on, Sage CRM Mobile is displayed as expected.
CRM Mobile screen
1. Click Control Panel | User Accounts and disable User Account Control.
2. Launch Sage CRM.
3. If a service unavailable error occurs, set the bitness64 precondition in
%windir%\system32\inetsrv\config\host.config.
Change: <add name="PasswordExpiryModule"
image="C:\Windows\system32\RpcProxy\RpcProxy.dll" />
To: <add name="PasswordExpiryModule"
image="C:\Windows\system32\RpcProxy\RpcProxy.dll"
preCondition="bitness64"
/>
4. Reset IIS.
5. Launch Sage CRM. If an internal server error occurs, run the following command to turn off HTTP
compression.
%windir%\system32\inetsrv\appcmd.exe set config -
section:system.webServer/httpCompression /-[name='xpress']
6. Reset IIS.
7. Launch Sage CRM.
Uninstalling services
If the 2020 R1 Email Management Service and the Escalation Service are not correctly uninstalled when
you restore a live environment, complete the following steps:
Re-installing services
To re-install the previous version of Email Management Service and the Escalation Service when you
restore a live environment, complete the following steps:
Redirector errors
It's possible to run Sage CRM 2020 R1 on a machine that's also running Sage CRM 7.2 although you
should not do this unless it's required for testing an upgrade to 2020 R1.
Sage CRM 7.2 uses the Managed Fusion URL Rewriter and Sage CRM 2020 R1 uses the ARR and URL
Rewriter modules of IIS. The Sage CRM 7.2 Rewriter is located in %ProgramFiles
(x86)%\Sage\CRM\Services\IISUtils\CRMRewriter. If you install Sage CRM 7.2 after Sage CRM 2020
R1, it overwrites the SData settings in IIS and removes the rewriter rules for Sage CRM 2020 R1.
A
Action Button
Action buttons are usually found on the right-hand side of the screen. They help you add and
change information and perform different tasks within the system. The action buttons available to
you change depending on where you are. Examples of Action buttons are: Change, Delete,
Confirm Delete, New Task, New Appointment.
Advanced Find
Allows users to create enhanced search queries based on complex SQL statements using
WHERE, AND, and OR clauses.
C
Campaign
A campaign is a planned rollout of marketing activities in phases, or Waves. Each phase can in turn
be made up of several actions or Wave Activities. Each action can in turn be made up of individual
communications between your company and its target audience. For example, a campaign called
West Coast Lead Generation aims to generate leads in a specific geography.
Case
A case is a customer service issue. These issues can range from a technical problem to a customer
complaint. A case keeps track of the issue from the initial logging through to resolution. Multiple
communications (or tasks) can be linked to one case.
Communication
Communication refers to a task or meeting. The specific types of communication are determined as
action types. For example, Letter In, Letter Out, Phone In, Phone Out, Demo.
Company Team
A Company Team is a group of users linked to a company for the purpose of tracking account
management responsibilities.
Context Area
The context area displays a summary of the information you are currently focused on. Example: If
you are working in the context of a person, their name appears on the top of your screen. Within the
same context area you can see their company, phone number, and e-mail address. You can quickly
move from the context area of a person to the company they work for by clicking on the Company
link within the context area.
D
Dashboard
The Dashboard is a customizable page that contains information most relevant to your daily work.
For example, a list of the companies you most often work with.
Document Drop
The Document Drop feature provides a short cut for linking documents, e-mails and other types of
files from another application to customer data in CRM.
Documents Tab
The Documents tab is available within the context of a person, company, opportunity, case, or
solution. It stores a link to a document.
Find page
The Find page is displayed when the user clicks Search | <Entity>. There is a Find page for
companies, people, opportunities, leads, solutions, cases, and communications.
G
Gauge
Partitions on the chart indicate three ranges in relation to a target value; below, approaching,
exceeded. The gauge needle indicates the current value. A gauge chart is useful in an Actual vs
Target sales report to show how your actual sales compare to your forecasted sales for a particular
period.
Groups
Groups allow users to create collections of records within CRM. Groups can be static or dynamic.
K
Keyword Search
To search for keywords across specified primary entities, click the Search arrow and click Keyword
Search. You can include wildcard characters to search for a variety of text and characters.
Line Item
Line items are products that your customer is interested in buying. They are linked to the opportunity
and selected through the Quotes or Orders tab.
M
MailChimp
An email marketing solution that's integrated with Sage CRM to let you create online campaigns,
send emails, and track results.
Menu button
Menu buttons are found on the left-hand side of the screen. They help you navigate to commonly
used pages. Menu buttons remain the same regardless of the company or individual or any other
context you are working in. However, one user may see a different set of menu buttons to another,
since access to these is set up in the user profile. Examples of Menu buttons are: New, Find, Team
CRM.
My CRM
The My CRM button shows a series of tabs all containing information related to the logged in user.
Depending on the user's rights, the My CRM areas of others can also be viewed by selecting
another person from the context area of the screen.
N
Next and Previous arrows
The Next and Previous arrows appear when a list of information extends to more than one page.
Clicking on the left- or right-pointing arrows will display the previous or next page respectively. The
outer arrows take you to the first or last page within a set of pages.
O
Opportunity
An opportunity refers to a sales opportunity. Opportunities track sales interest from the initial
qualified lead through to closing the deal.
P
Panel
A panel groups related information for easier viewing. One page of information can be divided into a
number of panels.
Progress button
The progress button is available in the context of leads, opportunities, solutions, and cases when
the workflow functionality is not in use. It can be accessed from the lead, opportunity, solution, or
case summary page. It allows users to change the Stage, Status and other data relating to the lead,
opportunity, solution, or case. It also allows users to add a tracking note, which forms part of the
history of the lead, opportunity, solution, or case "life cycle".
Q
Quick Find
You can enter key terms in Search on the top bar to search all company, people, case, opportunity,
lead, solution, communication, order, quote, and custom entity records at once.
R
Recent list
Click the Recent icon on the top bar to display a list of records you viewed recently. This list saves
company, person, opportunity, quote, order, lead, case, solution, campaign, and group records.
Relationships
The Relationships tab is available within the context of all main entities. You can show links between
different types of information. For example, you can set up a relationship between a company and
its directors, or between an opportunity and the people influencing it. Your System Administrator
defines the different Relationship Types that can be set up from each tab.
S
Shared Documents
The My CRM | Shared Documents tab lists all the Shared Documents and Templates you have
access to.
SLA
SLA stands for Service Level Agreement. A Service Level Agreement is made between your
organization and a customer to set standards for customer service case resolution times. Service
level agreements can be linked to companies and to individual customer service cases.
SMS
SMS stands for Short Messaging Service. If this feature is activated for your system, SMS is used to
notify users via their mobile phone or other wireless device of events taking place. For example, you
can receive a reminder of an upcoming meeting via SMS messaging. It can also be used in
conjunction with workflow to notify users of new leads, overdue cases, or closed opportunities.
Solution
Solutions are the "cleaned and approved" basis of a knowledge base. Solutions can be accessed by
internal CRM users, as well as customers and partners via a self service Web site. Solutions are a
separate entity from Cases, but they can be linked to multiple cases—and a case can be linked to
multiple solutions.
Stacked chart
Bars are stacked on top of each other to display grouped data. It provides a wider view of data than
a regular bar chart. A stacked chart is useful in an Open Activities activity report to show several
actions that occurred on a particular day or date.
T
Tab
Tabs are like folder dividers. The information found in each folder section is determined by the
current context. For example, if the person "Anita Chapman" has been zoomed in on in the context
area, selecting the Quick Look tab will display the most recent interactions your company has had
specifically with Ms Chapman.
Tabs menu
The tabs menu provides quick access to main entities in Sage CRM. It's available on all screens in
Sage CRM. Depending on your screen's size, the tabs menu can be found: Just under the top menu
in Sage CRM. If there are too many tabs on the menu, some of them will be grouped down under a
More heading. By clicking the <insert symbol image> icon at the top-left hand-side of the
screen.
Team
A team is a group of users who perform similar roles. Tasks (communications), opportunities, leads,
and cases can all be assigned to a team. A user can be a member of one team. This is called their
Primary Team. A user can also have rights to view information in multiple teams.
Tracking note
Tracking notes are used in the context of leads, opportunities, cases, and solutions to make free text
notes on the progress of the lead, opportunity, solution, or case.
V
Validation error
A validation error message appears on the screen when an incomplete or incorrect new entry has
been made in the system. The user must fill in required fields that are empty, or correct an invalid
entry, such as numbers in a text-only field. These fields are highlighted with a question mark and
cross mark, respectively.
Wave Activity
A Wave Activity is a type of action within a wave of a marketing campaign. Each wave activity can
be made up of individual communications between your company and its target audience. For
example, a campaign called West Coast Lead Generation aims to generate leads in a specific
geography. The campaign consists of three different Waves: 1) Raise Awareness; 2) Product
Launch at Tradeshow; 3) Qualify Interest. The first wave is made up of two different wave activities:
"Flyer Mailing" and "Newsletter Mailing". The second wave is made up of the following two wave
activities: "Invitation with Response Card" and "Response Card Follow-up", and so on.
Wild Card
The % wild card helps you complete unspecific searches. The % (percentage) symbol, means
"contains". For example, typing "%software" in the Company Name field of the company Find page
returns a list of all companies, which contain the word "software" in their company name.
Workflow
Workflow automates your company's business processes using a predefined set of rules and
actions.