Woodford Guide

Resco Mobile CRM Woodford Guide

Document version 10.2.0.1

1. Introduction

2. Before we start the customization

   2.1 Prerequisites

   2.2 Download or Install?

      2.2.1 Download and Import of the solution file (Dyn CRM)

      2.2.2 Updating Woodford Imported Solution (Dyn CRM)

      2.2.3 Uninstallation of the Integrated Woodford (Dyn CRM)

      2.2.4 Installation of the Standalone Woodford (Dyn CRM)

      2.2.5 Updating the Woodford Standalone Application

      2.2.6 Uninstalling the stand-alone Woodford application

   2.3 First run

      2.3.1 Sign in troubleshooting

   2.4 Introduction

3. Administration

   3.1 Mobile Projects

      3.1.1 Project hierarchy

      3.1.2 Restore

      3.1.3 Recover

   3.2 Security

     3.2.1 Security Policy

     3.2.2 Default Security Policy

   3.3 Mobile Users

   3.4 Localizations

   3.5 Geocoding

      3.5.1 Geocoder

      3.5.2 Toolbar

      3.5.3 Usage

   3.6 Plugins (Dyn CRM)

      3.6.1 N:N Relationships (Dyn CRM)

      3.6.2 Delete (Dyn CRM)

      3.6.3 Owner

   3.7 Maintenance

   3.8 Mobile Reports

   3.9 Profile

   3.10 Settings

   3.11 Logs

   3.12 About

   3.13 Resco CRM Sync (Dyn CRM)

4. Creating a customization

   4.1 Creating a new project

      4.1.1 Publishing a project

   4.2 Entity

      4.2.1 Fields

      4.2.2 Best practice when updating, adding metadata (fields, entities) on CRM server

      4.2.3 Best practice when disabling field in project

      4.2.4 Removing field/option from CRM server

   4.3 Setting up a Sync Filter

      4.3.1 Linked sync filters (Dyn CRM)

   4.4 Views

      4.4.1 Creating a Public view

      4.4.2 Binding

      4.4.3 View Style Editor

      4.4.4 Additional View Configuration

         4.4.4.1 Buttons

         4.4.4.2 Edit filter

         4.4.4.3 Edit Sort

         4.4.4.4 Edit Search

         4.4.4.5 MultiSelect

         4.4.4.6 Add Image, Add Map Pin

         4.4.4.7 Sort Fields and Filter Fields

         4.4.4.8 Date Fields

      4.4.5 Multiple Views

      4.4.6 Advanced View Features

         4.4.6.1 Row Scripts

            4.4.6.1.1 Changing style on View dynamically

         4.4.6.2 Best practice in renaming a view

         4.4.6.3 Editable field (Editable list)

         4.4.6.4 Clickable field

         4.4.6.5 iFrame

         4.4.6.6 Search View

         4.4.6.7 Responsive View/List

         4.4.6.8 Automatic List/View headers

         4.4.6.9 List/View Footer

         4.4.6.10 Set view items into grid/columns (display more records in one row)

   4.5 Form creation

      4.5.1 Contact Information Form

      4.5.2 Edit form

         4.5.2.1 Advanced filtering

         4.5.2.2 Form item options

      4.5.3 Form Style Editor

      4.5.4 Additional Form objects

         4.5.4.1 Iframe

         4.5.4.2 Map Frame

         Prerequisites for the Map, GPS and Geocoding, as well as Update GPS option on custom entity’s form

         4.5.4.3 Media tab

         4.5.4.4 Form Rules – On Load, On Change, On Save

            4.5.4.4.1 Form Rules Examples – How to make a field required

            4.5.4.4.2 Form Rules Examples – How to dynamically show/hide sections on the edit form

            4.5.4.4.3 Form Rules Examples – How to set a placeholder text on edit form fields

            4.5.4.4.4 Form Rules Examples – How to show information from parent record on child edit form

         4.5.4.5 Edit Commands

            4.5.4.5.1 Default commands have the following functionality

            4.5.4.5.2 The Business card scanning feature

         4.5.4.6 Custom Commands

            4.5.4.6.1 On Can Execute Examples (Disabling Update GPS command, dynamically disabling Delete command, and disabling Signature on Note attachment form)

            4.5.4.6.2 Can Execute Example

         4.5.4.7 Additional options for associated lists

         4.5.4.8 Placeholder text

            Localization approach

            Edit form Rules approach

   4.6 New UI

      4.6.1 Hubs

         4.6.1.1 How to create a hub

         4.6.1.2 Drill down

      4.6.2 Flexible forms

   4.7 Dashboard

      4.7.1 Charts

      4.7.2 Creating Dashboard

   4.8 Managing entities available on the Mobile CRM application’s Home screen

      4.8.1 Home Item’s properties

      4.8.2 Home Groups

   4.9 Social

      4.9.1 Chat

      4.9.2 Activity Feeds (Dyn CRM)

         4.9.2.1 Prerequisites

         4.9.2.2 Setting up Activity Feeds using Woodford

   4.10 Branding

   4.11Auditing

      4.11.1 Auditing on the Server Side (Dyn CRM)

         4.11.1.1 Entering Google Maps API key

         4.11.1.2 Adding Mobile Audit records on the server form

         4.11.1.3 Adding Mobile Audit map on the server form

      4.11.2 Auditing in Mobile CRM application

   4.12 Images

      4.12.1 Changing a standard image

      4.12.2 Adding a custom image

         Colorize

      4.12.3 Bulk change/import of custom images – Advanced

   4.13 Configuration

      4.13.1 Configuration examples

      4.13.2 Duplicate detection

   4.14 Global Maps

   4.15 Calendar

      4.15.1 Views

      4.15.2 Offline Maps

      4.15.3 Constraints

      4.15.4 Rules

   4.16 Events & Reminders

      4.16.1 CRM events in the personal (device’s native) Calendar:

         4.16.1.1 Filters

      4.16.2 Personal events in the Mobile CRM Calendar:

   4.17 Color Themes

   4.18 Documents (External Document/File Integration) on DropBox, Google Drive and SharePoint

      4.18.1 SharePoint Integration sever side prerequisites (Dyn CRM)

      4.18.2 SharePoint Integration

      4.18.3 External Document Sync filter options

   4.19 Business Process Flow (CRM 2013 and later)

   4.20 Favorites

   4.21 PIM Integration

      4.21.1 Google integration (Gmail, Calendar)

      4.21.2 Exchange integration (Email, Calendar, Contact)

      4.21.3 Sending Invitations

   4.22 Route Planning

      4.22.1 Route Planning Events

   4.23 Tutorial in Mobile CRM app’s About

   4.24 Inspections & configuration in Dynamics

5. Advanced Topic

   5.1 Filtered Lookup

   5.2 Barcode scanner functionality

   5.3 Examples of advanced options

      5.3.1 List and Form Images

         5.3.1.1 Available for all CRM backends

            5.3.1.1.1 List/View picture from Note

            5.3.1.1.2 Default and Editable List/View Images

            5.3.1.1.3 Edit Form picture from Note

         5.3.1.2 Available only for CRM 2013 and later

            5.3.1.2.1 Entity image on View

            5.3.1.2.2 Entity image on Contact Information Form

            5.3.1.2.3 Entity Image on Edit form

      5.3.2 Custom Map Pins

   5.4 Mobile Apps

      5.4.1 External (Portal) User project

      5.4.2 Appointments on Global Map (Appointment entity does not have GPS fields)

      5.4.3 E-mail attachments

      5.4.4 Form items icon and name changes

         5.4.4.1 Icon changes

         5.4.4.2 Localization of the tab name

   5.5 Planner Controller and Field Service

6. Communication with external application

   6.1 Mobile CRM app URL Schema example

7 Offline HTML with JavaScript

 

1. Introduction

Resco Mobile CRM Woodford Guide explains how to customize the Resco Mobile CRM application and deploy the customizations to the mobile device.

The Guide will also show all possibilities that Woodford provides, including maintaining the mobile user’s licenses and how to administrate the security policies.

Second section will show the possibilities in terms of installation of Woodford and the difference between standalone and imported solution.

Third section describes the administration possibilities. How project administration works, maintaining the security policies, license administration and other Woodford’s possibilities.

Fourth section shows how to create a project and what the customizations available for using Woodford are.

Fifth section shows some examples of advanced functionalities and answers for some frequently asked questions.

Sixth and Seventh sections describe and show how to work with offline HTML files and how to implement Java Script to these HTML files.

2. Before we start the customization

 

2.1 Prerequisites

Note: If the minimum Resco Mobile CRM version that’s required for customization is not used, user will get an error with Unsupported Metadata

  • User that is logging in to CRM using Woodford needs to have system administrator rights

 

2.2 Download or Install?

Download or Install 2.2_1

By clicking the link (http://www.resco.net/mobilecrm/woodford.html) user has two options: Download or Install Resco Mobile CRM Woodford.

Note:

Woodford integration by importing the managed solution file is not available for Dynamics CRM 4. Imported solution or standalone Woodford application is available for CRM 2011 and later.

 

 

2.2.1 Download and Import of the solution file (Dyn CRM)

The download option will download the Woodford solution file, which can be imported to your CRM organization, and user will be able to run Woodford directly from CRM Settings section. In some cases this option helps overcome some authentication problems that may be encountered when using Standalone version.

Download and import of the solution file 2.2.1_1

After the download of the solution file, user needs to go to your CRM server Settings>Solutions and hit the Import button.

Download and import of the solution file 2.2.1_2

Then user needs to choose the downloaded Woodford solution file to be imported and then just follow the instructions.Download and Import of the solution file 2.2.1_3

Do not forget to publish all customizations.

Download and Import of the solution file 2.2.1_4

Woodford is then available from the CRM Settings, under MobileCRM section

Download and Import of the solution file 2.2.1_5

 

 

2.2.2 Updating Woodford Imported Solution (Dyn CRM)

If new version is available, user shall get a prompt about updating Woodford. Choosing Update when using imported solution does not work.

In case of wanting to update the existing Woodford solution, the same steps as above need to be performed, downloading the latest version of the imported solution file, and when prompted to choose the Maintain customizations or Overwrite customizations, during the import, choosing the Maintain customizations option.

Updating Woodford Imported Solution 2.2.2_1

After the update of the solution file, all customizations need to be published on the CRM server and after that user just needs to reload the CRM website in browser.

!Disclaimer: We highly recommend to create a backup of your projects before each upgrade of the Woodford (both Standalone and Integrated)

 

 

2.2.3 Uninstallation of the Integrated Woodford (Dyn CRM)

In Dynamics CRM 2011 and later, only the Woodford solution file needs to be removed.

! Disclaimer: All projects and records in resco_ entities will be removed. Make backup using the export functionality. In order to uninstall the Woodford application or solution file, each entity enabled in Plugins (N:N Relations, Delete, Owner) has to be deactivated in the plugin before removing the solution.

 

 

2.2.4 Installation of the Standalone Woodford (Dyn CRM)

Woodford as a standalone application can be used with any CRM server (Resco Cloud, Dynamics CRM, Salesforce…)

Note: Choose the Install option if you are running Microsoft Dynamics CRM 4.0 or if do not wish to integrate Woodford with your Dynamics CRM 2011 or later.

Installation of the Standalone Woodford 2.2.4_1

 

 

2.2.5 Updating Woodford Standalone Application

When a new version is available, user will be prompted to update Woodford. They can choose Update, wait until Woodford is updated, and start it again. Or they can update it later from Woodford’s About section.

!Disclaimer: We highly recommend to create a backup of your projects before each upgrade of the Woodford (both, Standalone and Integrated)

 

 

2.2.6 Uninstalling the stand-alone Woodford application

User needs to right-click on Woodford application window and select „Remove this application…“.

Note: In Dynamics CRM 4, after uninstalling the Woodford application, manually remove all the entities, which start with resco_.

! Disclaimer: When removing the solution, all projects will be removed. Make backup using the export functionality. In order to uninstall the Woodford application or solution file, each entity enabled in Plugins (N:N Relations, Delete, Owner) has to be deactivated in the plugin.

 

2.3 First run

When the Woodford is launched, a registration dialog pops up. In order to use the tool, the registration details need to be filled in. Then the login dialog is shown.

In the login dialog, fill in all fields in order to connect to your CRM server and then click OK button. Username for Active Directory and IFD needs to be in the format DOMAIN\USERNAME if required.  During the first run, required entities are created on the server, so user with system administrator security role is required to log in. It is recommended that system administrator handles all the administration and customizations using Woodford.

First run 2.3_1

 

 

2.3.1 Sign in troubleshooting (Dyn CRM)

Any middle component requiring authentication to pass through is not supported for Stand-alone application. This scenario is not present in case of the Woodford integration, as the authentication is covered by Internet Explorer, so any middle component requiring authentication is supported. Also in case of an invalid SSL, the login will fail, due to the Silverlight restrictions.

In case the Refresh Metadata fails, increase the ReceiveTimout registry key.

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]. ReceiveTimeout DWORD  =  3600000 milliseconds (1hour).

 

2.4 Introduction

After the successful login, the main screen of the app shows up:

  1. Administration Menu: Mobile Projects, Security, Mobile Users, Localizations, Geocoding (New), Plugins, Settings, Logs and About
  2. Main Menu or a Toolbar with basic options, that depends on the selected item from the Administration Menu
  3. Displayed data and options according to the selected item from the Administration Menu

Introduction 2.4_1

Note: While the Woodford is in the evaluation period, Mobile Users menu is not available, as the number of mobile users during the trial period is not limited.

 

3. Administration

When user runs the Resco Mobile CRM Woodford, they can use the Administration menu to access Mobile Projects management, Mobile Devices management, Mobile Users management, Settings, Logs and About

 

3.1 Mobile Projects

In the main menu, user can manage the selected project, or create new one using the New button.

Note: Mobile projects are stored as Note attachments to resco_mobileproject’s records. (Dyn CRM)

Warning: When you do a bulk delete of your Notes, please note you might also delete your mobile projects. To avoid this, please exclude Note attachments to resco_mobileproject’s records from the bulk deletion.

Using Edit button will open the project and user can adjust it (double click on the project can be also used to perform the same operation).

By clicking the Properties button user can adjust the project’s properties Name, Role and Priority.

Button Show Users opens up a window with a list of users, which will receive the customization, i.e. users, with security role, assigned to the project.

The Delete button removes the selected Mobile Project.

Deactivate will deactivate the selected project. Deactivated project will not be used to customize the Mobile CRM application, but the project will not be deleted.

Activate button will activate the deactivated project

Import will import the previously exported project.

Export will export the project to your PC. It can be used to backup your projects.

Clone will duplicate the same Mobile Project and will prompt for the Name, Role and Priority. User can use the Clone button for e.g. duplicating the same project for other user role, or to make changes to the currently used Mobile Project without risk.

Derive will create a child project from the selected one. Please check the following section for more information.

Restore will restore the last published version of a selected project. It can be used in case the project is deleted from the Note attachments, when something like the Warning above indicates happens.

Clicking on the Check User button will be prompt for user name and the application will show you all the Mobile Projects where the user is involved, including the project’s priority, so we can  see which Mobile Project will be used ( in screenshot – the project on top will be the one used).

Mobile Projects 3.1_1

If the project has a grey icon with exclamation mark, it means the project is dirty, i.e. there has been a change in the project, but it was not published after making these changes.

Mobile Projects 3.1_2

Note: Since a project itself is a file and Woodford is running locally on a device, it is not possible to directly work on the same project using more than one person at a time. If they are, the last to save changes will overwrite changes made by the other person.

It is possible when using project hierarchy (in the next chapter) to have a master project, and then have a multiple levels of child projects, while each person will work on different child project, on different part of the project. And the lowest child project level will inherit all changes from the above project levels.

 

 

3.1.1 Project hierarchy

User can also set parent/child relation to projects. Child project will inherit all changes to parent project except of the parts changed in the child project directly.

Hint: For some more information about Project Hierarchy please check this section of one of our webinars https://youtu.be/2dM7TSdNGqU?t=1m59s

To see information about the child project’s parts, whether it is inherited or changed in the child project, please check this additional webinar part https://youtu.be/iLZ43KxGEW0?t=37m10s

 

 

3.1.2 Restore

In case user accidentally deletes Resco Mobile Projects note (or its attachment), which leads to losing the project entirely, and there is no backup, they can use the Restore button, that will create the project’s note and attachment from the last published version of the project. So only changes made after publishing will be lost, and user does not have to build the project from scratch.

 

 

3.1.3 Recover

In case users, e.g. accidentally destroy their CRM organization, and recover it without Resco entities, it is possible to recover the project from data, synced on the device. In case such situation happens, please contact us on mobilecrm@resco.net for further steps, from which the last is using the Recover button.

 

3.2 Security

Security shows the list of devices that are synchronized with your CRM and additional information about the State (Ok, Locked, and Wiped), Device ID, Device OS, and Version of the Mobile CRM installed on the device, Lock, Wipe and Force Full Sync checkboxes, User name that was used for the last synchronization and the date of the last synchronization.

If the Lock checkbox is enabled, the device will be locked and the application will not be usable.

If the Wipe checkbox is enabled, the device is wiped out, the local database on the device, the server URL and user credentials are erased.

If the Force Full Sync checkbox is enabled, at the next device’s synchronization the full sync will be performed. After a full synchronization, this checkbox will be disabled automatically. It means, that user changes will be uploaded, local Mobile CRM app database will be deleted and initial, full synchronization will be performed. If there are unsynchronized changes, Sync Errors, e.g. synchronization conflicts, waiting for resolving, the Force Full Sync will not be performed until these conflicts are resolved.

Hint: If there is a security role permission change on user’s security role, this change is only applied at full synchronization. The easiest way to get these changes applied, is to use the Force Full Sync for all device, that users; with updated security role are using.

Note: In case of Android and iOS platforms, for the Lock and Wipe the push notifications are used and the device is Locked or Wiped out immediately (or after application start) if there is an internet connection available on the device. Other platforms require performing synchronization, or changing the Security policy.

If the Force Full Sync checkbox is ticked, at the next device’s synchronization a full synchronization is performed, so the latest data from the database are downloaded. This is required at some changes in project, or e.g. changes in user/security role permissions.

Security 3.2_1

When a device is deleted with the Delete button on the toolbar, at the next device’s synchronization with the server the device is assigned to Default policy.

When a Security Policy is deleted, user needs to assign devices to a different policy. Security Policy cannot be deleted if there are devices assigned to it.

Export button exports the list of devices to a csv file.

Tip: For more security related information (sum up) and examples on how it works in real life, please check the Security webinar https://www.youtube.com/watch?v=MuEVr6Qg7ns&t=2s&index=16&list=PLPMCnAPD5b56XNEiGTcy5VBxdP8rcB86b

 

 

3.2.1 Security Policy

Security Policy is a set of properties that are applied to all devices for which the policy is set.

Security Policy 3.2.1_1

The Security Policy properties are in groups.

Application Session

Require Login after X minutes of inactivity – After defined time in minutes the Mobile CRM application asks for the password to continue using it.

Check Security Policy

At Application Login – Mobile CRM application checks whether there is a change in the security policy at the application login. The login is performed either at the start of the application or if user enters a password to log in to the application.

Every X Hours – The Security Policy is checked periodically after defined time in hours.

Note: If none of these options are used, the policy is downloaded only at synchronization

Lock Application

Lock Application – If this option is enabled, all devices under this policy will be locked and the application cannot be used unless the device has a different policy assigned.

If no server contact after X hours – The application is locked if the application did not connect to the CRM server either in matter of checking the policy or synchronization, or online mode access. Application can be unlocked by entering the correct password. In this case also the internet connection is required.

During non-business hours – Application is locked if the time is outside the given interval.

Invalid password X times – If a wrong password is entered defined times to the login, the Mobile CRM application locks up (Admin lock) and can be unlocked in the Woodford’s Security list of devices. The locked device will have a Lock checkbox enabled and needs to be unchecked.

Wipe Application

Wipe Application – If this option is enabled, all devices under this policy are wiped, even if user tries to synchronize the Mobile CRM with the server.

If no server contact after X hours – The device’s local Mobile CRM database is wiped out if the application does not contact server after defined number of hours.

Invalid password X times – The device’s local Mobile CRM database is wiped out after entering a wrong password defined number of times.

Devices can be assigned to the Security Policy when the device is selected and the Edit button on the toolbar is selected (or double-click on the device). To change the Security Policy, select the Policy that should be used from the options. Please note, that a new Security Policy needs to be created in order to assign it to a device.

Security Policy 3.2.1_2

 

 

3.2.2 Default Security Policy

When a new device is set to synchronize with user’s server, it is automatically listed under policy Default. User can edit this policy by selecting the Default row and clicking on Edit button on the toolbar. By editing this policy, user defines how all devices shall handle Security until being moved under a custom created Security Policy.

 

 

3.3 Mobile Users

This section enables user to manage User licenses. When a user logs in the CRM server from a mobile device, they might receive the Woodford customization depending on the Auto assign licenses option in Settings. They can receive the state Enabled or Pending. Users can be added before they attempt to log in by using the Add button. User can also Enable the disabled or pending user, Disable the Enabled or pending user or Delete a user.

Mobile Users 3.3_1

Enabled: Users with this License State Enabled are able to synchronize, access CRM using Resco Mobile CRM application.

Disabled: Users with this License State Disabled, user cannot synchronize (receives error “LICENSE: NOT FOUND”.

Pending: User gets into pending state, when the Auto Assign licenses functionality in Woodford’s Setup is disabled, so licenses are assigned only manually. In this case, when a user synchronizes the Mobile CRM app for the first time (or previously used it, but was deleted from the Mobile Users), they get a temporary license, valid for two weeks. During this time administrator can decide whether to assign this user a license, or not. After two weeks, when the temporary license expires, user receives error “LICENSE: EXPIRED” and is no longer able to synchronize.

If user wants to manage licenses manually and decides in advance who can synchronize using mobile CRM app and who cannot, they need to grant licenses, and disable users in advance.

Note: The Mobile Users section is not available during the trial period. During this period the customizations can be used for as many users as desired.

 

3.4 Localizations

This option gives user an ability to add a language mutation of the Mobile CRM application – this means that user is able to change various display names in the app, change name of entities, tabs in forms and other UI elements. To add a localization on the Organization level, go to Localization section in the Administration section of Woodford. Click on the New Button on the toolbar. From the opened window select the target Language and the Template language that will be used as a source.

Localizations 3.4_1

Now open the created language from the list of Languages. In the first column, there is the field’s ID name, in the second one (Organization) there are the fields that are, or need to be translated.

Localizations 3.4_2

In the English column there is the original English text for review. It can be turned off by unchecking the Show English checkbox in the top right part of the screen.

Localizations 3.4_3

After selecting All in the left part of the screen, user can see all the field strings available. When user clicks on Entities, they can see all the field strings related to Entities. They can also scroll down the entity list and view field strings per entities.

Clicking on Standard App UI shows the fields that are used in the Mobile CRM application UI. User can also scroll down the list of controls and view strings per controls.

By using the Add button in the Toolbar, user can add a new string. Using the Import/Export button can Import/Export the localization file and enables the use of it for/from another server or Organization.

When the localization on the Organization level is done, by opening the project where user wants to add the localization, then they need to click on Localizations and the list of available languages is displayed. Here user can disable or enable or delete the selected localizations via the Activate, Deactivate and Delete toolbar buttons.

Localization 3.4_4

The state (font) of the localization string meaning:

Normal – localized expression is taken from the server

Bold – expression from the template is used to overwrite the original text

Italic – expression that is not available on the server neither on the template thus the English (default) version from the server is used

Italic Bold – new text – not in template, nor on server

3.4.1 Localization Examples

 

 

3.4.1.1 Re-naming and custom icons on Home Items and Views

Please check this Blog post to check examples of the localization. It contains examples for creating custom icons and re-naming Home items and changing view names. More to come in this and the next series of Blog posts

Keywords (language, localization, setup, configuration, Woodford, app)

https://blog.resco.net/2016/06/01/how-to-utilize-language-localization-in-resco-mobile-crm/

 

 

3.4.1.2 Making a Lookup Field from Text Field

In some cases, users need to enter the same text to a field over and over. To help them, you can use Localization to predefine some mostly used options, so that the text field will perform as a combination of a lookup field and text field. So user can choose from the most frequent options and also have the opportunity to enter a different entry instead.

To see how it works and how to set it up, please check the following webinar section

https://youtu.be/9vL4QRN_1dk?t=34m2s

 

 

3.4.1.3 Sync Errors Localization

It is possible to localize some specific synchronization errors, so that users will understand them better, or to show the error in language, that they used. For more information please check the following webinar section.

https://youtu.be/9vL4QRN_1dk?t=40m16s

 

3.5 Geocoding

Geocoding section in Woodford contains tools for geocoding user records according to the addresses – this means that the address information of the records can be translated into raw GPS data, which the mobile application needs to display records properly on the Map.

Geocoding 3.5_1

Prerequisites for Geocoding – to geocode the records a Bing Map Key needs to be obtained– (if the company will be using the obtained GPS data only internally, then the plain developer key should be enough) . More information about Bing Map Key can be found here: (http://msdn.microsoft.com/en-us/library/ff428642.aspx)

Prerequisites for GPS fields

 

 

3.5.1 Geocoder

Select Entity : Selects the entity from which user wants to fetch the records for geocoding

City, State, Postal code, Country – select the fields which fall under their respective categories (i.e. choose Address1_city as City, Address1_zip as Postal code, etc.)

Set additional street fields – after checking this option user will be given the opportunity to select other street fields if they have more. They can also set their order by adjusting the {1} {0} {2} string parameter (e.g. {2} {1} {0})

Latitude,Longitude –longitude and latitude fields in which user shall keep the GPS data

Find position by query – when this is checked, Bing uses a different kind of search that is suitable when user records are frequently missing fields like City, Zip, etc.

Filter By: user can define which records from the previously selected entity will be fetched by choosing a view from the entity –records will be chosen by the view’s filter

 

 

3.5.2 Toolbar

Fetch data button : after clicking on this button the records will be visualized in a grid in the right part of the geocoding screen. The grid then also gives user the ability to change the information in the fields if (to make corrections to addresses, etc.)

Find position button : starts the geocoding process (records need to be selected)

Find address button :  finds/updates address if only the GPS data is available for the record

 

 

3.5.3 Usage

After user has fetched the data they can be filtered in 5 categories

Usage 3.5.3_1

All – shows all records

New –records which received the GPS coordinates after geocoding (after the Find position button was activated) and didn’t have any prior GPS information (green font color)

Changed –records that had their GPS coordinates updated – they had GPS information prior geocoding (blue font color)

Failed – records which have failed to geocode (red font color)

Empty Lat/Lon – records which have no GPS data prior geocoding (red font color).

By clicking on the „i“ button user can open a detail view on the record

Usage 3.5.3_2

Results – results which Bing map provided

Search – manual search according to user’s own criteria

Update / Location checkbox – will update the GPS data after clicking on the Confirm button

Update / Address checkbox – will update the address

Note – the map pin can be moved manually by dragging it across the map to enhance the accuracy of the GPS coordinates

 

3.6 Plugins (Dyn CRM)

Plugins provide functionality, for which user needs to configure some additional settings. Enabling will allow the tracking of certain operations like delete, N:N relationship disassociation and record owner change on the server. Without enabling of the tracking, the changes will not be propagated to the clients. Only changes made after the tracking was enabled, will be propagated to the mobile clients. Entries deleted before enabling the tracking will not be propagated on the mobile clients.

After enabling of the Delete plugin there is need to perform full synchronization on each device, to get the latest data without the previously deleted ones. To perform a full synchronization on a device, user needs to go to Mobile CRM app’s Setup -> Delete Data and synchronize the client to perform it. Or they can use the Woodford’s Security section to Force Full Sync Mobile CRM app at next synchronization on selected device (section 3.2 of this manual).

Plugins 3.6_1

Note: Plugins are available only for Microsoft Dynamics CRM 2011 and later

 

 

3.6.1 N:N Relationships (Dyn CRM)

The N:N relationship will disassociate the relationship between entities. First user has to check the relations of the entities that they want to be able to customize. In this case we will enable the Competitor  <=> Product N:N Relationship

N:N Relationships 3.6.1_1

Then user needs to open the desired project and enable the Competitor->Product relation as they will enable an Entity. Of course both entities have to be enabled as well.N:N Relationships 3.6.1_2

Then the Product list can be added to the Competitor’s edit form. And the Competitor list to the Product’s entity. After that the competitors can be added to the products on the Competitor’s tab.

N:N Relationships 3.6.1_3

 

 

3.6.2 Delete (Dyn CRM)

The changes made on the server will be tracked after enabling the delete functionality. When user checks an entity in this plugin, when an item from the entity will be deleted on the server, the change will also be applied on the device, thus the item will be deleted from the local database on the device on the next sync.

Delete 3.6.2_1

 

 

3.6.3 Owner (Dyn CRM)

Enabling of the tracking on the entity will enable changing the item’s owner on the client according to the server change.

Owner 3.6.3_1

For things to work properly user might also need to enable the User entity as in the screenshot below.

Owner 3.6.3_2

 

3.7 Maintenance

In Maintenance a user can define rules to clean up records created by Mobile Audit and Mobile Tracking (Plugins). It is because when these features are used extensively, it can fill CRM server with loads of records. Since these records may not be needed after a period of time, user can set rules, when these records can be automatically deleted from CRM.

 

3.8 Mobile Reports

In Mobile reports section, user can create reports, that can be accessed by user in Mobile CRM app and these reports are running directly in Mobile CRM app, and can be running in full offline mode (without access to CRM server), as it uses Mobile CRM data in offline mode. In online mode, it of course uses direct CRM server’s data.

Mobile Reports can be set to run on any CRM entity, for single record, or for group of records (using MultiSelect on View).

Details about how to create a Mobile report, and what is possible, can be found in following Blog article.

Keywords (report, run, print, mobile, app, Woodford, setup, configuration, pdf, doc, xls)

https://blog.resco.net/2017/02/22/anatomy-of-a-mobile-report-how-to-set-it-up-in-resco-mobile-crm/

For more information about Mobile Reports (and to see them in action), please check these webinar sections

https://youtu.be/REgaV6ymYWM?t=2m15s

https://youtu.be/9vL4QRN_1dk?t=27m23s

To add a signature element within a report document (which can be utilized to add a digital signature), to store a special fetch table variable to perform further report-related actions;

To enable to aggregate the fetch results in a mobile report and show, for example, the value of orders created over the past month; please check the following webinar

https://youtu.be/B5mMIqJYy-Y?t=39m40s

 

3.9 Profile

When user connects Woodford to their CRM environment for the first time, they are asked to fill in the profile information. This information helps us to identify the user when they need our help. In case of a mistake at entering the information, or needing to change anything, user can do so in this section.

Profile 3.9_1

 

3.10 Settings

When the option Auto assign licenses is checked, each user that will log into the CRM using a mobile device, will be granted a license to use the Woodford customization. If user disables this option, they will have to go to the Mobile Users administration and manually change the state from Pending to Enabled. Until that time the user will not be able to use the Woodford customization. You can also see the amount of available/total licenses.

After checking the Send licenses assignment, user receives license assignment notification to the email, that they specified in Profile, and they can add additional email addresses which will also receive notification about assigned licenses.

Settings 3.10_1

 

3.11 Logs

In case of an encounter with an error with the Resco Mobile CRM Woodford, there is an option to check it, or send us the error log. This will help us locate the problem and fix it, or help you solve it.

Logs 3.11_1

 

3.12 About

In the About section user can use the Update button when the update is available. User can also check the version and our contact information here. This only takes into account if user uses the standalone Woodford application. In case they use the integrated version, they need to download a new solution file and import it.

About screen also contains the Unique ID and Unique Name (Organization Name) that are needed if the user will be communicating with us about mobile user licenses.

!Disclaimer: We highly recommend to create a backup of your projects before each upgrade of the Woodford (both, Standalone and Integrated)

About 3.12_1

 

3.13 Resco CRM Sync (Dyn CRM)

The Resco CRM Sync is a mechanism, that allows user to create a “copy” of Dynamics CRM organization, that they are connected to by using Woodford, on our Resco CRM server. Usage can be various, from using it for your sales or technician forces, with Mobile CRM app, instead of having them to connect to Dynamics CRM server, or for migration to Resco CRM server.

More information, including setup can be found in this document https://www.resco.net/resco-crm-sync/

Note: This feature should only be used when you want to synchronize Dynamics CRM organization with a newly created Resco CRM organization. It is not needed for Woodford itself.

 

4. Creating a customization

Creating a customization or mobile project is the core task for Woodford. By customizing the mobile project, user defines how the Resco Mobile CRM application appears to user and what features it provides.

 

4.1 Creating a new project

User shall create a new Standard User project, where they will customize the Resco Mobile CRM mobile application by adding an entity, creating views, forms, charts and creating filters to get only the data they need and sort them.

First user needs to click New (in the Main Menu) to add a new project. They can name the project (e.g. SalesApp), pick up one or more roles for which the project will be used (Salesperson in our case) and they also have the option to assign the project a priority. Priority is useful if one user has more roles, to which exists a mobile project.

For example, let’s assume you have Sales Person and Sales Manager security roles with different permissions. Because Sales Manager needs to have access to Sales Person data, they have both roles assigned. So if you will create a project for Sales Person and Sales Manager, both with priority 0, Sales Person will get the correct project (as each sales guy has only one role assigned), but for manager, it is not determined. If you will increase the priority of Sales Manager project, let say to 1 or higher, the project for Sales Manager role, in this case with the highest priority, will be used. At the end, it will not affect any sales person, but it will manage to get the sales manager the correct project.

Type of project means, whether user wants to create a project for internal, CRM user, or for external users (Mobile App). More information about External (Portal) User and Anonymous projects type of projects can be found in Advanced Topic section.

Template defines, whether user wants to use the Default project, the app like the Out-Of-The-Box-One, to start customizing, or an extended version, where a lot of additional features are already implemented.

Creating a new project 4.1_1

After clicking OK the user can start editing the SalesApp project.

Click Edit (in the Main Menu) while having the SalesApp project selected to open the project.

 

 

4.1.1 Publishing a project

In order to get changes made in a project to apply to Mobile CRM application, user needs to publish the project. Publishing means that the project changes, made until the Publish or Publish All command is clicked, are used to change the looks and functionality of the Mobile CRM application. These changes are applied on Mobile CRM app after its synchronization, performed after publishing the project changes.

Publish – using this command allows user to publish the currently opened project only.

Publish All – using this command allows user to select one, or more than one project, that they can publish at the same time. It is designed mainly to allow publishing the parent and one more child projects in hierarchy, so that changes to parent project are published also to published child projects.

To see how it works, please check this part one of our webinars https://youtu.be/VZQMwM0b-N8?t=16m20s and example of Publish All in action https://youtu.be/VZQMwM0b-N8?t=24m12s

Publish Version – Publish Version allows user to specify the Woodford version, to be used for publishing the project. It is a tool for troubleshooting, not designed for permanent use. It is because Woodford version of the published project should match the Resco Mobile CRM application’s major version (first two digits) that is used on mobile devices by users, or the Mobile CRM app version should be higher.

In other words, if user uses a Mobile CRM app in version lower than Woodford, that is used to publish a project, user will get error Unsupported metadata, because the Mobile CRM application cannot use the project, as it was published using Woodford with new features, that are not implemented in older version of mobile app.

If users are not able to immediately update Mobile CRM app to later (latest) version, they can lower the Woodford publish version, to match the Mobile CRM app version that is used on user device. So if user has Mobile CRM app version 9.1 installed, and they use Woodford 9.3, they can set the Publish Version to 9.1 and publish the project without features, that are not available on Mobile CRM version 9.1

To see the major features, available in specific versions of the Resco solution, please check our News room http://www.resco.net/company/news.aspx

 

4.2 Entity

There is a list of all available entities from your CRM server on the left. To use an entity in mobile project, e.g. Competitor entity, click on it, click on the green Enable button in the top toolbar to make it available in our project and Save the change.

Entity 4.2_1

Other parameters include

Mode – If set to Online only, the data for the entity will only be available in the app’s Online Mode. If set to Online & Offline – the data of course will be available for both modes

Conflict Strategy – Conflict means, that the same record is changed on the device and before synchronized, there is a change on the CRM server (e.g. other user changes the same record and synchronizes before the other user, or the record is changed on the CRM server

The conflict resolution strategy is following.

  • Server Wins – When there is a conflict, server version of record is used and overwrites the record on the client.
  • Device Wins – Since only changed fields are sent to CRM server, when there is a conflict, the server and client records are “merged”, since only changed fields, that are sent to server are overwritten by client version.
  • User Action – When there is a conflict, user receives a Sync Error, where he has multiple options how to deal with the error, like edit the record on the device, save it and synchronize again to beat the server change (Clear Error and retry)
  • Device Wins (Full) – Mobile CRM app sends and overwrites all fields to CRM server, even those, that were not change by user on Mobile CRM app.
  • These are the options that User Action offers. http://www.resco.net/MobileCRM/SyncErrorsHelp.html

plus, it is possible to take server version. For this user needs to have access to the CRM server and the record is overwritten by record from the server.

Permissions – user can set the Read, Write, Create and Delete permissions for the whole entity.

Advanced Properties – when the Include Lookup Labels is checked, the app will no longer show related data to that entity as “Unknown” in the offline mode.  This often happened with ownerID’s of records as the data with User names is stored in the User entity (by default the Owner entity is not enabled in Woodford).

Now, as the Competitor entity is activated (it has changed into full color icon), there is an option to expand it, and see the five items that will roll down: Forms, Views, Charts, Fields and Indexes.

 

 

4.2.1 Fields

After enabling an entity, you can enable fields, that you plan to use on this entity in the Resco Mobile CRM application. E.g. I pick up some additional fields I want to use in my mobile project: City, Country/Region, Street and ZIP/Postal Code.  Here user can also enable the custom fields for the entity.

Fields 4.2.1_1

User can configure the Formatting of a field – this affects the appearance of the fields in the Forms.

Single line – field is formatted to have the appearance of a single line field in the mobile app

Multiline – field will have the appearance of a multiline field

Email – the field in the mobile app will have an action button that after activating will give the user an opportunity to immediately create an email

Phone number – the field will have an action button that will activate the phone call function on the device (the device will dial the number contained in the field)

URL – an action button to open the URL in the native browser of the device will be available

Barcode ­– action button activates a camera so user can scan Barcodes and QR codes. Function will only work on devices that have a camera with Autofocus.

HTMLwill format the text field into a HTML type (bodies of email, signatures and etc.).

DropDown, DropDownList, Multi DropDown, Multi DropDownList – this feature allows user to predefine input for users, so instead of entering a value, they can choose to use options from drop down list (or enter what is needed manually). More about this feature is show in this webinar section https://youtu.be/9vL4QRN_1dk?t=34m3s

Also user can configure the Permissions for the fields to either enable/disable the Read, Create or Update permission.

Note: The functionality of the Add Images to the entity will be explained in the Advanced Topic section of this manual – 5.2.

Warning: If you disable any previously enabled Field, please check the existing Views and Forms and remove any Fields or Lists that are represented by the sign “Invalid”, or enable the correspond Field so that the Field will no longer be listed as Invalid. If there will be any Invalid Field or List in the Form or View, the application will crash when you will try to open an entity list or record details.

 

 

4.2.2 Best practice when updating, adding metadata (fields, entities) on CRM server

In case a change is made on the CRM server, e.g. changing option set values, Woodford needs to be restarted, so Woodford can load the latest changes in metadata. Then user also needs to republish all projects to apply these changes to them. If a field is added to CRM, user also needs to enable it in project and place it into view or form.

 

 

4.2.3 Best practice when disabling field in project

When a field that is used somewhere in the application is disabled, Mobile CRM application can crash when user tries to access view or form, where this field was used. To avoid this situation, user should keep in mind these steps.

When user wants to disable a field that is enabled in the entity, first they need to remove the reference of this field from each view, form or chart. Also from other entity views, where this field is used. To do so, user needs to use the Select Fields option in View and disable this field from the view. Same applies on the Chart. Using Select fields shall remove the field from the view.

In form, user just needs to delete the field from the form. Then the field can be disabled, and it will not be used in Mobile CRM application. Any change in fields (enabling/disabling a field) will cause a full sync on this entity.

Special case is, when user wants to remove a field from the CRM server. If this field is enabled and used on the Mobile CRM application, the above steps need to be performed first, letting users synchronize and telling them not to make changes to data, and after they all synchronize, removing the field, publishing the project and asking users to synchronize. Only this way the problems can be prevented, when users make changes to field, that is to be removed. The problem that can occur is that server will report an error when Mobile CRM app will try to update/fill in a field that no longer exists on the CRM server.

 

 

4.2.4 Removing field/option from CRM server

When user removes a field, option from option set or entity from the CRM, they first need to let their users synchronize changed data and then remove all references of the field from forms and views, and then disable the field in the project. Then the field can be removed from the CRM. Otherwise users, that have the field filled in will not be able to synchronize the changes.

When this situation happens (user removes a field or option from option set) and users are not able to sync, as value in their record does not exists on the CRM server any more, that option needs to be added back to the CRM server, let user(s) synchronize and then continue as the above paragraph.

Or users need to delete their changes/data using Delete Data option in Resco Mobile CRM app’s Setup. This will of course cause losing unsynchronized changes.

 

4.3 Setting up a Sync Filter

Sync filters define what data will remain in the Resco Mobile CRM application after synchronization.

There are two types of synchronization, initial (full) sync, and incremental sync.

Full sync is performed when the Mobile CRM app is used for the first time after install, or when it does not have any data in offline, local database (performed Delete Data from the app’s Setup). In case of such sync, the Mobile CRM app downloads data from the CRM server depending on the sync filter, so the sync filter is used to define what data is being downloaded to the Mobile CRM app’s local database.

In case of incremental synchronization, the Mobile CRM app downloads all records (that the user has permission for) that were created or updated since the last synchronization, and then the sync filters are used to remove records that do not follow them to only keep records that do follow the sync filters in the local database.

By setting up the Sync Filter a condition can be defined for the CRM database entities (rows) which will be synced to your mobile device. Please bear in mind the capacity of mobile devices. In this example we set up a Sync Filter for opportunities that were created within the last 120 days.

Setting up Sync Filter 4.3_1

User needs to select the entity from the list on the left, for which they want to define the Sync Filter. Then click the Sync Filter button (red square).

Settimg up Sync Filter 4.3_2

Clicking the little black arrow next to the Opportunity expands the box. Selecting „Add Condition“, and selecting the desired field gives user an option to define the condition and add the value.

Don’t forget to click Save/Save & Close the changes.

 

 

4.3.1 Linked sync filters (Dyn CRM)

Incremental linked sync filter has a reason to be used under a condition like in the example. Let’s presume that user has this sync filter on Accounts. Only Accounts, that the user owns, or are related to Opportunities, that the current user owns, should be downloaded to the Offline mode. Also there is a sync filter for Opportunities, that allows download only of those Opportunities that are owned by the user. Sync filter for Opportunity entity is simple (Owner Equals Current User), but the one on Account entity uses linked reference to Opportunity entity, using the Opportunity’s sync filter.

During sync, only Opportunities that user owns and related Accounts should be available in the Offline mode. There is also a case where there is a new opportunity assigned to the user while the Account that is related already exists in the CRM, and the user does not owns it. Since the incremental sync only downloads records that are changed on the CRM server, the related Account is not downloaded during incremental sync since the Account record is not changed on the CRM server. This is handled by the Incremental Linked Sync Filter to be enabled on the entity, since it will ensure that the Mobile CRM app will download also records that follow the linked part of the filter, even though those records will not be downloaded using the incremental sync without this option enabled.

If user uses CRM server version 2013 SP1 or later, they can use the advantage of the linked filters, that will work not only on initial/full synchronization, but also on incremental synchronization. If not, from the incremental synchronization definition, only records, that are changed will be included.

To create a linked filter, a link needs to be added to the associated entity. With filter I follow the situation from the above example. Only Accounts, that the user owns, or are related to Opportunities, that the current user owns, should be downloaded to the Offline mode

So it can be created like this

Linked sync filters 4.3.1_1

In the next step to make the filter work on CRM 2013 SP1 and above also at incremental synchronization, user needs to enable the use of “Incremental Linked SyncFilter” for the entity.

Linked sync filters 4.3.1_2

It can be enabled by default in the project’s Configuration, but it is not recommended as such filter will create a complex query, that might increase server load. It’s rather recommended to enable this option on per entity basis.

 

4.4 Views

Picture bellow shows the view types.

The Dashboard view shows views and charts that were designed and defined for the entities.

Views 4.4_1

The Public View displays the selected entity’s list of records.

The Associated View shows the list of items from the associated entity that are relevant for the selected item and entity.

Views 4.4_2

The Lookup View shows the list of items from the entity that should be inserted to the form.

Views 4.4_3

Note: If a custom Associated View, Lookup View or Dashboard View is not created, then the Public View is being used.

 

 

4.4.1 Creating a Public view

To create a new Competitor’s public View user needs to click Views under Competitor’s entity and then New in the Main Menu. In this case the view was named: Competitors. One of the 4 types of view can be selected: Public, Associated, Lookup and Dashboard View. In this case, the Public view and a Primary + 2 Secondary Template are chosen. User can choose any of the templates or proceed with empty one and design it our own way, but please bear in mind the screen size of a mobile device.

Creating a Public View 4.4.1_1

At first, user will add the fields to be available on the Field Explorer by clicking Select Fields in the Menu Bar and in this case select all of them. Select fields shows all the fields available for the mobile device, not only for the View, but also for Sort and Search. The selected fields appear in a list on the right. User can also disable fields, that need to be enabled for synchronization, but they do not need to be added to View to make the designer tidier.

Creating a Public View 4.4.1_2

If user wants to have more fields, they need to be enabled in the Fields option under Competitor Entity. Then selecting the left bottom cell in the blue rectangle and double-clicking the City field in the list on the right adds City field. Same thing can be done with right bottom cell and adding the Street field. Then user just needs to press Save & Close when finished.

Note: If you want to search using a wildcard, use “%” in Mobile CRM search bar, the same way as you would use “*” on the CRM web interface.

Creating a Public View 4.4.1_3

Each field also has four available anchors (arrows).  Anchor can be activated by clicking on it. It will fix the boundary position of the field to the side the anchor is pointing. In the case of the picture bellow, the Address 2: City field is bounded to the left border of the view item and to the bottom border of the Name field. When the anchors are set correctly, the view will not be messed up when the user rotates the screen from e.g. portrait to landscape.

Creating a Public View 4.4.1_4

Row

Name – Defines the Row’s name (to distinguish between multiple Row designs)

Width – Defines the width of the row in a view

Height – Defines the height of the row in a view

Color – Defines the color of the row’s background

Selected – Defines the color of the row’s background, when the record in view is selected

Cell

Left, Top, Width, Height – Coordinates of the selected element (field on the row). User can adjust the element size and position either by entering the coordinates or by drag and drop the element and element’s sides in the designer

Kind – User can set the selected element as Text field, Image or Map Pin that will be used in the Map view.

How Image Kind works: When user selects a field for which the Kind is changed to Image, the field’s value is taken as the image name. So e.g. if user sets the status code field as Image, and adds the icons of the different status codes to the customization, the icon on the view will change according to the record’s status code. Also please see the Form Style Editor’s Folder description for more information.

How Map Pin Kind works: When user selects a field for which the Kind is changed to Map Pin, the field’s value is taken as the Map Pin image name. So e.g. if user sets the status code field as Map Pin, and adds the icons of the different status codes to the customization, the Map Pin icon on the map view will change according to the record’s status code. Also please see the Form Style Editor, ImageCell Folder property description for more information.

Binding – Please check the following section (4.5.2) for more information.

Style – user can select the style that will be used for the selected element. The designer will also preview the selected style. User can also create their own styles, or adjust the existing ones using the Style Editor (button in the top toolbar).

 

 

4.4.2 Binding

User can define what will be used as Field Data in a view element, entity field. When an entity field is added in the view, by default, Binding is set to Value and user can see the entity field‘s name in Binding’s field data. This way the field’s data are shown in standard way, so that user can see the value of the field in Mobile CRM app.

Binding 4.4.2_1

E.g. when there is an Option set field on the view, if user leaves the Binding Type on Value, Mobile CRM app will display the item’s label. If user sets Binding Type to Raw Value, instead of label, Value of the Option Set will be used. This is useful, when user wants to not display text, but different View images, or Map Pins, based on different value of the option set. It is because images cannot have space in their names.

Binding 4.4.2_2

Binding 4.4.2_3

When Binding Type is set to Constant, user can enter a static text as Field Data, and this text will be displayed instead of the entity field data. This way user can add “labels” to views, to describe fields that only show numeric value.

Binding 4.4.2_4

 

 

4.4.3 View Style Editor

It is also possible to change or add a style using the Edit Styles button on the Toolbar.

The editor enables user to change the default styles, or adding new styles, that can be then assigned to fields on views. The styles are global, for all fields on views, so if user changes a style that is assigned to multiple fields, even to a view on a different entity, these changes are also applied to these fields. Also it does not matter in which view the Style Editor is opened and edited in.

The properties of the ImageCell (is used when the Kind of the element is set to Image) that are useful for this kind of item are following:

Folder – For the name of the Folder under the platform folder of the Image.zip where the icons for the field values that user wants to represent as pictures are stored

ForeColor – if the icon that user will use is colorized, they can change the color of the icon here

FormatString – if user uses a non-string field as a source for the image (e.g. a lookup field), the string should look like folder_name{0}.png. {0} represents the target name (name of the lookup record, according to which the image is used.

HorizontalAlignment – Near aligns the image to the left side of the cell, Far aligns image to the right side of the cell and Center aligns the image to middle of the cell

Name – Name of the style

VerticalAlignment – Near aligns the image to the upper side of the cell, Far aligns the image to the bottom of the cell, Center aligns the image to the middle of the cell

View Style Editor 4.4.3_1

The properties of the TextCell (used when the Kind is Text are following:

AutoHeight – Adjusts the row’s height to fit the field in case the field element in designer is smaller than the font.

BackColor – Color of the field’s background (color of the cell)

FontSize – Size of the text’s font

ForeColor – Color of the foreground element – in this case it’s the text (#AARRGGBB – AA = alpha/transparency, RR = red channel, GG = green channel, BB = blue channel)

Format String – User is able to format the way, how the field data are represented. E.g. they can enter a format string in the way “Personal: {0}” where Personal: is a static text and the field data are entered where the element {0} is

HorizontalAlignment – Near aligns the text to the left side of the cell, Far aligns text to the right side of the cell and Center aligns the text to middle of the cell

Name – Name of the style

VerticalAlignment – Near aligns the text to the upper side of the cell, Far aligns the text to the bottom of the cell, Center aligns the text to the middle of the cell

View Style Editor 4.4.3_2

 

 

4.4.4 Additional View Configuration

In each view user can also define more.

 

 

4.4.4.1 Buttons

User can configure the buttons available in the view (visible only if the List Buttons option in Resco Mobile CRM Setup or in project’s Configuration is enabled), when record on view is selected. By clicking on the Buttons icon and adding commands from right to left, user can add buttons on view. On some user is able to specify more details, like what child entity record to create, or which status to set for the record.

Buttons 4.4.4.1_1

 

 

4.4.4.2 Edit filter

Edit Filter will restrict the displayed data in the view to only those that meet the conditions. The difference between the Sync Filter and Edit Filter is, that the Sync Filter only allows to sync the fields that meet the conditions, while the Edit filter works with all fields, and only displays those, that meet the conditions. This is the perspective of having more views for one entity.

Edit Filter 4.4.4.2_1

 

 

4.4.4.3 Edit Sort

Edit Sort defines which field will be used for sorting and the direction of sorting (Ascending or Descending).

Edit Sort 4.4.4.3_1

 

 

4.4.4.4 Edit Search

In the Edit Search user can define in which field the application will search for the character entered into the search field in the application. Also it can be defined whether search at the field’s beginning, end or in each full text. The search uses logical operation OR.

Edit Search 4.4.4.4_1

Note: Because the search uses OR, to enable more advanced search,  you can create a filter with a condition over a text field (e.g. Name, Title etc.) and as a filtered text enter @@filter@@. This will be replaced (in runtime) by the text entered to the search field on the view.

Note: If you have a GPS coordinates field in the entity, if you enable it for the mobile project, you will be able to switch the view from list to map and see the records on a map.

 

 

4.4.4.5 MultiSelect

It is possible to set actions, that are available for Views, when MultiSelect is triggered. To trigger it, user needs to tap and hold finger on a record on view, where at least one MultiSelect button is enabled. Then user is able to select multiple records and the selected action will be performed on all selected records.

Multiselect 4.4.4.5_1

To see how it works, please check this webinar section

https://youtu.be/REgaV6ymYWM?t=20m27s

 

 

4.4.4.6 Add Image, Add Map Pin

Adding Image is shown in section 5.3.1 and adding a custom map pin in section 5.3.2

For Map Pins you can also check the webinar

https://www.youtube.com/watch?v=9o9MS6gldr4

 

 

4.4.4.7 Sort Fields and Filter Fields

Since Mobile CRM app version 9.1, it is possible to set additional sorting and filtering on view using the Search bar. In these two view options, user can specify which fields will be available to user for this additional sorting and filtering.

Sort Fields and Filter Fields 4.4.4.7_1

 

 

4.4.4.8 Date Fields

In date fields, user can specify which fields will be used as Start and End date fields, in case they want to add the view to Calendar. Since it is possible to add any entity to Calendar, this way user can set the appropriate field to be used as Start and End date on Calendar.

Date Fields 4.4.4.8_1

 

 

4.4.5 Multiple Views

Multiple views are useful if the mobile user needs to have access to particular data from the same entity at one place. E.g. if the default public view is set to show all data, user can create a new view that will show only a subset of the data with different fields.

To create multiple views for Account entity, first user creates a new public view named Seattle Accounts. The new public view will display only accounts located in Seattle. Therefore, a filter that will only display accounts located in Seattle shall be defined. For this new public view user will also define the Edit Sort order as Ascending and Edit Search, that will search for the address that contains the characters entered to the search field in the Address field.

Multiple Views 4.4.5_1

Multiple Views 4.4.5_2

Multiple Views 4.4.5_3

Multiple Views 4.4.5_4

Multiple Views 4.4.5_5

Using the same steps, another public view shall be created, this time with the name Redmond Accounts, and shall have a filter set to show only accounts located in Redmond.

As the last step user defines which view will be default. In our case it will be the Redmond Accounts. Select it in Woodford and click Properties.

Multiple Views 4.4.5_6

  • To make the Redmond Accounts as the default view, tick the Default (Initial View) If the default view is not set manually, Mobile CRM will apply the alphabetical key.
  • The option Hidden (Hide in view selector) can be used when you are creating a view, that will not be shown in the list of multiple views in the Mobile CRM application. It can be used for example for a filtered lookup. How to create one will be shown in the Advanced Topic section at the end of this manual.
  • user can also set whether a view is created for Online and/or offline mode, so they can define different views for these modes.
  • Also there is a possibility to apply the entity Sync filter for the View in Online mode to decrease the amount of the data that will be downloaded. This is done by checking the Use Sync filter in Online Mode checkbox in the properties dialog.

Multiple Views 4.4.5_7

And here is the outcome in the Mobile CRM App. By selecting the different view user gains an access to different data.

Multiple Views 4.4.5_8

Note: This example may vary if the data, used in the Mobile CRM application from CRM server are different.

 

 

4.4.6 Advanced View Features

 

 

4.4.6.1 Row Scripts

Using Woodford, user can change the row’s design. Such as changing of its background or highlighting of specific records.

Hint: Please check this blog article to check an additional example of row script use http://blog.resco.net/2015/08/11/conditional-formatting/

User needs to go to the view, where they want to change the row (background) and click on Clone Row button to clone the current row. Then rename the Row.

Row Scripts 4.4.6.1_1

They can also use Copy design button that will allow them to copy the design of any view from any entity. Add Row adds an empty row, where user can add fields and design it from scratch.

Now, user needs to go to Edit Styles, click on Primary and click on +Add button. It will create a clone of the Primary style. Then they can change the BackColor (background), or ForeColor (text color), name of the style (in my case Red Primary).

Row Scripts 4.4.6.1_2

Now user can change the field style on the new row (Red background) from Primary to Red Primary

Row Scripts 4.4.6.1_3

To define when and how different row designs will be used, user needs to set the Row Script (rule). After clicking on Row Script button user can create the script (rule), under which condition different row designs will be applied.

Row Scripts 4.4.6.1_4

Warning: Please do not use Load reference in Row Script, even when it is possible. It will not work and could cause issues.

 

 

4.4.6.1.1 Changing style on View dynamically

Since version 10.1, there is also a different option in hanging the field style on View dynamically, based on it’s value, or other conditions, than to create different row design. It is also possible to change the field’s style using Row Script directly

To learn more about this approach, please check this part of a webinar

https://youtu.be/iLZ43KxGEW0?t=17m19s

and here to see the setup and see it in action

https://youtu.be/iLZ43KxGEW0?t=21m16s

 

 

4.4.6.2 Best practice in renaming a view

Users need to bear in mind that view name is used as a logic name, so it used all over the application. If user changes the name of a view, it can cause issues with the application. Especially if they rename default view names on pre-defined entities.

Views are used in Map, Calendar, in entities as public, associated or lookup views. So when the name is changed, user should re-set the views on all these places.

It is easier to use Localization to change the display name of a view, while user keeps the “logical” name untouched. To enable this, user needs to keep view names without spaces or special characters (underscore is ok).

 

 

4.4.6.3 Editable field (Editable list)

Editable fields, list or editable grid is a feature that allows users to edit more records at once, directly from the view, without a need to go to edit form of a record.

To set a field to be edited on the view directly, user just needs to set the field’s Kind to one of the Edit options.

Editable Field 4.4.6.3_1

The main difference between Edit and DirectEdit is that changes made on fields by using the Edit option, need to be saved. Since the Save button for View changes is only available on the Public view (list of records accessed from Home), DirectEdit option saves changes on field directly, without the need for user to use save button on the View.

For the use on lookup or associated views, user needs to use the DirectEdit option only, otherwise changes on different records will not be saved correctly.

Hint: For some  more information about Editable fields, please check this section of one of our webinars https://youtu.be/pYbmWlqLFh8?t=20m18s

 

 

4.4.6.4 Clickable field

Clickable field means to create a hyperlink of a lookup field on a view, and clicking this field opens the lookup target record. So a kind of a shortcut to e.g. parent account on opportunity view.

To enable a field on a view to be clicked, just set the field’s Kind to Clickable

Clickable Field 4.4.6.4_1

 

 

4.4.6.5 iFrame

It is possible to add JavaScript and JSBridge to views and perform validation, when user uses the view to change data (editable fields, MultiSelect) and to handle view buttons. It is also possible to use JavaScript and JSBridge to load records to the view (FetchXML).

For more information about extending views using this technology, please check the following part of a webinar.

https://youtu.be/uocH_yaytq0?t=35m33s

Additional options for the validation, to add the possibility for the app to ask whether a change should be saved or discarded, when users edit records on lists;

OnChange and OnSave actions triggering in JavaScript, validations, when records are modified or saved directly on a list can be seen in this webinar

https://youtu.be/B5mMIqJYy-Y?t=48m15s

 

 

4.4.6.6 Search View

It is possible to create a specific view, that will be used for search results. It needs to be a Public View named SearchView (cannot be hidden). So user can set different looks and functionality of this view.

To see it in action, please check this webinar section

https://youtu.be/9vL4QRN_1dk?t=31m2s

 

 

4.4.6.7 Responsive View/List

In order to use larger screens on tablets (or phones with large screens), it is possible to adjust the view design to be more responsive, i.e. to use the screen more effectively. To learn how it can be achieved can be found in the following article.

https://blog.resco.net/2016/12/01/how-to-set-up-flexible-list-view-designs-in-resco-mobile-crm/

 

 

4.4.6.8 Automatic List/View headers

It is possible to add headers, field names on the list.

To learn more, please check this part of a webinar

https://youtu.be/B5mMIqJYy-Y?t=4m45s

 

 

4.4.6.9 List/View Footer

This feature does not require setup in Woodford project. It allows to see some additional information when using multiselect in the Resco Mobile CRM app, like number of selected items vs number of all items in the view, or set the aggregation (e.g. sum of total amount on Opportunity) for selected vs all items in the view.

To learn more, please check this part of a webinar

https://youtu.be/iLZ43KxGEW0?t=14m56s

And this part to see it in action

https://youtu.be/iLZ43KxGEW0?t=19m59s

 

 

4.4.6.10 Set view items into grid/columns (display more records in one row)

It is possible to show records in a List/View as a grid, or in columns, to have more than one record on one row. To understand it better, please check the this part of a webinar

https://youtu.be/iLZ43KxGEW0?t=16m35s

And this part to see it in action

https://youtu.be/iLZ43KxGEW0?t=24m37s

 

4.5 Form creation

There are two types of Forms: The Edit form and the Contact Information form. The Contact information is a read-only type of form for quick access to information. By customizing the Edit form user shall be allowed to edit the field’s information.

Note: Only one form of a kind is available per entity. If you need to provide different form for different scenarios, consider using different projects for different groups of users, or use Rule, or Offline HTML with JavaScript to adjust the form (show, hide fields, tabs) based on specific conditions.

 

 

4.5.1 Contact Information Form

In the Contact Information form user can find the Contact Info section. There user has an option to determine which information will be displayed in the special, Info tab. It is the summary of in this case, the competitor’s information. It contains predefined categories that cannot be edited, so it should be only used for the entities where it will make sense. It is not much a Read-Only form. It is rather a contact or Quick Info form. The main reason is to make a quick direct phone call or send an email without the need to open the edit form. User can also add the available fields to the categories (Address, Call etc.). Information on the Contact Info will be displayed without labels.

Other items on the Tabs section on the toolbar enable user to add the Iframe, Map and Wall objects. User can also add available associated list, or unrelated list (list of records that will not be filtered).

The Field Explorer allows user to add the associated views of the fields from the entities bound with the foreign key. Or when they click on the Contact Info form’s designer part, they can see a list of available fields that can be placed on the Contact Info tab.

Hint: Contact Information Form can be adjusted using Offline HTML with Java Script. For some more information please check this section of one of ours webinars https://youtu.be/sGdE8xvb92o?t=19m54s

Note: If you use Flexible Forms (New Form UI), the Contact Information Form will be automatically disabled and not displayed to user.

 

 

4.5.2 Edit form

In Edit form user defines which fields will be able for editing and designing of the form.

To design an Edit form user needs to click on Forms and then New in the Main Menu. After that they can name the form and select Edit Form.

Edit form 4.5.2_1

The Form in default includes two tabs: General and Address.

Selecting General form and clicking on the Add Field button adds available fields. Once one field is added through the Add Fields button or by clicking on one of the fields in the center portion of the screen (Designer area) user can drag and drop the fields from Field Explorer list on the right to the designer.

Edit Form 4.5.2_2

And now the same shall be done for the Address tab (why to use Address tab?)

Edit Form 4.5.2_3

User can of course add additional tab using Add detail button, and place fields there, delete the default or custom tabs or rename them (click on the tab and then click on the rename button.

The  Add list button serves for adding of tabs that will show related/associated entities (list of related contacts, products & etc.)  (user can also drag&drop the lists from the right to the center portion of the screen) If a specific associated list is missing on the form, user should make sure that the lookup that defines the relationship is enabled on the child entity. e.g to add a list of associated Contacts on Account entity via lookup parentcustomerid, the field parentcustomerid needs to be enabled on the Contact entity.

Same button can be used also to add list of unrelated records, but the last option needs to be used in this case – Unrelated Entity List, and selecting the entity that should be used.

When user selects a list and clicks on Properties (or double click on the list), they can define the view(s) that will be available for this list.

Edit Form 4.5.2_4

When selecting a field on the form designer, user can also select the Style that the field should use. There is a choice available between the default or user’s own custom styles. To create and edit custom styles and to edit the default styles, user should use the Style Editor.

 

 

4.5.2.1 Advanced filtering

On lookup fields, and associated lists user can specify views, to be used for the item.

User just needs to double click (selecting the item and click on Properties) on the item (lookup field on associated list on the form) and select views, that will be used

Advanced Filtering 4.5.2.1_1

It is also possible to add additional filter that will be combined with the used view’s filter. This can help to narrow down the results. E.g. when user wants to assign the primary contact to an account, they do not want to have all contacts listed, they only want to see contacts associated with the account already. User can create a filtered lookup view (section 5.1 Filtered Lookup) or in this case click on the Filter and add additional condition that will be always applied to Primary lookup field.

Advanced Filtering 4.5.2.1_2

 

 

4.5.2.2 Form item options

Each form item has following options

Binding – For detail tabs this defines the tab name. For associated lists it defines the lookup field

Side – When using the flexible forms, user can place the tab item to left or right side of the form when viewing the form in full screen

Header – When using the flexible forms, user can set what to display as the form header

Hidden – The header is hidden and only records are shown (no plus, or flip to button is shown as well)

Icon & label – the whole header, including the icon and name will be shown

Label – only the tab name is shown

Width – Normal means the ordinary size of one tab, Large means that the tab will take size of two tabs

Height – Number of rows that will be visible in the tab item, other records will be available using scrolling

Orientation – Only available for list items and defines whether records are aligned horizontally or vertically. Scrolling also follows this option

 

 

4.5.3 Form Style Editor

The editor enables user to change the default styles, or adding new styles, that can be then assigned to fields on form. The styles are global, for all fields on forms, so if there’s a change of style that is assigned to multiple fields, even to a form on a different entity, these changes are also applied to these fields. Also, it does not matter which form user opens and edits in the Style Editor.

Properties that can be changed in the Form Style Editor DetailItem (field) are following.

BackgroundColor – Sets the color of the field’s background color

ButtonColor – Color of field button (for URL, Phone, Barcode… formatting)

EditorDisabledColor – Color of the field, when the field/form is disabled for editing

EditorFontWeight – Weight of the entered value of a field

EditorForegroundColor – Color of the field value

EditorHorizontalAlignment – Sets the field value’s alignment. Near aligns the value closer to the field’s label, Far aligns the value further from the label and Center centers the value to the middle of the value cell

ErrorColor – Color of the field, when error message is set to the field, or when the field is Business Required

ImageAlignmnet – Sets the alignment of a picture, if used. TextOnly shows Label of the field, ImageOnly shows image without label. Rest is the alignment of the image inside the field.

ImageBasePath – Path to the image’s project folder (project image)

ImageQuery – Specifies where the image is taken from (CRM data)

IsMultiLine – False means that the text field will be in a single line format, True means that the field will be in multiline format

LabelAutoHeight – makes the field row higher if needed according to the size of the label

LabelAutoWidth –Automatically sets the label’s width, based on the label’s length

LabelFontWeight – Sets the weight of the label

LabelForegroundColor – Color of the label’s text

LabelHorizontalAlignment – PlatformDefualt follows the default alignment of the label according to the platform settings (as is on not customized MobileCRM), Near aligns the label closer to the field, Far aligns the label further from the field and Center centers the label to the middle of the label cell

LabelPosition – PlatformDefault follows the default placement of the label according to the platform settings (as is on not customized MobileCRM), Left places the label on the left side of the field, Top places the label on the top of the field (can be useful when the label is long and Right places the label on the right side of the field

LinkColor – Color of the field’s link items – lookup values, URLs

MinuteIncrement – Set the minimal minute number used for minute selector

Name – Name of the style

RadioButtonMaxCount – Number of options of option set, for which the radio buttons are enabled. Option set with more options will be displayed as standard option set (drop down).

RelativeLabelFontSize – adjust the size of the label according to the default size by the positive or negative number

RelativeTextFontSize – adjust the size of the field text according to the default size by the positive or negative number

WrapText – wraps the text to more lines if value exceeds the size of the field

Form Style Editor 4.5.3_1

Hint: Further information about newly added style options can be checked in this section of one of ours webinars https://youtu.be/ws1RbswYfFQ?t=17m31s

 

 

4.5.4 Additional Form objects

 

 

4.5.4.1 Iframe

The Iframe is a visual HTML browser window with URL support and it is able to send the entity’s properties. User can also authenticate the current Mobile CRM user to use the credentials on the web site. Also as shown on the picture bellow, user can bind an entity property name in {} to the link (e.g. in this case search for the competitor’s name).

When Delay Load is enabled, the web site (or offline HTML) is loaded when user opens the tab. When Delay Load is disabled, the web site (or offline HTML) is loaded when the form is opened.

Note: The authentication works only for Active Directory connection type.

Iframe 4.5.4.1_1

Here is the visualization of the Iframe functionality in the app:

Iframe 4.5.4.1_2

Tip: You can check our Blog Post about LinkedIn integration (search).

 

 

4.5.4.2 Map Frame

The Map frame processes 2 entity’s properties: GPS coordinates and visualizes them on a map. To be able to set the map coordinates, the entity (in this case Accounts) must possess the latitude and longitude enabled property.

 

 

Prerequisites for the Map, GPS and Geocoding, as well as Update GPS option on custom entity’s form

To be able to see the Update GPS and Update Address command button and to use them to assign the current GPS enabled device’s GPS coordinates (and address based on the GPS position) to entity fields, these are the steps that need to be done in order to use it:

The entity must have a floating point number fields which names end with „latitude“ and „longitude“ e.g. GPS_coordinates_latitude and GPS_coordinates_longitude or as in case of Accounts, Contacts and Leads Address1: Latitude and Address1: Longitude and the field must be Floating Point Number type.

Precision needs to be set to 5 decimal numbers, Maximum Value to 180.00000, Minimum Value to -180.00000 for the Longitude, and Maximum Value to 90.00000, Minimum Value to -90.00000 for Latitude.

Map Frame 4.5.4.2_1

To add it to the form, user needs to click on the Form under Objects and select Add Map.

Map Frame 4.5.4.2_2

Also, there is a need to have a detail tab named exactly “Address” on the edit form. It is possible to change this name to any other using Localization.

To use the GPS fields for showing the record’s position on the map, on the edit form, user needs to add a Map item and specify GPS fields to be used. If user wants to show more than one position (e,g, Invoice and Shipping address position, they can add more than one Map item, with specific GPS fields specified.

Map Frame 4.5.4.2_3

Here is the visualization of the Map Frame functionality in the app:

Map Frame 4.5.4.2_4

 

 

4.5.4.3 Media tab

There is a specific tab, Add Media. Using this tab type, user can set up adding different files, attachments to a note. By default, it is set as signature tab but user can set it up for other actions, like capture photo, record video and more. They can also make a certain action required for specific status.  Name represents a name of the tab and Title Equals represents Subject or Title of the Note where the file is attached. When configuring new Media Tab Entity and Title Equals fields must be filled. Defining the Entity there are two option to choose – Note or Cloud Document.

Media Tab 4.5.4.3_1

(Example in the screenshot bellow: to change the records status to „In Progress“ user needs to input customer’s signature)

Media Tab 4.5.4.3_2

Note: You can add as many Media frames (tabs) as you like, each with different option. So you can have dedicated signature tab, dedicated photo/picture tab, record tab etc.

To allow further validation, logic of the Media tab, you can use Form rule, where there are new options available for the Media tab items. To see it in action, please check this part of one of our webinars https://youtu.be/VZQMwM0b-N8?t=27m34s

 

 

4.5.4.4 Form Rules – On Load, On Change, On Save

Form Rules is a pseudo-scripting language (conditional formatting) that allows user to create conditions and steps to be performed.

Rules guide is available as a separate document here: Mobile CRM Woodford – Rules Guide

You can also check our Blog post dedicated to Form Rules, Webinar videos Form Rules Basics, and Form Rules in Action

Some examples on how rules can be used can be found also on our blog

Webinars regarding new rules features, executing a fetch, parent entity variables, new string functions and section visibility

https://youtu.be/2dM7TSdNGqU?t=17m7s

https://youtu.be/B5mMIqJYy-Y?t=58m15s

Webinar showing how to define condition to check the security role, and perform different action for different security role

https://youtu.be/iLZ43KxGEW0?t=39m54s

 

 

4.5.4.4.1 Form Rules Examples – How to make a field required

(Keywords: fields, required, business, setup, configuration, Woodford, form rules, rule, logic)

https://blog.resco.net/2017/04/12/say-goodbye-to-empty-fields-and-incorrect-data-how-to-make-fields-required-in-resco-mobile-crm/

 

 

4.5.4.4.2 Form Rules Examples – How to dynamically show/hide sections on the edit form

(Keywords: fields, sections, show, hide, setup, configuration, Woodford, form rules, rule, logic)

http://blog.resco.net/2015/11/11/dynamically-show-hide-fields-and-sections/

 

 

4.5.4.4.3 Form Rules Examples – How to set a placeholder text on edit form fields

(Keywords: placeholder, text, field, label, localization, app, Woodford, form rules, setup, configuration)

http://blog.resco.net/2015/09/07/placeholder-text/

 

 

4.5.4.4.4 Form Rules Examples – How to show information from parent record on child edit form

(Keywords: child, parent, mobile, project, derived, form, entity, shared variable, Woodford, setup, configuration)

http://blog.resco.net/2015/04/28/show-info-from-parent-on-a-child-form-e-g-see-the-relationship-type-of-the-account-whenever-you-open-up-a-contact/

 

 

4.5.4.5 Edit Commands

Using Edit Commands button, user can manage what commands will be available for users.

Edit Commands 4.5.4.5_1

By moving commands from section Available to Selected, user enables this command to be available on the entity Edit Form.

Edit Commands 4.5.4.5_2

If there is an item, that has multiple options (like ChangeState,ChangeStatus), there is also need to set, which options will be available on the command.

 

 

4.5.4.5.1 Default commands have the following functionality

ChangeState – Change state code of a record. User can also specify which state options will be available to user. Each state option will be displayed as separate command

ChangeStatus – Change status code of a record. User can also specify which status options will be available to user. Each state option will be displayed as separate command

Delete – Deletes the record from database. If it is performed in offline, after synchronization it is also deleted from the CRM server

EmailLink – Creates an email with links to the record for CRM server and for Mobile CRM application.

Favorite – Adds/Removes record from Favorites. You also need to add Favorites to Home to give user way to access favorite records.

PrintReport – Runs a report. For more information please check this Blog post http://blog.resco.net/2015/03/03/run-reports/

Scan – Only on new record of Contact and Lead entity – Starts barcode scanner and by scanning VCard/Me Card enabled QR code on a business card (or elsewhere) will fill in appropriate fields of a new record.

ScanBusinessCard – Only on Contact and Lead entity – Similarly to the previous, but runs CamCard application to scan business card and using text recognition fills in appropriate fields. User needs to have CamCard application installed on the device and enter CamCard Api Key to Project’s Configuration (section Advanced)

Qualify – allows qualifying of a record. Available on Lead and activity entities

GetProducts – loads products to Invoice or Order from selected associated record (e.g. opportunity)

WonOpportunity – Sets opportunity as won and closes the opportunity

LostOpportunity – Sets opportunity as lost and closes the opportunity

CreateInvoice – Creates invoice from the order

Each command can be adjusted using On Can Execute and On Execute rules. More about these rules can be found in the next section

 

 

4.5.4.5.2 The Business card scanning feature

CamCard integration with Mobile CRM app works the way, that when creating a new Lead or a Contact, user can hit a command in Mobile CRM app, that will run CamCard app and they can scan the card, and then it transfers the information back to Mobile CRM app’s new Lead or Contact record.

User needs following

  • needs to enable a command (ScanBusinessCard) on Lead or Contact entity edit form.
  • needs to have CamCard free app installed on Android or iPhone or iPad (on iPad user needs to install the CamCard app from iPhone, not the HD version)
  • needs to obtain Open API key for iOS from Intsig (company that develops CamCard app) and put it to mobile project’s Configuration CamCard ApiKey field. This key is used for both, iOS and Android platforms.

Intsig has a special pricing for Resco customers, user just needs to specify that you are Resco customer, when contacting them.

If they are not already in contact, user needs to let us know, we can give then contact to Intsig.

Mobile CRM app can update these fields using the scanned card information from CamCard

LastName 

FirstName

MiddleName

Prefix

Suffix

Title

Org

Tel (Work/Home/Fax/Cell)

Email (Work/Home)

Address

GEO

Url

NickName

Bday

 

 

4.5.4.6 Custom Commands

User can also create custom commands, where they can define, under which condition the command will be available, and what to do at user action (when the command is used).

Custom Commands 4.5.4.6_1

It is also possible to connect custom command with offline HTML with Java Script and perform actions, that are not available using command Rules.

For commands (default and custom) user can also define On Execute and On Can Execute commands.

On Can Execute rule defines when the command will be available for user. In this rule user specifies in what situation user can see and use the command, so they can hide a command in situation, when the command’s action is not suitable.

Custom Commands 4.5.4.6_2

On Execute rule defines the actions that the command performs. User can specify what will be performed by the command, when user initiates it. It can be filling some data, hiding fields etc.

Custom Commands 4.5.4.6_3

 

 

4.5.4.6.1 On Can Execute Example(Disabling Update GPS command, dynamically disabling Delete command, and disabling Signature on Note attachment form)

A simple example is the Update GPS command on the Edit form’s Address tab. Like users should not change the GPS position of a record, that already has the GPS position set. So user can hide this command in such situation

On Can Execute examples 4.5.4.6.1_1

Another example is when user wants to prevent another user from deleting a record. They can disallow deleting records when they do not put Delete command on Selected commands section, but what if user wants them to delete commands in some situation? In this case they add Delete command but hide it in specific situation. In this case we will not allow user to delete records that are owned by different user.

On Can Execute examples 4.5.4.6.1_2

Yet another example can be when user does not want to have Signature on Note’s Attachment. To disable it, user needs to go to Note’s Form and adjust the On Can Execute rule

On Can Execute examples 4.5.4.6.1_3

The tricky part can be setting the command’s name. It needs to be exactly DocAction.CaptureInk, case sensitive.

On Can Execute examples 4.5.4.6.1_4

Here is the list of all DocActions, all possibilities user can do with Note attachment’s commands.

Actions for empty Attachment

  • DocAction.CaptureInk – Configures the view for Capturing Signature. When disabled, list of available commands is shown
  • DocAction.CapturePhoto – Asks user to capture a photo and loads the chosen media into the view
  • DocAction.SelectPhoto – Asks user to choose a media (image, video, depending on what the platform supports) and loads the chosen media into the view
  • DocAction.SelectFile – Asks user to choose a file and loads it into the view
  • DocAction.RecordAudio – Asks user to record an audio note and loads it into the view
  • DocAction.RecordVideo – Asks user to record a video and loads it into the view
  • DocAction.UseLastPhotoTaken – When user captures photo using the camera, and then wants to attach this picture to a Note, this action can be used, instead of Select Picture and navigating to the picture.
  • DocAction.LoadForm

Actions for non-empty Attachment, i.e. when there is a file attached to a Note

  • DocAction.Clear – Clears the view and marks it as empty
  • DocAction.View – Shows a preview of the loaded document (full screen, etc.)
  • DocAction.OpenExternal – Opens the loaded document in an external application. Which application will be used, is platform specific
  • DocAction.FindApp – Find external application for opening specific document. Find method is platform specific (i.e. find on Android Market)
  • DocAction.Download – Saves file in device, platform specific
  • DocAction.Copy – Copies image to clipboard
  • DocAction.Paste – Pastes image/file from clipboard
  • DocAction.Print – Prints the document
  • DocAction.ResizeImage – Lets user to choose smaller image resolution
  • DocAction.Import – Lets user import VCard attachment (handled in common code)
  • DocAction.Edit – Allows the document to be edited directly in Resco Mobile CRM application
  • DocAction.SendTo – Creates a new Email with the file/document as attachment

 

 

4.5.4.6.2 Can Execute Example

Can execute rule can define what exactly should a command do. User can for example fill in some specific fields and set the status code as busy.

Can execute example 4.5.4.6.2_1

 

 

4.5.4.7 Additional options for associated lists

When user selects an associated list, and clicks on Properties (or double clicks on the associated list), the options for the list will be displayed in section.

Associated Views – Here user can define which views they want to have available on the associated tab, and define additional filter for all associated views

Additional options for associated lists 4.5.4.7_1

Lookup Views – Similarly as above, user can define which view will be used as lookup (associating a new record)

Additional options for associated lists 4.5.4.7_2

Charts – Again, user can define which charts will be available for the flip to chart functionality

Additional options for associated lists 4.5.4.7_3

Properties – options available on the Properties tab depend on the type on associated tab.

Actions – Here user can define what actions/command will be available. On most of associated items they will have option Create New and Add Existing. This defines whether user can only create a new associated record or associated already existing record using the plus button on the associated item’s header.

Controls – In controls user is able to manage the available options of displaying the associated item data. Either to show them as list, or flip to a Map view or to a Chart view. By disabling on of the options, user shall remove the option to flip data. If they only leave the List option enabled, the flip to…button will be removed. Initial control defines, which display type will be used as the initial one.

Additional options for associated lists 4.5.4.7_4

 

 

4.5.4.8 Placeholder text

If user wants to advise users what to enter to a field, they can use this feature. Placeholder text means, that when a field is empty, it contains a text that gives a hint to users, what to enter there, or some specific instructions. Once user taps on the field to enter data there, the placeholder text is cleared.

There are two options how to enter such text. One is a static one, using Localization, and the other is both, static or dynamic, where you set placeholder text using edit form Rules.

 

 

Localization approach

User needs to go to project’s level (or organization level) localization, and add a new localization string.

As ID please enter the entity name, field name and empty in form entity_name.field_name.empty

Placeholder text 4.5.4.8_1

 

 

Edit form Rules approach

Using edit form Rules, user can set a placeholder text as static or change it dynamically.

In this example, in OnChange rule, the placeholder text for address1_line1 is static and when user enters data to the address1_line1, the placeholder text for address1_line2 and address1_line3 shows up.

Placeholder text 4.5.4.8_2

 

4.6 New UI

Disclaimer: If user wants to use the New User Interface, it’s recommended to start with importing a default project that was created into Woodford. It’s available for download here. Please extract the .woodford file from the .zip before importing it to Woodford.

This project contains preconfigured settings of views, forms and images. These settings ensure the New UI will behave correctly.

Building a New UI project consists of two parts. Creating Hubs and setting up Flexible Forms (simply put: new way of displaying fields and associated lists).

 

 

4.6.1 Hubs

Hubs combine records that have something in common. These can be records that represent user’s customers (like Accounts, Contacts and Leads) or are a part of the sales process (Leads, Quotes, Opportunities, Orders, Invoices) etc.

In hubs, user can display not only the records themselves, but also associated records that help users access more information from one place.

Note: How you decide to combine entities into hubs is up to you, it all depends on how you use your CRM and what makes sense in your case. The only restriction is: the entities merged into one hub need to have a common type of field that will affect the sorting of the view (e.g. for accounts, contacts and leads the common field can be the name. For activities it can be the scheduled end date).

Hubs 4.6.1_1

E.g. you can combine accounts and contacts into one hub. For Accounts, you can show associated activities, opportunities and contacts. So user can see the latest communication with the account, its opportunities and contacts directly, without the need to go to account’s form and search for the needed information. On the other hand, for contacts, you can decide to only show the parent account and related activities.

When user creates a Hub (or edits a default one), they need to specify the structure of the entities and its views, according to the data that will be displayed in the hub.

 

 

4.6.1.1 How to create a hub

  1. Add Group – User can have one or more groups in a Hub. The purpose of the group is to have entities of a similar type together. It allows user to filter Group sections under the in Hub’s view easier.
  2. Add Merged – Here user can specify a section, which will combine views and display resulting records. Only records from one merged section can be displayed at once.
  3. Add View – add the views to be used for the selected Merged section.

How to create a hub 4.6.1.1_1

 

 

4.6.1.2 Drill down

In Drill down, user is able to specify the associated or parent views that will be displayed when user expands the record in the view (as in the example of Accounts and Contacts described above).

In this case we are adding list of related opportunities to an account. If user sets a view that has a filter, this filter will be applied and only opportunities that fit the view filter will be shown (for example show only opportunities where estimated revenue is higher than $10 000).

Drill Down 4.6.1.2_1

 

 

4.6.2 Flexible forms

The flexible form is a replacement of tabs. Now user can put record’s fields, associated views and other items into one screen, so the users get a perfect overview of any record at a glance.

  1. In project’s Configuration section, user needs to enable the use of Flexible forms (if it is not enabled, the old UI using tabs is applied). In this section, user can also set how the form will be displayed by default (whether it should be opened full screen or in one column). This is a tablet only option, the form is always displayed in one column on phones.

Flexible Forms 4.6.2_1

  1. For each entity form, user can set its specific layout.
    1. Flexible Form option

Project Default – Form is displayed in old or new UI, depending on Flexible Form option in project’s Configuration

Enable – Enables the New UI Form

Disable – Form with tabs will be used

    1. Layout (Applicable for tablet devices, when form is in full screen)

Single Panel – Form is displayed in one column, all items are bellow each other, like on phone devices

2 Panel Auto – Right or left panel covers more space (depending on the content – which panel has more items on it)

2 Panel Left – Left panel is larger

2 Panel Right – Right panel is larger

    1. Full Screen

Project Default – Form follows the project’s setting

Enable – Form is opened in full screen

Disable – Form is opened in collapsed mode (like in old UI)

    1. User Resize

Project Default – Form follows project’s setting

Enable – User can resize the form (switch to full screen or to collapsed mode)

Disable – User cannot resize the form

Flexible Forms 4.6.2_2

  1. Each form’s item can be further configured.
      1. Side – To set whether the item should be displayed on the left or right side. By default the detail item (where you can add entity fields) is set to be on the left side and associated or unrelated list is on the right. But user can rearrange it as you wish.
      2. Header – What to show on the item’s header. Options are

Hidden – Item will not have a header

Icon & Label – Both, the icon and the label (name of the item), will be shown

Label – Only the item’s name will be shown

      1. Width – User can set whether to set the item’s width for one (Small) or two (large) columns
      2. Height – User can set the number of lines per each item. Only this number of records will be seen at first, the rest will be reachable by scrolling within the list. Or it is possible to set the height in aka pixels. To learn more about it, please check this webinar https://youtu.be/B5mMIqJYy-Y?t=23m18s

Flexible Forms 4.6.2_3

  1. It is also possible to set the form’s associated lists properties. For more information please check the Form section – associated list setup.

 

4.7 Dashboard

Dashboard views enable user to access the most needed information from various entities in one place. User can add Charts, Views and Iframes there. User can also create more dashboards and place them on the Home separately.

In order to add a Chart to the Dashboard view, first user needs to create/import the specific Chart for the desired entity, that will be used on the Dashboard View.

 

 

4.7.1 Charts

Charts can be used in two cases. User can add a chart to a Dashboard, where they can add the desired chart(s) or flip the list view into a chart view. In case of the Chart view, if user has more charts, they can switch between them just like in case of multiple views.

User can create more Charts for one entity, or they can import a chart, that already exists on the CRM.

Charts 4.7.1_1

First they need to select the desired item from the Legend Entries field (in our case the Total Amount) and the desired aggregation function (Sum). The available functions will differ according to the item’s type.  The next item is the color set for the selected legend entry, and user can also set the limit for records shown in the chart.

Mobile CRM supports multi series chart, so user can add a new legend entry clicking on the Add a series option.

Then they need to select the Horizontal Axis Label (e.g. Customer) and choose the type of the Chart. They can choose from Bar, Column, Line and Pie chart (Pie chart is not available when they have multi series chart) types. Save the changes when the chart is ready. User can also select additional fields and apply filters to adjust the displayed data.

Similar steps are required to make a Case Chart.  First user creates a new Chart in case entity, and uses the Case item as Legend Entry, Count: All as function, Customer as Horizontal Axis label and Bar chart type. In this case a Limit can be set to Top and enter 10 into the field. It means that the maximum number of cases shown in the Chart will be 10. After user just needs to save the Chart and will go back to the Project screen.

Charts 4.7.1_2

User can also define which fields will be available to users when performing Drill Down, or whether to enable Drill Down at all.

Tip: An example of multi series chart setup can be found in our Blog Post

 

 

4.7.2 Creating Dashboard

As default there is already a dashboard called DashboardForm. When user opens it, they can remove the pre created items by selecting it and pressing the Delete button.

User can add View, Chart and Iframe items. Then select an empty slot and press the appropriate button from the toolbar.

In case of Views, user needs to specify the entity and view(s) that will be available for user. If they select more than one view, user can switch between them. View, set as initial (not required) will be selected, until user changes it. It will be selected again after restart of Mobile CRM app.

Creating Dashboard 4.7.2_1

User can also define whether they want to enable Search on the Dashboard view, and whether to enable users to add records to the entity in Dashboard view.

In case of Charts, user needs to specify the entity and chart. They can leave it on automatic and the first chart in alphabetical order is used, or they can specify the chart.

Creating Dashboard 4.7.2_2

In case of Iframes, you just need to enter the URL.

The number of items placed on the Dashboard can be set by adjusting the number of Columns and Rows. User can also join two and more windows to one by dragging the right or bottom boarder of the window to the right or down.

Tip: Example on how to adjust the Dashboard can be found in our Blog Post

 

4.8 Managing entities available on the Mobile CRM application’s Home screen

To create a new Competitor entity, accessible from the Home screen, user needs to add it to the Home list then click Home, that appears in the Project list on the left. Then they only have to drag and drop (or double-click) the Competitor field from the right column (Available Items) to the left column (Home).

Managing entities 4.8_1

When all changes are done, the customization needs to be published, so the device will download and use it at the next synchronization. To do so, user just needs to click Publish all.

Now user needs to run the app on their mobile device and tap the Sync button. They need to make sure they log in as a user with Salesperson role (the role we created the customization for). A newly added Competitor entity displays on the home screen after the synchronization.

User is able to add or customize any other entity or custom entity the same way as described in this guide.

 

 

4.8.1 Home Item’s properties

For entities on Home, user can specify its properties.

Public View tab

On Public View tab, it is view(s) that is available to user when he opens the Home entity item. E.g. user can have more than one Home item of the same entity, each with different views available.

Home Item's Properties 4.8.1_1

Charts tab

Similar for Charts. If user defines any chart for the entity, they can specify which charts will be available for user. Then user can specify which chart, from enabled, to use to visualize data.

Calendar tab

If user has a Date field defined for at least one of the views, enabled for the Home item, user may be able to flip the view to a calendar view. If it is the case, they can specify the calendar properties on this tab.

Home Item's Properties 4.8.1_2

Properties tab

On properties tab user can define whether users will be able to create new records (option Create New), and what options to flip the view the user has, how to visualize records. If they e.g. only allow Chart (option Show records as Chart), users will only see the defined chart. If there are more chart, enabled on the Charts tab, user can switch between different charts, but not between different ways of visualizing records, only as Charts.

User can also define the initial control, way of displaying records, when they select the Home item.

Home Item's Properties 4.8.1_3

Map tab

Since Woodford version 10.2. it is possible to set up initial map position and zoom when switching from list view of entity to map view.

To set it up go to Home section à choose entity à click on Properties à choose Map à enter initial coordinates or use ‘From Map’ option to manually choose initial map position and zoom directly from the map.

4.8.1_4

Note: Initial map position and zoom can be also defined for Associated Views (Tabs) of entities. To set it up repeat the process described above for Associated View which can be found on entity’s edit form.

4.8.1_5

 

 

4.8.2 Home Groups

It is possible to group home items (Entities and other features) under custom groups.

To add a new group user just needs to click on the Add Group button located on top right – this will open a new section on the left of the home column and it will be called Groups.

Root as the name suggests is the main level of the home items and groups (visible at the start of application). To create a sub-level for the groups is done by clicking on a group in the Groups section and then clicking again on the Add Group button.

Home Groups 4.8.2_1

Note: Green color highlights position of the same Group in Groups section and then in Home section.

Home Groups 4.8.2_2

To Rename or Remove the Group user has to select the Group in the Home section (not in the Groups section) and then they can click the respective Rename and Remove buttons in the top toolbar.

Groups can also have their own images just like any other entity – when adding image, use the same name as is the name of the Group.

 

4.9 Social

Social 4.9_1

 

 

4.9.1 Chat

At first, user needs to go to enable Chat and save the changes. To be able to access chat of all record user is following, they need to place Chat on the Home. If they want to be able to use Chat to comment on records, they need to place the Chat Wall on the entity form.

Chat 4.9.1_1

Note: Chat works only when Internet connection is available. Chat uses Push Notifications to notify about new message, when Mobile CRM application is not running.

To see how the new, redesigned chat works, please check this webinar section

https://www.youtube.com/watch?v=jELqHaeS01E and https://youtu.be/VZQMwM0b-N8?t=4m14s

 

 

4.9.2 Activity Feeds (Dyn CRM)

 

 

4.9.2.1 Prerequisites

In order to be able to enable the Activity Feeds on the Mobile CRM, user needs to make sure they have a working Activity Feeds Solution on their Dynamics CRM server. If not, they can follow this “How to install Microsoft Dynamics CRM Activity Feeds” guide on how to add and configure Activity Feeds on user’s Dynamics CRM server.

 

 

4.9.2.2 Setting up Activity Feeds using Woodford

As first, user needs to go to Social section in the project and enable Activity Feeds and save the changes.

Then, if they want to access all the news, they need to place the Activity Feeds to the Home

User can also add the Wall to the entity’s Edit form so they can see all the News assigned to the currently opened record. To do so, user shall open the Edit or Contact Information Form of e.g. the Account entity, and click on the Add Wall icon on the toolbar (in case of the Contact Information Form, click on Form prior to the last step). In the end they just need to save the changes and not forget to publish the changes.

Setting up Activity Feeds 4.9.2.2_1

Note: Activity Feeds only work in Online Mode.

 

4.10 Branding

In the Branding section of the project, there’s an option to set custom information about the application. User can change the name of the Manufacturer, the Title of the application, Subtitle,  Website and Support Email. They can enter your company’s support email address if they want to take care of the first level support on their own. In this case the logs from the application will be sent to this email.

When they change the title, this title will be used as application name, application’s title on the main screen.

The rest of information is shown in the About section.

Branding 4.10_1

User can also Design the About section in the same way as Views are designed, so they can remove/change the information displayed there.

Branding 4.10_2

It is also possible to add a custom icon, e.g. company logo on the home screen (iOS only so far). To do so, user needs to go to Images section in the project, and add a new item.

As Directory set Home, as platform MonoTouch (iOS), user shall set the DPI (XHDPI is for retina displays) and the Name must be exactly “Image”, without quotes.

Branding 4.10_3

Then, user can add the other DPI by scrolling down to the Image (Home) item.

Branding 4.10_4

 

4.11 Auditing

In the Auditing section of the project user can set what kind of action on selected entities will be recorded using the Mobile CRM application and sent to the CRM server when the application will be synchronized. User is able to track the time when the action was performed and also the GPS position (the device must contain the GPS chip). It is also possible to record the time and place where the synchronization was performed.

User can also track application’s state events, and that is whether the application is running, is terminated, or paused (put to background) or resumed (put back to foreground).

If user wants to audit the movement, they can use the Track GPS position changes, where they can set the Delay  and Distance of the GPS position. If the devices moves the defined distance after the set time interval expires, the position is recorded.

Auditing 4.11_1

 

 

4.11.1 Auditing on the Server Side (Dyn CRM)

On the server side user needs to go to Settings -> Auditing under MobileCRM section. There are two possibilities. To check the Mobile Auditing Records or to view them on Map using the Mobile Auditing Map.

Auditing on the Server Side 4.11.1_1

If user receives the error message bellow after trying to open the Mobile Auditing Map, they need to enter the Google Maps API key to your CRM server.

Auditing on the Server Side 4.11.1_2

To enter this key, user needs to do the following.

 

 

4.11.1.1 Entering Google Maps API key

To be able to use the Mobile Auditing Map, user needs to own the Google Api Key v3. To enter it, user needs to go to Solutions section and double tap on the Woodford solution. It will open the solution and at the first screen, user will have the place where to put the Google API key.

Entering Google Maps API key 4.11.2_1

Different, more complicated way to do the same is this: While on the Dynamics Server, user goes to Settings, selects the Customizations under Customization section and clicks on Customize the System.

Entering Google Maps API key 4.11.2_2

Then user selects Web Resources to open the Global properties for Map Providers.

Entering Google Maps API key 4.11.2_3

On the Web Resources: Global properties for Map Providers user needs to click on the Text Editor to add the Google API key to the script file.

Entering Google Maps API key 4.11.2_4

In the last step user enters the Google API key to the selected area, specifying the key into googleMapsApiKey field and leave googleClientID null:

googleMapsApiKey: “EnterYourGoogleApiKeyHere”,

Entering Google Maps API key 4.11.2_5

If the “null” is removed from the code – user’s code will not be valid Javascript.

 

 

4.11.1.2 Adding Mobile Audit records on the server form

User can also add the Mobile Auditing tab on the CRM server form. Go to the Settings -> Customizations -> Customize the system on the CRM server, and select the Form on e.g. User entity as it is the most relevant entity for the Auditing functionality. Then click on Import and add or select the tab where they want to add the list of user actions, and click on Sub-Grid. Filling in the unique name and selecting the Mobile Audit (Created by or Modified by)from the list of primary data source entities after that. Then user can also set the View selector to show All or selected Views (there are some predefined views for the Mobile Audit entity like Today, Yesterday etc.).

Adding Mobile Audit records on the server form 4.11.3_1

 

 

4.11.1.3 Adding Mobile Audit map on the server form

If user uses the Google Maps API key, they can also add the user activity visualization map. User needs then to go to the Settings -> Customizations -> Customize the system on the CRM server, and select the Form on e.g. User entity as it is the most relevant entity for the Auditing functionality. Then they need to click on Import and add or select the tab where they want to add the list of user actions, and click on Web Resource. There user selects resco_MobileCRM/MapIframe.html Web resource. Then just sets the name and makes sure to check the „Pass record object-type code and unique identifier as parameters“ option, as it will show only the records that the observed user made.

Adding Mobile Audit map on the server form 4.11.4_1

Note: The Server support for Auditing is only available for the CRM2011 so far. The CRM4 support for Auditing will be available in Q3 2012.

 

 

4.11.2 Auditing in Mobile CRM application

Since Resco Mobile CRM application version 10.1, it is possible to see aggregated Auditing data in the mobile application, not only on CRM server.

To see it in action and how to set it up, please check this part of the Webinar.

https://youtu.be/iLZ43KxGEW0?t=2m38s

 

4.12 Images

User can change the default images and icons, or add images for custom items (such as map pins, entity icons, form tabs icons and command icons) in the section titled Images.

The list shows all the available image items with its dpi variants, for each platform. User can narrow down the list by using the Platforms and Directories filters.

For an easier orientation, they can disable those platforms that they are not interested in (don’t want to change the icons of).

Images 4.12_1

Or user can disable directories (sections) that they don’t want to be shown.

Images 4.12_2

 

 

4.12.1 Changing a standard image

If they want to replace a standard/default image with one of their own, user needs to locate the existing icon and then double-click on it.

Note: Items are listed in alphabetical order, first the Directory/folder and then the name of the item.

Changing a standard image 4.12.1_1

In the Edit Image window that will pop up, user needs to click on the no image icon to be able to upload a custom icon from their computer. To return to the default icon, they have to click on the Delete button.

Changing a standard image 4.12.1_2

Once user is done, they just need to save the changes.

 

 

4.12.2 Adding a custom image

When user wants to add a picture to a custom item, they can use the default directories, or they can create your own Directory, where they can store custom images. To do so, user needs to go to Directories list and click on New Directory.

Adding a custom image 4.12.2_1

To add a new image, click on Add on the toolbar.

Adding a custom image 4.12.2_2

In the Add Image window, set image’s properties.

Adding a custom image 4.12.2_3

User needs to specify the Directory/Folder, where the picture will be placed in, the platform, target DPI and name of the item, for which they are adding the picture.

Tip: Please check the appropriate section/example for specific item properties. E.g. map pins, tab icons, view icons…

The list of platforms:

  • MonoDroid – Android devices
  • MonoTouch – iOS (iPhone, iPad)
  • Windows – Windows Tablets
  • Windows Mobile – Windows Mobile
  • Windows Phone – Windows Phone

Then user needs to click on the no image icon and upload an icon from their computer.

Adding a custom image 4.12.2_4

Other DPI versions, or images for other platforms can then be added in more simple way. User just needs to locate the newly added image and continue adding images by double-clicking on the no image icon dedicated to other platforms.

Adding a custom image 4.12.2_5

Then they just need to click on the custom no image icon and upload their icon.

Adding a custom image 4.12.2_6

Adding a custom image 4.12.2_7

All user needs to do now is to save the changes and publish the project.

 

 

Colorize

If user wants to use their picture in the same way as default pictures are (i.e. picture follows color selected in the theme or view style) they need to enable the Colorize option. It will create a mask from the picture user is adding. The picture needs to have alpha channel. Everything where alpha is different from 0 will be used as a mask and then this mask will follow the color set in theme or view style.

 

 

4.12.3 Bulk change/import of custom images – Advanced

The Bulk import is done by importing a specifically named zip file that contains the images in a specific folder structure – the best way to explore the folder structure is to download the icon package from our website. Once user has the file, they need to remove the directories and files they don’t want to change. This way user doesn’t need to worry about getting the names of the folders or the structure of the folders wrong.

Please note, that different devices have different screen capabilities, and therefore there are different directories for them (like the Platform option in Images section in Woodford, when adding a new image).

  • MonoDroid – Android devices
  • MonoTouch – iOS (iPhone, iPad)
  • Windows – Windows Tablets
  • Windows Mobile – Windows Mobile
  • Windows Phone – Windows Phone

Example: User wants to place the image to the home section of the app – user needs to place the image file into the subdirectory Home to the MobileCrm.zip file. Then names and sizes of the actual pictures have to follow existing ones as they differ per platform. In this example case, we will add a picture for the iOS.

If the users use newer and older iPad/iPhone devices, they need two sizes of the image – this is because the older apple devices have screens with a smaller resolution. Android devices are also divided by LDPI, MDPI, HDPI, XHDPI according to the resolution of the app (you can regulate this in the Android app’s setup).

That’s why user will need a small and a large image version that has a suffix @2x (e.g. account@2x.png). Please check the dimensions of existing images for the reference. Also the Tabs directory can be interesting if user wants to change the images of the associated views. The name prefix of the image for the entity (on Home screen) should be the logic name of the entity. It can be checked in Woodford.

E.g. If user wants to only add one image to the home screen for their custom entity with name cust1 and overwrite the default image for invoices then they create a zip file with following structure.

MobileCrm\Images.MonoTouch\Home\cust1.png

cust1@2x.png

invoice.png

invoice@2x.png

To import the file user just needs to go to the Woodford/Images, there user clicks on the Import button on the top toolbar and then select this zip.

Bulk change 4.12.3_1

After the import is done user can verify the added images by searching for them in the list (use the filters Directory and Folder to get a quicker access to the images) or it can be verified by exporting the Images.zip, or by exporting the Mobile Project, adding an extension .zip to it and inspecting it. Images.zip file should be in the root.

Note: The zip should only contain images you want to replace or add, so if you use the sample zip, you need to remove all the default images, otherwise they will be used twice in the project, and the project will increase in the size, resulting to possible problems in synchronization, and increasing the time of synchronization.

 

4.13 Configuration

In the Configuration section user can set some of the Resco Mobile CRM mobile application settings remotely. User can also prevent the settings from modifying by user. Each option has a description, and some specific options are specified bellow.

On the most right column (Default Value), there are the default values as they are set in the out-of-the-box version that can be downloaded from the stores or from our website.

If user wants to set the setting remotely, they need to change the setting.

If it’s needed to prevent a user from changing the settings in the Mobile CRM Setup, the Lock checkbox needs to be ticked. If user only wants to change the default settings and they want to give user the possibility to change the settings, keep the Lock cleared and the settings will be set only when the project is published (Mobile CRM application shows the message “Application was updated” after synchronization).

When the Lock option is used for Configuration’s Accounts section, these options will hide from Resco Mobile CRM app’s Setup.

The Value column is used to define the value of the setting.

The changed option is highlighted in Bold.

 Configuration 4.13_1

For more info: https://www.resco.net/configuration-project-woodford/

 

 

4.13.1 Configuration examples

Client Customize settings does not use the Lock checkbox. If user leaves the Value checkbox ticked, user will be able to use the Data part of the Setup and enable/disable entities. If user clears the Value checkbox, user will not see the Data part anymore and will not be able to enable/disable entities.

Multi Thread Sync does not use the Lock checkbox, as this setting is not available on the Mobile CRM Setup. By default this option is enabled, but if user experiences synchronization problems, it can be turned off.

Use Database Encryption does not use the Lock checkbox, as this setting is not available on the Mobile CRM Setup. By default the local database on the mobile device is encrypted. But it can be disabled.

Save Signature As PNG – if this option is enabled and value set to true, the signature files will be saved as PNG files instead of SVG, that is used when value is false.

If user has some automatic field mapping set on the CRM server, by enabling Use Entity & Attribute Map, they will enable the same functionality on Mobile CRM application.

Background synchronization – User needs to set Require Sync Login option to False and Save Password to True

Automatic synchronization – Please check our Blog post

 

 

4.13.2 Duplicate detection (Dyn CRM)

The purpose of the Duplicate detection is to discover duplicate records, such as:

–          Accounts using the same name

–          Contacts using the same e-mail address

The duplicate detection rules are to be set on the CRM server (for more info, go to http://www.microsoft.com/en-us/dynamics/crm-customer-center/set-up-duplicate-detection-rules-to-keep-your-data-clean.aspx). Mobile CRM application does not create any rules on its own; it just may be directed to make use of the CRM server rules.

If user does so, then whenever an entity record is saved, this record is compared against the existing records in order to find possible duplicates. If there are any, MobileCRM application displays a warning and the user is given a chance to edit the data.

This process is called duplicate detection and can be set up to work in various ways. In particular, user needs to set up the Duplicate detection mode as either Disabled (no detection is done), Enabled or AlwaysOnline.

Enabled mode works as follows:

  1. a) If MobileCRM is in the offline mode: The local database is checked for duplicates using the local rules.*
  2. b) If MobileCRM is in the online mode: The server database is checked for duplicates using the server rules.

AlwaysOnline mode differs in a single aspect: It always (even if Mobile CRM app is offline) looks for duplicates in the server database.

*) Duplicate detection is stored in system entities duplicaterule and duplicaterulecondition. These entities physically contain the duplicate detection rules. They are originally stored on the server (server rules), but once enabled, the synchronization will copy the rules to the local database creating thus local rules.
Note: Make sure that the SyncFilter does not exclude rules that are needed for the duplicate detection. Also, please do not disable these entities in Woodford.

 

4.14 Global Maps

In Global Maps user can create items, which show selected entity records on the map, on the Home section.

User can edit the default Map, or create a new one.  On global map editor they can add any entity. They also need to specify entity View, which will be used. This view need to have GPS fields enable. Either entity fields or GPS fields from the parent record (Regarding). Please check this example.

If user enables “Is Initial” checkbox, that view will be enabled by default on the Map.

Global Maps 4.14_1

To be able to show records from this entity on the Global Map on the Home section, these records need to have GPS coordinates entered as latitude and longitude fields. To learn more, please check the prerequisites.

 

4.15 Calendar

User can add any activity entity to be available on the Calendar. Custom activity entities are also supported. For calendar, user can set various constraints, and different color rules. User can also create multiple calendars, and each calendar can have different activity entities displayed, and different constraints and rules applied. The calendars need to be placed in Home separately.

When an existing calendar (Tourplan) is opened, or a new one is created, user has various options to set.

 

 

4.15.1 Views

On the Views tab user selects the entity views, which are available in the calendar. This also defines which activity entities will be available on the specific calendar. User can select the default entity, and the initial view that will be set each time the calendar is opened.

Views 4.15.1_1

 

 

4.15.2 Offline Maps

In order to use fully offline capabilities of the Offline mode in Resco Mobile CRM application, it is possible to use Offline maps. To learn how, check this part of a webinar

https://youtu.be/B5mMIqJYy-Y?t=18m58s

and this follow up

https://youtu.be/iLZ43KxGEW0?t=29m19s

For more info on Mapbox and offline map custom styles, check this document:

https://www.resco.net/offline-maps/

 

 

4.15.3 Constraints

In Constraints, user can set limitations for the calendar.

In Date Range they can set the date when user can create activities from the calendar.

Time Range sets hours, when user can create activities from the calendar.

Day Filter specifies which days are available on the calendar, and when user can create activities from the calendar.

In Tabs user can enable/disable calendar views/tabs

Constraints 4.15.3_1

 

 

4.15.4 Rules

User can also control the color of the entries in the calendar based on Rules functionality. This is similar to Form Rules so prior form rules knowledge and experience is needed.

User can set different rules for specific activity entity, or they can setup Global Rule, where they can e.g. disable the drag & drop functionality for a specific entity.

Rules 4.15.4_1

The rule can look like this.

Example – I want to color appointments by the subject. When the subject of the appointment contains the string “meeting” I want to color this Appointment in orange color (#FFFF9000 color).

Rules 4.15.4_2

Color is changed by clicking on Add Step, then selecting Color from the dropdown, then entering the color value (##AARRGGBB, AA = Alpha/Transparecny, RR = Red channel, GG = Green channel, BB = Blue channel) into the text box in the Assign operator.

It is also possible to add the drag & drop disabling

Rules 4.15.4_3

To find out how to Customize labels of your Activities, check this quick guide out: https://blog.resco.net/2017/09/27/quick-trick-for-the-calendar-customize-labels-of-your-activities/

 

4.16 Events & Reminders

This option defines how to show personal events in app’s calendar, or show CRM events in device’s native calendar – available for iOS 6.0+, Android 4.0+. For other devices only reminders of the CRM events are available.

 

 

4.16.1 CRM events in the personal (device’s native) Calendar:

To display MobileCRM events in a Calendar app on the phone/tablet, user needs to go to Woodford’s new tab called ‘Events & Reminders’.

CRM events 4.16.1_1

In this tab, user can define which events will trigger reminders, as well as which will be displayed in the personal app.

Every event type (entity) has following integration options:

CRM Events 4.15.1_2

  • Reminder Only – When the activity is due and the Mobile CRM app is not running in the foreground, a reminder will be shown to user.
  • Show in Calendar – CRM events are displayed in native system calendar (a new calendar called ‘CRM Events’ will be added). This option includes also reminders. It does not allow users to edit CRM events within the native device’s calendar.
  • Sync with Calendar – Any changes of CRM events made from the native calendar app will be reflected in MobileCRM app. This option includes also reminders.

 

 

4.16.1.1 Filters

User needs to set a filter for each entity by clicking on ‘Define Filter’.

Only those records that meet the filter criteria will trigger reminders/ be displayed in the system calendar.

Filters 4.16.1.1_1

To force users to have reminders/CRM events on the device calendar, the settings need to be locked (mobile users won’t be able to change them).  In ‘Configuration’ tab ‘Use Reminders’ option needs to be enabled and user needs to click on ‘Lock’.

 

 

4.16.2 Personal events in the Mobile CRM Calendar:

The option to show personal events in the Mobile CRM Calendar can be set by each user within the app itself. This option is disabled by default, but can be enabled by turning on the ‘Private Calendars’ option in the application’s Setup section.

A system admin can however change this default setting or enable/disable this option. For this, he needs to go to Woodford’s Configuration tab and click on ‘Show Personal Events’.

Personal events 4.16.2_1

If ‘Show Personal Events’ is enabled and the value is set on ‘True’, users will by default have their personal events displayed in the Mobile CRM Calendar. If it’s set on ‘False’, personal events will not be displayed in the Mobile CRM Calendar.

The ‘Lock’ option will lock the setting, so that mobile users won’t be able to change it within the app.

 

4.17 Color Themes

In Color Themes section, user is able to change different colors for the app and give Mobile CRM app e.g. corporate branding.

Color Themes 4.17_1

Setup is WYSIWYG, so user can click on any sections on the preview to change its color. The changes will be shown immediately on the preview.

Color Themes 4.17_2

If user wants to see all the items, the color of which you can change, they need to click on Show Color List.

Color Themes 4.17_3

Tip: Colors set for ListForeground and ListSelForeground for Views and TabForeground and TabSelForeground for tab are aso used for icons, that were Colorized, when importing via images section.

It is also possible to create separate color versions for different platforms. Platform dependent changes will be used instead of the All Platforms color theme.

Customize – ios – Apple iOS platform

Customize – android – Google Android platform

Customize – win – Windows desktop, application, which installation file can be downloaded from our website

Customize – winrt – Windows RT, 8, 8.1 Metro style applications available from Windows Store

Note: WinRT only accepts foreground color changes

Customize – wp – Windows Phone platform

Color Themes 4.17_4

On the bottom there is the Palette – list of colors that are used in the current theme. By changing the palette color, all items, that use this palette color, will be changed accordingly.

Color Themes 4.17_5

Using the Load Preset button, all changes will be reverted back to the default setting.

User can export the current theme setup and save it by using the Export button (to use it in another project for example). Import will import a theme setup and apply it.

Tip: You can check our Blog post about Themes for an example of work with Themes.

Note: View styles set for specific field(s) on a view have higher priority and override the theme color settings. To learn more about view styles, see the section 4.4.3. You can also check Row scripts, section 4.4.6

 

4.18 Documents (External Document/File Integration) on DropBox, Google Drive and SharePoint

If user does not only use CRM attachments to store documents and files, they can integrate additional services with Mobile CRM app. Currently SharePoint (in next section), DropBox and Google Drive are supported. It means that user can attach documents/files to CRM records in Mobile CRM app and decide where these documents/files will be actually stored.

To enable DropBox and Google Drive, the Enable Documents option needs to be enabled in Documents section of the project.

Documents 4.18_1

Then user needs to add Cloud Documents List to entity forms, so that users can access documents, associated to entity records.

Documents 4.18_2

Finally, user needs to go to Mobile CRM app’s Setup and login to DropBox or Google using their credentials (credentials to company profile).

Tip: All documents, that you want to access, need to be downloaded to the offline database, even if you want to use Mobile CRM app in Online mode.

Hint: For some more information about Document integration please check this section of one of our webinars. https://youtu.be/Wad77Ob37gU?t=20m44s

To get a deeper insight into the External Document integration, please read this set of technical deep dive articles about the Document integration

https://blog.resco.net/2017/08/02/documents-in-resco-mobile-crm-sharepoint-dropbox-google-drive-onedrive-a-technical-deep-dive-part-1/

https://blog.resco.net/2017/08/09/documents-in-mcrm-sharepoint-dropbox-google-drive-onedrive-a-technical-deep-dive-part-2/

https://blog.resco.net/2017/08/15/documents-in-mcrm-sharepoint-dropbox-google-drive-onedrive-a-technical-deep-dive-part-3/

https://blog.resco.net/2017/08/23/documents-in-resco-mobile-crm-sharepoint-dropbox-google-drive-onedrive-a-technical-deep-dive-part-4/

 

 

4.18.1 SharePoint Integration sever side prerequisites (Dyn CRM)

Mobile CRM application supports both Sharepoint List Component base integration and Server-Side Integration.

Both will result in the creation of the required records and the difference is in the CRM web UI, which is not important for Mobile CRM.

The List Component is deprecated, but please read the following to make sure you pick the right choice.

https://technet.microsoft.com/en-us/library/dn792527.aspx

Mobile CRM requires that sharepointsite and documentLocation records are correctly configured. This means that these records must exist:

  • at least one sharepointsite record with the sharepoint url
  • per Sharepoint-enabled-entity root documentLocation

User should never need to create these records manually! They need to use the Document Management Wizard in Dynamics CRM.

Then go to Settings -> System -> Document Management

Then click on Document Management Settings

SharePoint Integration sever side prerequisites 4.18.1_1

Following the wizard

  • Selecting entities that shall have Sharepoint documents integration
  • Entering the Sharepoint Site URL

Optionally Selecting the folder Structure and Automatic folder creation.

SharePoint Integration sever side prerequisites 4.18.1_2

SharePoint Integration sever side prerequisites 4.18.1_3

Once the Wizard finishes, enable SharePoint in Woodford.

 

 

4.18.2 SharePoint Integration

If user has SharePoint integrated with their CRM and they want users to have access to SharePoint documents from Mobile CRM application, they can enable and setup the SharePoint Integration in Documents Section in a mobile project.

First they need to enable Documents and SharePoint by checking the checkbox.

Warning: Enabling SharePoint Integration will also enable SharePoint Site entity in the mobile project. Please do not make any changes to this entity.

Sharepint Integration 4.18.2_1

If user has SharePoint on premise, they can define the internal and external SharePoint server URL.

Then user needs to add Cloud Documents List to entity forms, so that users can access or add SharePoint documents, associated to entity records.

Sharepoint Integration 4.18.2_2

If user credentials for SharePoint are different from CRM credentials, user needs to set SharePoint credentials in Resco Mobile CRM application’s Setup. If SharePoint uses different authentication or you use CRM on-premise vs SharePoint online, or vice versa than CRM, user also needs to specify the Type.

 

 

4.18.3 External Document Sync filter options

Please check this part of webinar for reference on how to exclude specific documents from download to the Mobile CRM app’s database, based on the file type, or entity, the file is associated to, how many and what maximum size per file type etc. All the options and other specific information can be found here, in this part of a webinar

https://youtu.be/iLZ43KxGEW0?t=44m18s

 

4.19 Business Process Flow (CRM 2013 and later)

In Process Flow section of the project, user can enable the use of Business Process Flow on Mobile CRM application.

First step is to enable “Enable Business Process Flow on Mobile Device” option. Then they will see a list of all Business Process Flows available on the CRM.

Business Process Flow 4.19_1

Then user selects those Business Process Flows, which they want to use on Mobile CRM application. Now user needs to validate processes that will be used. They can either use Validate Process for selected process, or use Validate All Processes. This will check if fields, used by process are enabled on the mobile project. If user finds the list of fields, that are not enabled, they can simply use the Enable Process Fields button.

Business Process Flow 4.19_2

When OK is visible for each Business Process Flow, that user wants to use, they can save changes.

Business process flow on Mobile CRM application is visualized by an additional tab, where the Business Process Flow can be followed.

 

4.20 Favorites

To allow users to add records to the Favorites section on the Home screen, these two basic steps need to be performed:

First, user shall go to Home in Woodford project and add the Favorites item by dragging it from Available Items to Home column.

Favorites 4.20_1

The next step is to go to Edit Form on the Entity, whose records will be permitted for users to be able to add to the Favorites list. On Edit Form clicking on the Edit Command button.

Favorites 4.20_2

In the Form Commands Editor, user drags the Favorite command from Available Commands to Selected Commands column.

Favorites 4.20_3

User should follow these steps on any other entity, whose records they want users to be able to add to the Favorites list.

Once the changes are saved, user is able to publish the mobile project. Once users synchronize the Mobile CRM application, they will be able to pin records to their Favorites list by using the action button/command on Edit Form.

 

4.21 PIM Integration

Hint: For some more information about Email integration, please check this section of one of ours webinars. https://youtu.be/4Eu0NGgZNc4?t=4m40s and the following updates regarding latest features in this area https://youtu.be/Wad77Ob37gU?t=10m35s, and https://youtu.be/VZQMwM0b-N8?t=2m22s

In addition, it is possible to send tracked emails from within the Resco Mobile CRM application directly. For more details, please check this blog article. (Dyn CRM)

https://blog.resco.net/2015/02/17/email-tracking-microsoft-dynamics-crm-moblile-app/

 

 

4.21.1 Google integration (Gmail, Calendar)

Enabling Google integration in the project to allow users to link their google account to Mobile CRM application and to see their Gmail emails in mobile CRM, in E-mail activity entity, together with CRM emails and Google Calendar events with CRM appointments.

User can track their Gmail communication and Google Calendar events, and save these items on the CRM.

This can be enabled in Google section of the project by enabling the Gmail and/or Calendar.

With setting the Days to Sync user specifies how old emails should be synced and displayed in Mobile CRM app.

Google integration 4.21.1_1

Email Sync item can be also added to the Home screen, and by using this item, user will synchronize any emails.

Google integration 4.21.1_2

In case user adds the Email item on the Home section, users will be able to synchronize only Emails from all enabled integrations. There will be an additional synchronization button for Emails only.

Google integration 4.21.1_3

From user’s point of view, user has to go to Mobile CRM app’s Setup and use the Google option. Then they needs to sign in using his Google (Gmail) credentials and allow Mobile CRM app to access their Gmail data, and synchronize.

It is also possible to make user know about the read/unread email, by adjusting the Email entity View just by adding the ImageUnread field to the View. An image is bound to this field and when the email is not read, a blue line is shown in the field.

User can set an email as read/unread in email’s edit form, using commands.

Google integration 4.21.1_4

 

 

4.21.2 Exchange integration (Email, Calendar, Contact)

Enabling Exchange integration in the project to allow users to link their Exchange account to Mobile CRM application and to see their Exchange data like emails, calendar events and contacts in mobile CRM, in E-mail activity, Appointment activity, Contact entity, together with CRM records.

When it comes to Email, user can track their Exchange communication and save Exchange emails on the CRM.

To enable this, user needs to go to Exchange section of the project, and enable the Email.

By setting the Days to Sync user can specify how old Exchange items should be synced and displayed in Mobile CRM app.

When user enables Contact option, user’s Exchange contacts will be available in Contacts entity in Mobile CRM app.

Exchange integration 4.21.2_1

When user adds the Email item on the Home section, users will be able to synchronize only Emails from all enabled integrations. There will be an additional synchronization button for Emails only.

Exchange integration 4.21.2_2

From user point of view, user has to go to Mobile CRM app’s Setup and use the Exchange option. Then they needs to enter his Exchange Email address, password, and if the auto discovery will not work, also the URL of the Exchange server and User Name (with Domain if needed).

It is also possible to make user know about the read/unread email, by adjusting the Email entity View

just by adding the ImageUnread field to the View. An image is bound to this field and when the email is not read, a blue line is shown in the field.

User can set an email as read/unread in email’s edit form, by using commands.

Exchange integration 4.21.2_3

Hint: For some additional information about Exchange Email integration please check this section of one of ours webinars https://youtu.be/pYbmWlqLFh8?t=32m37s

 

 

4.21.3 Sending Invitations

In order to send invitations to people (records), that should be notified about a specific appointment, these are steps, that need to be done

  1. User needs to enable Exchange integration in project at least for Emails.
  2. Then go to Mobile CRM application’s Setup
    • Set up the Exchange account’s credentials and Exchange’s URL. For Exchange online, it usually is https://outlook.office365.com
    • Set the option “Send Email Via” to  Exchange
    • Enable option “Send Invites”

Then, when an appointment is created and saved an invitation will be sent as follows.

Appointment’s Organizer will be used as From in the Email sent as invite

Appointment’s Required Attendees will be added as To in Email sent as invite

Appointment’s Optional Attendees will be used as Cc in Email sent as invite

 

4.22 Route Planning

Route planning allows users (or the manager) to use Mobile CRM app to create a daily route.

To learn more about Route Planning, please check these sections of our webinars https://youtu.be/pYbmWlqLFh8?t=2m20s

https://youtu.be/REgaV6ymYWM?t=26m15s

Besides, it is also possible to specify whether a complete button will be available and required to move to next point, set the Start time for the route, default duration of the route point and default work location, that can be used as start and/or end for the route.

Route Planning 4.22_1

Since Resco Mobile CRM application version 10.0, there was a redesign of the Route plan feature. Please check the new design and how to work with it here in a webinar

https://youtu.be/B5mMIqJYy-Y?t=6m33s

 

 

4.22.1 Route Planning Events

To learn about Route Planning, please check this section of one of our webinars https://youtu.be/ws1RbswYfFQ?t=20m4s

 

4.24 Inspections & configuration in Dynamics

A very common usage scenario for mobile CRM are mobile field inspections.

Inspection survey template is a list of questions which can either serve as source of information for workers or as controlling tool for checking the process of workflow.

Check this guide to learn more and to get more detailed info on this topic https://www.resco.net/inspections-in-dynamics/

 

4.23 Tutorial in Mobile CRM app’s About

As you may have noticed, there is a tutorial, when application is run for the first time after installation. This tutorial is also available from Mobile CRM app’s About, using the Tutorial button.

It is possible to override this tutorial using your own, tutorial, to help users with some aspects of your customized Mobile CRM app.

All you need to do, beside creating the tutorial as HTML, you need to name this file as Index.html, and upload this file to Offline HTML section in the project, to a folder (you need to create it) named exactly GuidedTour (lower and upper cases need to be maintained). So the path to this file will be GuidedTour/index.html.

In the HTML, you can use images, that can be stored in this folder as well, or use links to other online/offline content. You can also use JSBridge to access CRM data.

 

5. Advanced Topic

 

5.1 Filtered Lookup

Let’s say that user wants to add a primary contact field on the Account edit form, and be able to choose from the contacts that belong to a specific Account only, not to select it from all the contacts.

First user needs to enable the Primary Contact field on the Account entity.

Filtered Lookup 5.1_1

Next step is to create a new Lookup view for the Contact entity. Let’s name it as Account’s Contacts. User can also select the Hidden option, so that it will not be shown in the view selector in the Mobile CRM application. Add any desired fields to the Primary and Secondary fields.

Filtered Lookup 5.1_2

Now user needs to open the Edit Filter, add a condition, select the Parent Customer field, click on the Enter Value field and click on Set variable on the toolbar (Set variable is only available on the Lookup View Filter).  After that just selecting the Account row with AccountId Primary Key is needed.

Filtered Lookup 5.1_3

The condition should look like the one in the picture bellow.

Filtered Lookup 5.1_4

Then user needs to save and close the Filter, save and close the View, open the Account’s Edit form and add the Primary Contact field to the form.

Filtered Lookup 5.1_5

Now user needs to click on the Properties, check the Account’s Contact Lookup view to be available for the Lookup and set it as default view for Lookup.

Filtered Lookup 5.1_6

After user saves the form and publishes the project, and then attempts to choose the Primary Contact for an Account, they will only have to choose from the Account’s contacts, not from all contacts. User will still have the possibility to change the Lookup view to the default one with all contacts, unless they uncheck the Default View from the Primary Contact Properties on the above picture.

Tip: It is possible to create a filter directly for the specific lookup (also for associated list) on the form. For more information see the Advanced filtering.

 

5.2 Barcode scanner functionality

By using Woodford user can enable bar code scanner functionality for lookup views and fields in forms. They can set any text field’s Formatting (Single line of text) to barcode.

Barcode Scanner functionality

Then user needs to enable this field for the lookup view (or the default view that is used for the lookups) using Select Fields on the View Toolbar.

Fields that have been formatted to Barcode format will have an action button which will start the scanning process when put into a form.

Barcode Scanner functionality

Then, when the lookup is called (choosing the lookup field from the Edit Form that brings the Lookup view), you will notice a bar code scanner icon next to the Search. When you choose this icon, the camera starts and when you focus it on the bar code or QR code, it recognizes the value and compares the value with the field set to bar code formatting. If the value is found, the record is selected.

Note: Please note, that the screenshots only refer to the steps you need to make, the field that needs to be formatted and enabled should be the one that is used for actual bar code scanning.

 

5.3 Examples of advanced options

 

 

5.3.1 List and Form Images

Tip: To learn more about what List and Form images represent, please check this Blog Post. You can also check the example in Blog Post about the List and Form images Woodford setup

 

 

5.3.1.1 Available for all CRM backends

 

 

5.3.1.1.1 List/View picture from Note

User can add pictures that are saved as Note attachments to a View and/or on an Edit Form.  This way they can show e.g. a contact’s photo or product pictures on Views or Edit Forms.

For showing pictures on a View: while user is on a view (e.g. a Public View for entity Accounts), they need to use the Add Image Option and select ListNoteImage. This will add a picture item on the view designer.

List/View picture from Note 5.3.1.1.1_1

Now user needs to adjust the size of other fields, otherwise they will be overlaid by the picture.

By default, the Note, where the View picture should be attached, needs to have subject name exactly “ListImage”. This can be changed In the View Style Manager by clickin on Edit Styles button, then on the ListNoteImage. To change the Subject name of the Note, user just needs to click on ImageQuery field.

List/View picture from Note 5.3.1.1.1_2

By changing the Subject field user will set the name of the Note, from where the picture will be taken.

List/View picture from Note 5.3.1.1.1_3

User can also create more ListNoteImage styles to use different notes for different Views.

If they have more ListNoteImage styles, they should make sure to set the correct one for the img item.

List/View picture from Note 5.3.1.1.1_4

Now, user needs to save these changes, publish the mobile project and synchronize the Mobile CRM application then open any Account record in the app, create an associated Note with Subject “ListImage” and attach/capture a picture. This picture will be used on the list for this record.

 

 

5.3.1.1.2 Default and Editable List/View Images

If user uses images on Views, and there are some records, that do not have image in Note, they can display a default image instead, so that there is not an empty slot in the view.

Also, it is possible to set editable images in View. It does not mean that user can edit the image, but they can edit the field, that is represented by image. E.g. option set may be displayed as image, rather that its value as text. And similarly to editable fields, user can change the value using images.

To see how to set these two features, please check this webinar section

https://www.youtube.com/watch?v=9vL4QRN_1dk

 

 

5.3.1.1.3 Edit Form picture from Note

User can add a picture for Edit Form in a similar way as on a View. When on e.g. an Account edit form, they need to click on Add Image and select FormNoteImage.

Edit Form picture from Note 5.3.1.1.3_1

There will be a new field – image1 on the Form. User can rename it with using the Binding field (e.g. Account Image). To apply the change, user just needs to click on the image field item.

By default, the Note, where the Edit Form picture should be attached, needs to have a subject name exactly “FormImage”. This can be changed in the Style Manager by clicking on Edit Styles button, then on the FormNoteImage. To change the Subject name of the Note, user should click on ImageQuery field.

Edit Form picture from Note 5.3.1.1.3_2

By changing the Subject field user will set the name of the Note, from where the picture will be taken.

Edit Form picture from Note 5.3.1.1.3_3

User can also create more FormNoteImage styles, and use different notes for different entities.

If user has more FormNoteImage styles, they should make sure that they have set the correct style for the image1 (or the renamed) item.

Note: If you set the same Note Subject for List and Form view, the image attached to a simple Note will be used for both, View and Form images.

 

 

5.3.1.2 Available only for CRM 2013 and later

In CRM 2013 and later, there is a specific picture field, where user can store images of Accounts, Contacts, Leads, etc. If they use this kind of picture field, they can use it also on Mobile CRM application.

First user needs to make sure the Entity Image is enabled for synchronization. Contact entity shall be used in this example.

Available only for CRM 2013 and later 5.3.1.2_1

 

 

5.3.1.2.1 Entity image on View

User can navigate to the View and add a picture to it. To do so, user needs to click on Add Image and select the ListEntityImage. Now user needs to adjust the size of other fields, otherwise they will be overlaid by the picture.

Entity image on View 5.3.1.2.1_1
To preserve the default functionality, it’s not recommended to edit the ListEntityImage style. User needs to save the changes and publish the customization (or proceed to setting up Edit Form entity image).

 

 

5.3.1.2.2 Entity image on Contact Information Form

Once user enables the Entity Image field, the default image set for the record will be automatically displayed on the Contact Information Form. No need to perform any further steps.

 

 

5.3.1.2.3 Entity Image on Edit form

To have the Entity Image on an Edit Form, user opens a form, clicks on the Add Image and select the FormEntityImage.

Entity Image on Edit form 5.3.1.2.3_1

User can notice a new item, image1 on the Form. It can be renamed to e.g. Contact Image by using the Binding field. To apply the change, user needs to click on the image field item.

Entity Image on Edit form 5.3.1.2.3_2

When changes are saved, the project needs to be published and synchronized with the Mobile CRM app. Entity Images shall appear on the View and on the Edit Form for those records that have an Entity Image.

 

 

5.3.2 Custom Map Pins

It is possible to set the map pin for different records, according to a field difference. In this case it is an option set. Let’s demonstrate it on a field preferred method of contact on account entity. In case user wants the records on the map to have different map pin according to different value on preferred method of contact.

First user needs to go to the Account view, that is used on the global map (or a different one and it will be made to be used on the global map view).

Then clicking on the Add Map Pin icon on the toolbar will add a static map pin.

Cusom Map Pins 5.3.2_1

Now change the Binding type to Value.

Tip: If your option set contains labels, with spaces, or characters not allowed to be used in file name, set binding type to Raw Value. Then in later steps do not use option set’s labels, but value (numbers).

Then user shall double click on the Select…, on the map pin item on the view and choose the Preferred Method of Contact.

Custom Map pins 5.3.2_2

Custom Map pins 5.3.2_3

Now user will need to change the Style. In style they can define where the map pin pictures will be taken from.

First a new style needs to be set up to make it easier in the future. Or user can use a predefined one.

User just needs to go to Edit Styles, click on ImageCellStyle and click on New.

Custom Map pins 5.3.2_4

First user needs to click on the arrow at ImageCellStyle and click on the new style. Here user needs to set the FormatString option. It will tell the application how the picture or map pin, will be named and where it is taken from, where it is stored. User just needs to select the folder (in Images section of the project), where their custom pins shall be stored (each picture added to the project needs to be in png format).  Now user needs to Save & Close the editor. They can use this style also for other pins on different views.

Custom Map pins 5.3.2_5

Then user has to set the Style of the map pins item to the new style, Save & Close the changes.

Custom Map pins 5.3.2_6

Next is the Images section. User needs to click on the Directories, then on New Directory. Here they will create the directory with exact name as they have entered to the style and hit Create.

Custom Map pins 5.3.2_7

For better orientation, user can uncheck all the directories except the newly created one and hit Add.

There user needs to set the Directory to the one they created (Map_Pins), the platform of the desired devices (it’s possible to add image for other platforms later), MonoDroid is Android, and MonoTouch is iOS. Then set the desired resolution and the Name. The Name is the name of the preferred method of contact field’s value. In this case it is Any, Mail, Phone etc. By clicking on the no image image icon, user can add image that will be used as a map pin for account with that value.

Custom Map pins 5.3.2_8

When user clicks Add, they will see the whole line for this value, where they can add other resolutions and platform images easier.

As they will be entering other desired values, it may look like this.

Custom Map pins 5.3.2_9

As the final step, user needs to go to Global Maps, open the Map where they want to use the customized view, and set the View, that contains your newly created pins as the one that will be used for the entity (Accounts view on Accounts entity).

Custom Map pins 5.3.2_10

 

5.4 Mobile Apps

 

 

5.4.1 External (Portal) User project

To learn what is the external user option, go to http://blog.resco.net/2013/08/22/new-usage-scenarios-for-resco-mobile-crm-part-1/

Prerequisites: User need to have the fields (e.g on. contact entity), with stored user name and password of the external user. The CRM user credentials are entered into Woodford and are stored on our licensing server.

So, if user has two fields on a dedicated entity that contain the user name and password, they can move on to creating a project for the external users.

They need to create a new project.

Set the type to External User.

  • Server Alias will be used in the Mobile CRM app’s sync dialog instead of the URL for external user mode options. So if the mobile user chooses an external mode (Registered External User or Anonymous External User) they will enter this alias into the URL field on the Mobile CRM sync dialog. This alias needs to be globally unique, as it an identifier of the project. It needs to be unique among all Resco external/anonymous projects (not just those on your server). If you get an error when saving, it usually means that the alias is already taken (by someone else), so try another. Don’t forget that it can only contain letters and no other character types.
  • CRM user is the user (license) that will be used as the access to CRM
  • Password is the password of the user
  • Authentication entity is the entity where the fields with user name and password are stored
  • User name field is the field on the authentication entity where the user name is stored
  • Password field is the field on the authentication entity where the password is stored
  • CustomerId field is the field that points to the parent entity record, using which you can then filter records that users see
  • Customer Lookup Field is the specific field that contains the name of the parent record. This is a part of the authentication and needs to be filled in. Then you can limit the records a user will see (using sync and view filters)
  • Registration method means the way users get registered (their records get created in the Authentication entity)

Then user can customize the project to define what these external users can see and edit.

External User project 5.4.1_1

External User project 5.4.1_2

Under Registration Method option user can change the way a new external user is created.

None – User needs to create the External user manually in CRM before users can synchronize the app.

Direct – User can create a new External user using a registration form, after selecting Register User on Mobile CRM’s Sync dialog, a record will be created directly on the CRM server.

Web Service – Same as Direct method, but data from the registration form will be sent to the Web Service that user wants to use for creating the record. Please contact us if you want more information about this option.

Email – Same as Direct method, but data from the registration form will be sent via an Email.

When user changes the Registration Method to Direct, Web Service or Email, Edit Registration Form option shows up. User needs to click on it so they can set up the registration form.

User can place any field from the Authentication entity there. Of course the User name and Password field should be there as well. User should not forget to add the field used as Customer Lookup Field that will set up the parent record. E.g.:

External User project 5.4.1_3

This is how the sync dialog should look like for the above shown setup.

External User project 5.4.1_4

And this is the Registration form, when user clicks on Register User.

External User project 5.4.1_5

Besides the above, you can also check the Blog article about setting up an External (Portal) User project

https://blog.resco.net/2015/07/29/resco-mobile-apps-how-to-set-up-a-mobile-application-for-external-non-crm-users/

Also, in this article, you can find more about how to set appropriate Sync Filters for External (Portal) User project (Customer App)

https://blog.resco.net/2015/08/19/resco-mobile-apps-how-to-use-sync-filters-to-provide-relevant-content-to-your-partners/

 

 

5.4.2 Appointments on Global Map (Appointment entity does not have GPS fields)

In a situation, when user wants to show records on a Global Map according to position of their parent records, like appointments, or service activities, they can simply add parent’s GPS fields on the appointment’s view.

First user needs to go to the view, that they want to use on the Global Map. Then click on Select Fields button, expand the Account (Regarding) and select its GPS position fields.

Appointments on Global Map 5.4.2_1

Then user needs to save changes and go to Global Map. They can double tab on the map item, where they want to add the appointment view. Or select the item and click on Edit.

Appointments on Global Map 5.4.2_2

There user needs to add a new item and specify the entity (Appointment) and View (All Appointments). Only views, with GPS field available on the view are displayed.

Appointments on Global Map 5.4.2_3

 

 

5.4.3 E-mail attachments

In order to be able to add e-mail attachments to an email, user needs to enable the E-mail Attachment entity. Then they need to place the E-mail Attachment List to the E-mail entity’s edit form.

E-mail attachments 5.4.3_1

In Mobile CRM app user needs to save the E-mail activity in order to be able to add an attachment.

 

 

5.4.4 Form items icon and name changes

To have different icons on form items, the idea is to have unique names of the tabs.

So user needs to rename the items (tabs), and make sure that the item name does not contain spaces or characters that are not allowed to be used as file names. If they need to have a name where they want to use these “forbidden” characters, user can change the name in localization. It can be seen in the next section. Without localization changes, the tab name will be displayed the way it is set in form.

Form items icon and name changes 5.4.4_1

 

 

5.4.4.1 Icon changes

If all from the previous section is done, user can go to Images section.

There tap on Add. Select a folder, e.g. Tabs. This is to define where the picture will be stored inside the project. Also, if user wants to have the same name of the tab but different picture on different forms, they can create new folders and distinguish pictures. Then select the target platform (they can add pictures to other platforms later on and easier, this is the initial step) and the desired DPI (other DPI same as with platforms).

MonoDroid means Android, and MonoTouch is iOS.

The name of the picture should be the same as the name of the Tab.

Icon changes 5.4.4.1_1

For easier navigation, user can disable the folders that they do not need to see

Icon changes 5.4.4.1_2

Other platforms and DPIs can be added directly in the Images section. User just needs to click on the empty picture icon and add the desired image.

In case of tab pictures, only the alpha channel of a png file s used.

 

 

5.4.4.2 Localization of the tab name

To change the display name of the tab (if user want to use spaces and characters not allowed to be used in file names), after making the tab name unique, they need to go to Localization section. There they open the language for which they want to change the tab name. After they go to Customized App UI section, expand it, search for Account, form (because the tab is located on the account form) and look for the name of the tab. Or user can search for account.detailview.contactsonaccount and change the text in project column. Please bear in mind that the space for the tab name is limited, so rather short name should be used.

Localization of the tab name 5.4.4.2_1

Now user just needs to save all the changes and publish the project.

 

 

5.5 Planner Controller and Field Service

Planner Controller is a part of the Resco Mobile CRM and it is available for organization connected with Resco CRM or Salesforce. It helps the Schedule Manager manage the people working in the field during the day/week, it oversees the free resources and helps to manage their work out of office.

Planner Controller provides a graphical overview of task scheduling for each resource, history of the performed tasks, the ability to set only resources from the selected regions or only with the required skills, the ability to set optimization of existing tasks by automation and many other features.

For more info, check out this document: https://www.resco.net/field-service-guide

 

6. Communication with external application

It is possible to send and receive information from other application running on the device. To get more information about the possibilities, please check this part of one of our webinars https://youtu.be/VZQMwM0b-N8?t=34m11s

 

6.1 Mobile CRM app URL Schema example

To open a specific record in Resco Mobile CRM app from other, external application, it is possible to use this URL schema, link

mobilecrm://open?{entity_logicalname};{entity_id}

where {entity_logicalname} represent the entity name (case sensitive), and {entity_id} represents the GUID of the record itself.

The alternative URL for Android (which works from e.g. email apps) is:

http://resco.net/schemes/mobilecrm?{entity_logicalname};{entity_id}

Note: The record, that the URL schema is pointing to, needs to be available in Mobile CRM app’s offline database.

 

7. Offline HTML with JavaScript

It is also possible to use JavaScript to customize Resco Mobile CRM application.

To learn more about Offline HTML with JavaScript, please check these two webinars.

Part 1

https://www.youtube.com/watch?v=cplZLC_mAc0&index=8&list=PLPMCnAPD5b56XNEiGTcy5VBxdP8rcB86b

Part 2

https://www.youtube.com/watch?v=R7GpdC_y17Y&index=5&list=PLPMCnAPD5b56XNEiGTcy5VBxdP8rcB86b

For more information about the JavaScript development, please check the JSBridge development guide, which also contains information about debugging the JavaScript code.

https://www.resco.net/downloads/JSBridge-Guide.pdf

You can also check the JavaScript Bridge reference, here is a link to the feature that can be used.

http://www.resco.net/mobilecrm/support/jsbridge.aspx

There is also a possibility to reuse JavaScript, used on the Dynamics CRM server side. You can find more information about using it in the package below (Dyn CRM)

http://www.resco.net/downloads/DynamicsCRM_Resco_SDK.zip