4. Software
This chapter describes the software components that make up a typical CRM installation. Skip this section and move to the Using CRM section if you are keen to get on with looking at CRM functionality.
4.1. Client Software
CRM users can access all CRM functionality either on the local network or over the Internet using just Internet Explorer.
Note: Internet Explorer 6/SP2 or Internet Explorer 7 must be used.
The same functionality and user interface can also be accessed from the Desktop Client for Microsoft Outlook, which also offers better integration with Microsoft Office and the Windows Desktop. There are also open source and third party applications allowing access to CRM from Mobile Devices or within Microsoft Office.
The laptop version allows a subset of the data (including customisations) to be synchronised with a special Laptop Client for Outlook. The user can go off network, modify local CRM data and synchronise changes back into CRM when they reconnect to the network (only one user can be set up on each machine).
Microsoft has also announced special pricing for user licences that are read-only or attached to a specific device so that shift workers can use the same PC but consume only one license. Administrative users can also be set up (without a licence) to access administrative functions but cannot access CRM data.
4.2. Server Software
Microsoft CRM 4.0 is provided as a web server application which can be implemented on premise in different ways:
· CRM Workgroup is licensed for up to 5 users.
· CRM Professional allows a single CRM installation on one server.
· CRM Enterprise allows multi-tenancy where several CRM installations can run side by side on the same server and also allows you to share the load on multiple servers if you have a large number of users.
Note: The Standard version of CRM 3.0 has been discontinued, and user licences will be upgraded to the Professional version in certain circumstances.
The server is a web application running on Internet Information Services (IIS) written in the .NET Framework 2.0 and utilises a single SQL Server 2005 database (or one for each CRM tenancy with the Enterprise version). SQL Server Reporting Services are used for producing reports integrated with the CRM user interface.
Exchange Server is optional, as the local SMTP server can be used for outgoing mail and the email router can be configured either for Exchange or for POP3 email servers or the Outlook Client used to control emails. Workflow is implemented with the Windows Workflow Foundation although this is hidden from the average user. Language packs are available for over 20 languages to localise the application with different users able to access a different language pack on the same CRM installation.
4.3. Hosted CRM
Microsoft is positioning CRM 4.0 directly against Salesforce.com which has 400,000 users in the USA and has pushed the boat out to ensure that Microsoft CRM 4.0 can operate as a fully hosted system supported by a network of hosting resellers. Multi-tenancy allows multiple CRM installations to share the same hardware, reducing the costs for the hosting providers.
All the functionality of CRM 3.0 is now supported within the CRM application so that all customisation can be done by an experienced user or analyst using a web browser. Workflow and simple reports can be created without needing to run any software on the server and the database structure can be altered by a user using the web interface or by a programmer using web services over the internet.
Note: Most hosting providers will probably limit functionality in a similar fashion to CRM Live at least for a standard service (see below).
4.4. CRM Live
A Microsoft hosted version of CRM is available in the USA as part of the CRM Live service and is available in standard and enterprise versions. Both versions allow customisation, workflow, reporting (with the wizard), and programmer access to the CRM web services with a minimum of 5 users.
The main restrictions of CRM Live (probably shared with most standard hosted implementations) include the inability to read the database directly and not being able to add programmed plug-ins to alter the default behaviour of the application (although some hosting resellers might provide these features). Reports can only be created with the report wizard and programmers cannot add their own reports to your CRM installation. The ability to run a separate web site and web services on the same domain is also useful for some situations.
The Enterprise version has more storage space and allows the use of the Laptop Outlook Client for CRM which can synchronise remote data for use when not connected to the internet. Programmers should note that the CRM web services are available within the Laptop client for CRM, raising interesting possibilities for integrating data locally onto a laptop and then synchronising with the CRM Live system.
Microsoft has taken care to make it easy to migrate from a hosted solution to an on premise solution if you eventually decide to purchase the software for use on your own network.
The CRM Live service for CRM is not expected outside the USA until early 2009. Microsoft is encouraging partners to offer on demand hosted CRM services and many will also be bundling hosted Exchange email.
4.5. External Connector
Microsoft has a special licensing requirement for web sites and external applications that integrate with CRM. You do not need an external license if you are using a web site to capture data to add into CRM without showing any existing CRM data to the web site users.
The external connector license is required if customers or agents of the organisation regularly log into the web site and view or update data already entered into CRM. You are not supposed to use the External Connector to allow internal users to connect and update CRM data (unless these users have a valid CRM licence).
Note: Using a read-only licence and importing data manually into CRM via a spreadsheet file could be a workaround with regard to the requirement for an external connector licence.
4.6. Other Software
Microsoft provides additional software:
· CRM Email Router to synchronise incoming and outgoing email with CRM automatically (you can also do this with the Outlook Client). Both Exchange and SMTP/POP3 mail server infrastructures are now supported.
· The SDK documents the web services and allows you to access CRM data from your own application.
· The SDK also allows you to integrate software modules as plug-ins (written in .NET 2.0) directly into the server application.
· The data migration manager allows you to migrate thousands of records into CRM efficiently.
· The integration service (not seen by the author) allows synchronisation of data between applications to be configured.
· Microsoft also offers integration with MS Dynamics accounting packages.
There are some third-party add-ons for Microsoft CRM produced by independent software vendors, some of which are mentioned in the chapter on resources.
Note: The author sells add-ons for CRM to integrate with text messaging and telephone systems and popular accounting packages in the UK. Please see http://www.redware.com/mscrm for more details.
4.7. Security
The CRM client is a web-based application which runs on Internet Explorer only and uses Windows security for user authentication. You can also set up authentication to allow internet users who do not log onto a VPN to access CRM with a user name and password. Emails are sent using the server (SMTP) email agent, so you can access CRM and send emails from any remote machine.
Note: You can set up the security on Internet Explorer to always prompt for a username and password to access CRM so you can log on to CRM with a different identity to the currently logged on Windows user.
4.8. Virtual PC
Virtual PC is an excellent way to evaluate CRM and also develop and test customisations without having to set up a complete development environment. Microsoft ships a Virtual PC version of CRM which can be installed on a machine with 2 GB of RAM and at least 12GB of free disk space.
The Virtual PC installation contains all the software required to carry out development including SQL Server 2005 and Visual Studio 2005. A full copy of Windows Server 2003 runs in a virtual environment on your PC and is also a great way to demonstrate CRM or provide your users with a CRM play area.
Installation is straightforward, but here are some tips to make the best use of Virtual PC:
· Virtual PC has a host key which defaults to the AltGr button found usually at the lower right of your keyboard next to the space bar. Press host+delete for the control+alt+delete necessary to log on to the server.
· Note that the Administrator user has pass@word1 as the user password and the keyboard is in US format, so you will need shift+2 for the @ character.
· Press host+enter to toggle to full screen and back (you may need to redefine the display settings for this to work).
· You may find that the mouse does not travel outside the Virtual PC window to allow selection of the menu options for the Virtual PC session. This is because mouse pointer integration is not on and you need to press the host key so that the mouse can be used to select the menu options.
· Set up the networking on the Virtual PC by clicking on the TCP/IP option in your LAN Network Properties and make sure that you have a compatible IP definition with the host machine. Do not choose the same IP address but make the subnet mask and the default gateway (DNS) IP address the same as the host. You should be able to browse the Internet from the Virtual PC.
· It is possible to move files between the real PC environment and the Virtual PC using drag and drop with Windows Explorer on each machine. If this does not work then you might share a drive on the host machine and access it from the Virtual PC with a DOS command, for example net use z:\192.168.1.100\temp. You will encounter a serious error with the Windows Desktop which can be ignored temporarily while you use a DOS session to copy files as follows – copy z:\*.zip c:\temp\*.zip. Remove the share with the following DOS command: net use z: /delete.
· Use the CD-ROM to copy files if you cannot connect with the virtual network or drag and drop. There is a facility to share folders, and this requires that you install the Virtual Machine Additions from the menu of a running Virtual PC session (however the author has not managed to get this to work properly.)
· Setting up a new user and remembering passwords can be problematic because of the password policy. Change the password policy on the Windows 2003 machine to make things easier. Remember to disable automatic user authentication on the browser so that you can log into CRM with multiple identities.
· Set up a Virtual PC for each site and develop customisations and export the customisations to an XML file which can be installed onto the live CRM installation.
· The undo disks setting allows you to revert to the previously saved session if required.