Before you start, you should have a complete installation of CRM4.0 on a server. In this demonstration, the server is running Server 2003 and SQL 2005. An existing installation of CRM is being used as the test environment.
Introduction
Mobile Express for Microsoft Dynamics CRM 4.0 has finally been released by Microsoft. The intention is to provide a mobile solution for accessing a company CRM from any device regardless of platform. Mobile Express doesn’t just work on Microsoft platforms, but also Apple ones. All you need is a browser and the component to be installed on the server. However, during this investigation of the component, it has become apparent that there are a few more steps in between. In theory, installation of the mobile client should be relatively quick, but there are several configuration considerations.
1) The installation of CRM needs to be IFD (internet facing) which can be a difficult process to achieve especially when you consider that IFD requires the use of SSL and HTTPS to make it entirely secure.
2) The installation of the component automatically installs Update Rollup 5 on the server which cannot be avoided or reversed. Up until now, customers have been advised not to install Rollups unless they address a specific issue that the customer is experiencing. Unfortunately, Microsoft have given no choice in the matter and Update Rollup 5 is a pre-requisit of the installation procedure.
3) I have found no way of removing the component from a server. The component does not appear in the Add/Remove programs or anywhere else. So, this is a one way procedure. Once Mobile Express has been installed on the server, it cannot be reversed. The only option I have found so far is to physically hide the link to the configuration pages in SiteMap. Whilst this doesn’t remove the component, it does at least remove it from view.
With all that in mind, I have been asked to investigate the viability of the Mobile Express component with a view to offering it commercially to customers in the near future. Here is a step by step tutorial on how to install it.
Step By Step
For the purposes of demonstration, I am installing this in a VPC image. The VPC is a standard installation of CRM4 with configuration options that will common to most installations. In other words, I have tried to make the VPC as ‘vanilla’ as possible to avoid conflicts.
1) Download the component from the following URL (http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=f592ec6c-f412-4fd5-9a80-cd3bcbd26d8b#tm)
2) Move the 13mb file you have just downloaded onto the VPC image. It doesn’t matter where you put this, the desktop is fine.
3) Double click the file and run the installation process. Once it has been completed, you will be asked to reboot the server so advanced warning for the customer might be useful.
Walk through the wizard and reboot the server
5) Now the component has been installed, you can customise it. By default, only those fields that are ‘required’ by CRM will be shown in the Mobile Express Client, but generally, you would require many more fields to be shown. Navigate to the ‘Customise Mobile Express’ screen under the ‘Customisation’ menu in CRM.
6) Choose which entities will be visible to users of the Mobile Express client
7) Double click on each entity to view the attributes that will be available to users of the Mobile Express client
8) Notice that only ‘Business Required’ attributes are shown. Add as many more as you like
9) Publish the newly defined selected entities from the main screen
That’s it. You have successfully configured the Mobile Express Client . However, the users wont be able to access the server to view this information without a few additional set up steps. We need to make the installation IFD or Internet Facing. This procedure usually involves the setting up of SSL and server certificates, as well as the configuration of the CRM, but for the purposes of this demonstration, I am going to access the server via WiFi on my mobile device from within the network.
IFD Deployment
Usually, the company who is setting up the CRM knows in advance that the installation needs to be IFD, but sometimes, you need to do this after the fact. In order to manage this, you can download the IFDTool from here (http://support.microsoft.com/kb/948779)
1) Download the zip file from the link above
2) Copy the zip to the VPC (or the server that is r unning CRM)
3) Extract the contents of the zip file to the following destination : drive:\Program Files\Microsoft Dynamics CRM\Tools
4) Double click the CRM4IFDTool.exe
5) Make the ‘Authentication Strategy’ box display IFD+OnPremise
6) Complete the IFD Internal Network Address and Subnet Mask boxes
7) Click the ‘Add Button’
8) Complete the AD and IFD Domain Scheme values
9) Apply changes
10) Finally, ensure that the users who have access to the mobile client have the appropriate ‘Go Mobile’ security privilege.
Accessing the Mobile Express client from your phone
Once the IFD deployment has been completed, you will be able to use your usual internet client on your phone to access the CRM.
1) Open up your browser and enter a URL similar to the one below
http://192.168.100.50:5555/<YourOrganisationName>/m
Note that the above URL uses the IP address of your CRM server and the Organisation Name of the installation, not the Friendly name. For the curious, you can find some of the installation files for this component under the directory called ‘m’ in the CRMWeb site.
2) If you IFD installation is correct, you will be presented with a login screen, complete the details as you would normally
3) If your login was successful, you will see a list of available entities
I have tried this on various browsers and so far I have established that only Safari and IE seem to be sophisticated enough to handle this application. My Iphone has a lightweight browser that I use often and this just isn’t good enough. Another obvious point to note is that if you have any Javascript customisations, these will not be executed by the Mobile Express client.
This can present something of a problem if you have a heavily customised installation where data integrity is governed by Javascript in the OnLoad and OnSave events. Unfortunately, the mobile client doesn’t seem to understand the concept of read-only fields so any field that is read-only in full client, will be open to edits on the mobile client. This could cause issues with data integrity.
Another major draw back of the mobile client is the lack of support for Lookup fields. Most entities have related entity fields and unless you know the exact value that should go into this field, the Mobile Express client will throw an error if you enter a value that it cannot resolve.
The good news is that plugins are executed as normal. In this installation, I have a plugin that assigns the value of a particular field on Create of the Opportunity. The field that is usually read-only and is populated by the plugin is of course, open for editing in the mobile client, but even though I enter some rubbish that could cause a breach of data integrity, the plugin fires when the Opportunity is posted to the server and the spurious value is overridden.
Further things to note should be :
1) Not all entities are available to the Mobile Express client. Although you can add all the entities in the list, only the ones in Bold Black font will actually be viewable on your phone. So, competitors, Addresses, Contract Lines, Discounts, Campaign Activities etc are not available.
2) Likewise, not all related entities are available even to the entities that are included. So, Competitors from Opportunities are not shown. In fact, even though I have added all available entities to the installation, only those shown below are actually available to an Opportunity.
3) You can write notes, they are actually available to the entity as long as you include the Note entity.
4) Views are also available but unfortunately, you only get the first two columns. In the Iphone this is handled slightly better by the interface as you get a jog wheel to choose the drop down
5) Picklists are also handled in a similar fashion
6) You can also view user information but not edit it
Conclusion
After spending a couple of hours with the Mobile Express client, I have to conclude that it is very limited in it’s application. Although the ability to add records to each entity is available, it would be highly inadvisable if data integrity is of any interest to the customer. The opportunity for corrupting or entering spurious information is just too great. The only way to limit access is by using the native security roles of the user, but this presents it’s own problems. You do not have a choice of levels of access based on client, so it is not possible to restrict access from Mobile Express whilst allowing access from OnPremise. The only way to achieve this is to have two security roles for each person or a system where ‘outdoor sales people’ download the accumulated information from the day and people with appropriate security roles upload the information. Both options cause more cost than would be necessary if Microsoft were to add another level of security which identified the client as well as the user.
If we exclude the ability to add new records to the database for reasons of data integrity, then we are left with only the ability to view existing information. While this is undoubtedly useful, there are other more efficient ways to accomplish most of what is required in most cases. For instance, contact information, addresses, phone numbers are far more efficiently handled by Outlook and if the mobile client is synced with Exchange and using Push, then all this information is already to hand for the user rather than having to access it using the mobile client. In a real world situation, it is most likely that the mobile client would be used by Outdoor sales people so the lack of a Google maps integration is disappointing to say the least.
Unfortunately, there is another major limitation. As many users would perhaps be engineers etc, the inability to review service activities is an issue. The user can read them, but not write to them, presumably because of the multiple lookups and complexity of the scheduling engine. Inexplicably, Competitors are omitted from the list of available entities as are additional addresses. Likewise, History views are not available along with accompanying activities so there is no way to see what has been done on a case for instance. Most scarily of all, it is entirely possible to delete accounts from the CRM using the mobile client! The lack of customisation for the grid is terrible. I know that phone screens are very narrow, but the ability to scroll left or right is an absolute must. By limiting the user to only the first 2 columns in the grid, a whole plethora of problems could arise if the data is not rigourously controlled and there are multiple entries with the same information in those two columns.
I hope you’ve enjoyed this walk through.
Recent Comments