Today's blog was written by Argyris Anargyros, Development Principal at Sonoma Partners.
Recently I had the pleasure of upgrading a CRM 2015 On Prem org to 2016 On Prem. The main reason for the upgrade was to take advantage of the latest CRM mobile applications for phone and tablet. Based on what I read and had experienced with implementing CRM Online using mobile apps, I expected this to go pretty smooth. This client was originally on CRM 4.0, upgrade to 2011, then 2015, and now 2016. I was a part of the 2015 upgrade, so some of these challenges were a surprise because I was unaware of all the changes that have happened over the years. Here is a list of all the "fun" stuff we ran into once we upgraded and tried out the phone and tablet apps for iOS and Android.
Let's start off simple and talk about Microsoft's documented limitations for Mobile apps.
"Forms in CRM for tablets are limited to 5 tabs (or 75 fields and 10 lists). This limit includes hidden fields."
What I got tripped up on was the definition of a list. I assumed a list was a view or sub-grid, but that was wrong. The simplest way I defined Lists are screens you can swipe to on your phone. Below is a screenshot of the visual indicator of which the list you are currently on. The underscores in light grey and black show the 10 "lists," or screens, you can swipe to while on an entity. Make sure you watch out for this limitation if your form is on the large side. You may run out of space and sections of your form may not appear as expected. For this project, we were able to trim down the needed sections. This was missed, though, until we went to UAT and someone tried to get to a section that was not available on Mobile.
Where are my connections?
According to the documentation on MSDN, connection were not available for 2013, but for 2016 the disclaimer provided by Microsoft was removed.
This note was provided in the 2013 version of the "Entities displayed in CRM for tablets" section of this article, but not in the 2015 or 2016 version. This note is still valid for 2016.
Error - This view is unavailable.
While swiping around the app, we would occasionally see this message: "Error - This view is unavailable." I attempted to use the mobile app logging to help identify which view or which entity was causing the issue, but nothing there. I ended up identifying the next screen which was the activities entity. After reviewing all the available views, some of the system views were disabled as a part of a previous deployment. It looks like the mobile apps are looking for specific views to be available. Once we activated the "All Open Activities" and "My Activities" views, the errors disappeared.
Default Sales Dashboard
The mobile app home screen is defaulted to the default Sales Dashboard. If you want to change this default for the browser, all you have to do is make a small change to the site map and set default dashboard for each area, Sales, Marketing, etc. Mobile ignores this and uses one specific OOB sales dashboard. To get around this, we recreated the default sales dashboard as a new dashboard and then edited the OOB sales dashboard to include the data we wanted to see. This way the mobile and web applications showed the same dashboard and the users still have the option to switch to the native dashboard.
White Relationship Tiles
This was a fun one. While on an entity we would see blank tile spaces intermixed with the tiles for related entities. When you tap on those spaces they would take you to a related entity. I ended up finding this helpful article on CRM Tip of the Day which resolved this issue for most entities, but we ended up with a few that this did not work. Luckily we did not need those related entities as related entities, so we removed them from the navigation.
Order of Operation
Fields Need To Be On The Form
While taking a look at Opportunities, we started to see this error.
We did not find any of our code that referenced this field, so assuming the mobile app needs this field, we added it as a hidden field on the form and the error went away. We also saw this for the stage field and the same solution worked. Both of these fields are not in use for this implementation, so adding them was not needed for the browser.
Related Lookup Filter
I hope this list helps you resolve some of your challenges with the Native CRM Mobile app. The most helpful tip I can provide (taken again from the CRM Tip of the Day) is to make sure you start looking at mobile as early as possible and for developers, use your browser to test/debug mobile issues.