CRM 2016 – Default CRM mobile app works fully offline and the limitations of previous offline versions

You can only make sense of the online world by going offline and by getting the wisdom and emotional clarity to know how to make the best use of the Internet. Pico Iyer

I was investigating accessing CRM functionaity offline, once you have requirements for CRM data and functionality to work offline, it narrows down your options.  Microsoft Dynamics CRM has some good mobile solutions with offline capabilities, I chose to look at
  • CRM for phones and tablets (awful name Microsoft)
  • Resco

The default CRM 2016 mobile app (called CRM for phone and tablets) has draft functionality, I wasn’t sure how useful it was, Resco on the other hand has full offline capabilities. Would the draft functionality be enough but during my internet search investigation and trying it out,  I came across two articles which said CRM 2016 fall release has full offline capabilities, I get to that at the end.  First let me tell you a story….

Hosk Dev Story

I wanted to learn about the functionality in Microsoft Dynamics CRM mobile app – MACA.  You can read about it’s limitations and functionality but I find it’s hard to understand how the important of limitations until you are trying to do something.

It’s often here you find Deadends, which I have written about before

CRM 2013 – Why wasn’t an updated Custom workflow used by CRM?

Deadends

Learning how the CRM works, helps diagnose future problems and avoid making similar mistakes.  The CRM developer centre is a great resource to help navigate the CRM SDK.

CRM developers benefit from learning the CRM SDK and CRM Developers should always start with the CRM SDK, understanding how it works and its quirks.

The better you understand how CRM works the fewer error/mistakes and dead ends you will make.  Dead ends can waste time because

  • Create a customization
  • find it doesn’t work
  • Remove customization
  • Have to create another customization

CRM is the framework sitting on top of languages JavaScript and .NET,  you need to learn CRM as well the programming languages.  This explains why .NET developers struggle with CRM development

I hadn’t really used CRM mobile app much, I had quickly assessed and compared it to Resco and found Resco has tons of functionality and the Microsoft Mobile app has a long way to catch up but Resco costs money and Microsoft give the mobile app for free.  You can find the pricing for Resco here

Resco pricing

Could I use a form to collect data on a mobile device and based on certain answers show/hide fields.  I remembered back to my CRM 2015 customization and configuration exam (Hosk Tips on passing) learning about business rules and this was exactly what they were made for, to work on the mobile application.

I started a CRM 2016 trial,  created a new custom entity, added some fields.

Created the field as two options – have you used Dynamics CRM

Created 5 two options for the version

If you clicked no – it hid 5 fields with the versions

If you clicked Yes 0 it showed the version fields

  • CRM 4
  • CRM 2011
  • CRM 2013
  • CRM 2015
  • CRM 2016

I don’t count before CRM 4, as you can tell from Rise of Microsoft Dynamics CRM.

I was using Windows 8, so I downloaded the app and was testing it on my laptop (yes trying to be clever and avoid having to download it on my Iphone)

I found they weren’t working in my windows 8 version but do work on iPhone.  morale of the story, don’t use windows 8

Business rules aren’t the only option, I think Javascript works in a limitated way, check out the page Customize CRM for phones and tablets for your customisation options

if you haven’t used CRM for phones and tablets then it’s best to start here

I managed to blunder my way through it but setting up the Mobile (note A CRM Administrator has to enable Mobile offline),  this page walks you through it, if you are using a CRM trial ignore the bit about mobile offline configuration, it won’t work or do anything because the new CRM 2016 full offline capabilities only work with an production or sandbox instances not trails

CRM Offline – Draft mode

when you go offline, most things stop working and it comes to an odd halt and the message pops up on the side saying Offline.

You can create some new entities but no lookups work, I suddenly realized most records have lookups this makes the whole draft functionality not nearly as useful as I imagined.  If you were creating an opportunity, you could fill in opportunity fields not link it to any contacts or accounts, products, even if they already existed.

No one is going to like draft functionality, it’s not really a feature, more of a fudge around.

The good news was business rules worked perfectly in offline mode.  I haven’t used business rules for a while and creating business rules is really easy (in comparison to workflows) and the If and else functionality makes it easy to create rules to show and hide fields.  I remember when you had to create two separate business rules CRM 2013 – Business Rules work in pairs because the condition is AND and not IF.

These are the actions business rules provide

business rule actions

I wanted to compare the draft functionality in the CRM for phones and tablets to Resco’s offline mode.  I created the same functionality using Resco and it worked perfectly and offline.  Every time I use Resco I find the Woodford framework intuitive and easy to use.

I was able to create a form and add business rule type things on there without looking up how to do it.  As a mobile development platform Resco is excellent and Microsoft have quite a way to go to catch them up.

Current Limitations for CRM 2015 and CRM 2016 initial release

  • You cannot set lookup fields.  All lookup fields are disabled in offline mode.  This sounds like a minor problem but it’s a massive headache and something Microsoft need to resolve quickly
  • In offline mode you can only create new records.
  • You cannot edit existing records.  This is extremely annoying.

This page has some limitations

While disconnected, you can only create standalone records or associate records to those that are available for offline access on your device. For example, you can create an opportunity for an account only if that account was created before you went offline, and if it’s available for offline access. You can’t create an opportunity for an account while offline if you also created the account while offline.

Not all entities are available in the mobile client, you can look here to see the list but you will notice

Quotes, invoice, resource and lots of others cannot be enabled.  Custom entities can be enabled.  I assume it’s because some of the forms have been modified by Microsoft so the default behavior isn’t the same or maybe they are not in the new form types.

There is also a list of entities which are not modifiable which you can find here.

The non entities can be a show stopper because if you want quotes or another default entity then you cannot use the Default CRM mobile application.

New CRM for phones and tablets has full offline capabilities

An interesting thing happened whilst searching for information about the draft mode, I found in CRM 2016 full offline capability should be available.  You can’t access it through a trial instance, this is always a bad sign when you are trying to assess how it works, it’s limitations and how you can use it.

It makes it really difficult to demo it because you have to go through your Microsoft contact to get a trial environment.

I read this article saying full offline sync is available for CRM 2016 in the fall release

New Offline experience with Mobile Dynamics CRM App

but it wasn’t working in my trial, I then found this article – Configure mobile offline synchronisation for CRM for phones and tablets

  • At least 5 Professional CRM Online licenses OR
  • At least 1 Enterprise CRM Online license
Note

Keep the following in mind when enabling mobile offline synchronization:

  • You need to make sure the licenses are assigned to a user before you can enable mobile offline synchronization. CRM won’t recognize the licenses if they’re not in use.
  • Mobile offline synchronization isn’t available for Trial, Preview or sandbox CRM organizations.
  • Offline drafts mode (the existing offline experience) will continue to be available for all users if they aren’t using the new offline capabilities.

How does the new CRM 2016 offline capability work

The article Configure mobile offline synchronisation for CRM for phones and tablets mentions Azure and it got me wondering

How did offline capability work with Azure (a cloud based solution).

This article explains it in details – configure Mobile offline synchronisation for CRM for phones and tablets

When you sign up to use Mobile Offline capability it downloads a local database to your phone.  The CRM mobile app will sync the data periodically to an SQL Azure database using Azure cloud services.

I believe the reason you have to enable this functionality is some people might not need it but also there is a privacy notice because Microsoft will store a copy of your data in their SQL Azure database and you need to give permission for that (e.g. enabling).  This sounds like Bing maps which are turned off by default – CRM 2016 – Bing maps not appearing

This is a great improve for the default CRM mobile app, particularly when you think Microsoft give the CRM mobile app for free and now it works offline.

A good run through of the new functionality with pictures here

Useful links for CRM mobile

6 thoughts on “CRM 2016 – Default CRM mobile app works fully offline and the limitations of previous offline versions

  1. Antony Ellis June 8, 2016 / 6:56 pm

    Hi Hosk, great blog really useful btw!! Microsoft have since updated the CRM for Phones application and now you will see Quotes, Orders, Invoices, Products, Social Profiles, Knowledge Base, Queue Items. This blog and indeed the TechNet article both need to be updated I left feedback for MS to update! 🙂

    Like

    • Hosk June 8, 2016 / 6:57 pm

      Awesome thanks for the update

      Liked by 1 person

  2. Rick Kennerson June 16, 2016 / 5:42 pm

    Excellent explanation and implimentation details!

    Like

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.