Image CWR Mobility Wiki
This page is a Draft, its content is not complete and might contain errors.

This article applies to:
  • CWR Mobile CRM 4.1
  • Microsoft Dynamics CRM 4.0

Table of Contents [Hide/Show]


This Document
Mobile Configurator
Publishing
   Item status
   Data grids
Entities
   Add an Entity
   Delete an Entity
   Publish an Entity
Profiles
   Add a Profile
      Custom menu items
   Copy a Profile
   Importing and exporting a Profile
      Exporting
   Deleting a profile
Users
   Add a User
   Edit a User
   Delete a User
   Resynchronize User data
Views
   Add a View
   Edit a view
      Change View Properties
      Manage extensions
      Edit Filter Criteria
      Configure sorting
      Add columns
         Change Column Properties
         Removing a column
         Deleting a view
   Importing and exporting a view
Forms
   Add a form
   Edit a form
      Change Form Properties
      Adding fields
      Add tabs and labels
      Add Custom Control
      Change Properties
      Change Field Properties
      Related
      Remove
   Deleting a Form
   Importing and exporting a form
Filters
   Adding a filter
   Edit a Filter
   Deleting a filter
   Importing and export a filter
Customizations
   Adding a customization
   Edit a customization
   Deleting a customization
   Exporting a customization
Reports
   Running reports
Troubleshooting
   Synchronization logging
   I see a red status bar at the bottom of the main menu.
   The registered Name doesn't match.
   I get an error message when I try to delete an entity from the entity list.
   I get an error message when I try to delete a profile.


Edit

This Document

This document describes how to configure a CWR Mobile CRM 4.1 application (for Dynamics CRM 4.0). It describes the application functionalities for implementing a customized Mobile CRM solution using the Mobile Configurator tool.

Here are some resources that might be useful if further information is required.

First of all, if you find any errors in this document, have comments and/or suggestions, we highly appreciate your feedback! Please send your feedback to support at cwrmobility dot com or leave them on the discussion page and we’ll use that to improve our documentation.

CWR Mobility website: http://www.cwrmobility.com
Microsoft Dynamics CRM 4.0 SDK: http://msdn.microsoft.com/nl-nl/library/cc160840(en-us).aspx
Optimizing and Maintaining Microsoft Dynamics CRM 4.0: http://www.microsoft.com/downloads/details.aspx?FamilyID=ba826cee-eddf-4d6e-842d-27fd654ed893&displaylang=en

Edit

Mobile Configurator

With the Mobile Configurator an administrator can manage virtually every aspect of the CWR Mobile CRM application from within the Microsoft Dynamics CRM web interface. The Mobile Configurator can be accessed via the “Settings - CWR Mobile CRM” menu.

In the main menu, the following items can be managed:
  • Entities: The definitions of the entities that can be deployed to the Mobile Client.
  • Profiles: Templates where views, forms, filters and customizations are connected to.
  • Users: The Mobile Users with their specific profile.
  • Views: Data grids with filtered data per entity.
  • Forms: A collection of fields for Mobile Users.
  • Filters: To determine what information must be transferred to the Mobile Client.
  • Customizations: Custom code, language packs and other add-ins.
  • Reports: Synchronization statistics and other analysis reports.

These items are described in the following chapters.

Configurator

Edit

Publishing

From version 4.1 it’s possible to publish modifications to the Mobile Client. This means that an administrator can work on a production profile, but not publish all the modifications instantly. An administrator can choose to publish only select parts of the profile, like a form or customization, while not publishing the sitemap.

A second, and more powerful option, is to create a copy of a production profile and modify that one. When the administrator is ready to deploy the new profile, simply export the new profile and overwrite the production profile. After publishing the new production profile, it’ll be automatically deployed to the Mobile Client during their next synchronization.

If an administrator makes an error during modification of an item, the undo function will revert the draft item to its activated state. It’s not possible to undo changes made to an active item.

Publish Undo

Note: The “Publish” and “Undo” functions can be found in the top menu of the profiles, forms, views and filters.

Note: When an administrator deletes an item, it must also be published to make the deletion permanent.

Edit

Item status

Because of the new “Publish” and “Undo” functions, it must be clear in what the status an item is. To this end, an icon was added. The following table explains the status.

ItemThe item is active and deployed to the Mobile Clients.
Deleted itemThe item has been deleted, but hasn’t yet been published. To permanently remove this item, select it and click “Publish”.
Unpublished items are removed without using the “Publish” button.
Draft itemThe item is in draft and hasn’t been published yet. If a profile has been imported all views, forms,
filters and customizations that have been included are set to draft.

Edit

Data grids

The list that displays the entities, profiles, forms, views, filters and customizations has a couple of abilities. This is a list of these abilities:
  • Multi-select: An administrator can select one or more items in the list by holding the control (crtl) or shift buttons on the keyboard while clicking on the items.
  • Multi-page: if there are more than 50 items in the list, the paging in the bottom of the grid can be used to scroll through to more pages.

Multi-page

Multi-select

Edit

Entities

The first step in configuring CWR Mobile CRM is selecting the entities that can be made available on the Mobile Client. Click on the “Entities” menu item. The entities overview is opened. From this overview entities can be Added, Deleted and refreshed.

A refresh updates the information in the CWR metadata with the CRM metadata. If new fields have been added, this action must be performed.

Entities overview

Edit

Add an Entity

Clicks on “Add” button in the menu bar. A popup window will appear. Here, an entity from a list of available entities in CRM can be selected. This includes custom entities that the administrator has created. After selecting an entity and clicking “OK” button, the entity is added to the list of mobile entities. The entity is now ready to be used in “Profiles”.

Add an entity

Edit

Delete an Entity

When it’s no longer required to make an entity available to Mobile Clients, it can be deleted from the Entities list. When an entity is selected, click the “Delete” button. A confirmation popup will appear. After clicking “Confirm”, the entity is removed from the list of mobile entities.

Note: It’s not possible to delete an entity if it is used in a profile. Before deleting an entity it must first be removed from any profile it is used in. It’s not possible to delete an entity if there are one or more Mobile Users connected to it.

Edit

Publish an Entity

When a Mobile Client synchronizes with the server for the first time, the metadata of every entity is transferred to the Mobile Client. When the metadata of an entity changes, e.g. an attribute is added or deleted, that change is communicated to the Mobile Client. The mobile client can then refresh the metadata for that entity.

When an entity is selected, click the “Publish” button. A confirmation popup will appear. After confirming this popup, the “Modified On” date is updated and the Mobile Clients will refresh the metadata for that entity during their next synchronization.

Edit

Profiles

A Profile contains a selection of Entities with their own Filters, Views and Forms. This is a very powerful feature, because it enables administrators to have a Sales and a Service profile, each with their own mobile entities. Each profile has its own synchronization filters so the Sales profile could synchronize "my active accounts", while the Service profile could sync "all accounts with active cases". Forms and views are defined per profile. An Account form can be read-only for the Service profile (they don't need to edit account info) and editable for the Sales profile (they manage account info). It’s even possible to define field level security using profiles.

Click on the “Profiles” menu item in the main menu. The Profiles overview is shown. From this overview it’s possible to Add, Edit, Delete and Copy profiles. Profiles can also be imported and exported and modifications can be published or undone.

Note: For more information about publishing and undoing changes, see chapter “Publishing”.

Entity overview

Edit

Add a Profile

Click on the “Add” button in the menu bar. A popup window will appear. Enter a name for the new profile. Then on the first tab a new sitemap can be created. The Sitemap for CWR Mobile CRM has basically the same function as the CRM Sitemap. The Sitemap defines the main menu on the mobile client.

A profile

The Sitemap consists of areas, which are the Menu Groups on the mobile client (Workplace or Sales) and Menu Items, like the calendar or tasks.

When the site map is right-clicked a new area can be created. A popup window will appear. The area name can be typed in and the area type can be selected. A new option is “Is Default”. When checked, every time the Mobile User starts CWR Mobile that area is opened. To show this in the main navigation, the name of the area will be shown in italic. The example in the figure above contains three areas, called Workplace, Sales and External. Workplace is set to default.

Adding a sitemap area

Right-click an area to get the following options:
  • Add Menu Item: Add a new menu item in the selected area.
  • Add Custom Menu Item: Add a new custom menu item in the selected area. More information about this feature can be found in chapter “Custom menu items”.
  • Delete area: Delete the area and all menu items it contains.
  • Hide area: Hide the selected area.

Area options

When a new menu item is added, the following popup will appear.

Add a new menu item

A title and a type must be filled in. There are two types: Entity and URL. Depending on the chosen type, either an existing entity from a list must be selected, when the type “Entity” is chosen. A URL must be entered when the type “URL” is chosen.

An optional setting is “Is Default”. When checked, this menu item is set to open automatically when the Mobile User starts CWR Mobile CRM. It also sets the area the menu item is positioned under to “Is Default”. A menu item that has been set to “Is Default” will be shown in italic in the main navigation.

“Entity” is the most used type, since it opens a list of the specified entity type. The URL type opens the specified URL in the web browser of the Mobile Device.

An existing menu item can be deleted by right-clicking on it in the main screen and selecting “Delete menu item”.

Delete a menu item

On the second tab in the main navigation, entities can be added to the profile. A list of entities that have been selected in the entities overview can be chosen.

Mobile entities

The third tab features a checkbox. When this is checked, the customization files will not be deployed to the Mobile Users that have the profile. This option is typically used by companies who manage their Mobile Devices through other means. This way, the administrators can use the customizations during configuration of a profile, but not deploy the files.

Deployment option

When the profile is configured, click “OK” and the profile is saved. Double-click an existing profile in the “Profiles” list and it will be opened in a popup window.

Edit

Custom menu items

It’s possible to add custom menu items in the navigation. A custom menu item must be developed by a developer and can be added in the customization section. More information about the customization section, see chapter “Customizations”.

To add a custom menu item, right-click on the area and select “Add Custom Menu Item”.

Add custom menu item

The following form opens. In this form, a customization can be added.

Add custom menu item

In this form, all custom menus that have been added to the profile are added to the “Type” picklist. Select a type and fill the “Title” field with a descriptive title. If this custom menu item must be opened automatically when the Mobile Client is started, check the “Is Default” checkbox.

Some customizations require attributes to start, like a menu name. To add a new attribute, click on “Add”. The following window is opened.

Add custom menu item

Add a name and the value. Click “OK” to add the attribute to the custom menu item.

Edit

Copy a Profile

A profile can be quickly created by copying an existing profile. This comes in handy an existing profile is used as a starting point for a new profile.

To copy a profile, first select an existing profile from the list. Then click the “Copy” button. A popup window appears where the name for the new profile can be entered.

Copy profile

When the profile is created, all original forms, views, filters and customizations have been copied as well.

Edit

Importing and exporting a Profile

It’s possible to import, replace an existing and export profiles as a ZIP file. This feature can be used to export a profile from a test environment to the acceptation environment.

Note: It’s still possible to import an XML file containing a profile. However, it will not contain customizations.

When the “Import” button is clicked, a popup window appears. A name for the profile can be entered, or the field can be left empty. In that case, the profile name from the import file is used.

Copy profile

Note: As from version 4.1, it’s possible to overwrite an existing profile, like displayed in the figure above.

Edit

Exporting

If there are forms, filters, views and customizations in the profile, they will also be exported and packaged into a single ZIP file.

When a profile from the list is selected, click the “Export” button. A file Download dialog appears and the export file can be saved to the hard disk. As from version 4.1, all exports are ZIP files containing all customizations that are connected to the profile.

Note: Forms, views, filters and customizations that have been deleted but not yet published will not be exported. Forms, views, filters and customizations that have been modified, but not yet published will be exported.

Edit

Deleting a profile

A profile can be deleted. To delete the profile, select it and click the “Delete” icon in the top menu. If there are Mobile Users connected to the profile, it will not be deleted.

Cannot delete the profile

Edit

Users

Once one or more profiles have been added, the mobile users can be managed. When clicked on the “Users” menu item, an overview with all mobile users is shown. From this overview it’s possible to add, edit and delete users.

Note: In CWR Mobile CRM users are CRM Users that are associated to a Profile.

Users overview

Edit

Add a User

When the “Add” button is clicked, a popup window appears. One or more Mobile Users can be added in by typing their name in the textbox.

To add a user, select the profile and type the name of the user. A result list will appear with the name of the user. If there is only one user, that user is added to the list. If there is more than one user returned, a list is shown. Select the user from the list.

To add another user, select the “Users” field and type a username.

Adding users

Note: If a CRM User has already been added, it will not be possible to add them again. The results will not return this user if it’s searched.

Edit

Edit a User

When an existing user is double-clicked, a popup window will open with that users’ information. In this window, the following options are available:
  • Profile: The users’ profile can be changed in this field.
  • Wipe user: The next time the Mobile User logs on to the CWR Server, their local database will be deleted. This is useful for when a mobile device is lost or stolen. Note that this option only works when the mobile device synchronizes after the “Wipe” option has been set. If the mobile device doesn’t have a network connection and hasn’t synchronized, the data has not been wiped. While trying a normal sync, the message “This user will be wiped” will appear and the application will exit.
  • Reinitialize: The Mobile Users’ database is removed and the client is reinitialized. The client will be initialized when the next synchronization occurs.
  • Disable: The Mobile User is disabled and cannot synchronize with the CWR Server. When trying to synchronize the message “This user is disabled” appears.

Note: when a user has already synchronized with a profile and is moved to another profile, the user needs to initialize the mobile client again.

Note: If the user has background synchronization enabled on the mobile client and the network connection is active, the data will automatically be wiped during the next background synchronization.

User properties

Edit

Delete a User

When a user is selected from the user list, click the “Delete” button. A confirmation popup will appear and after clicking “Ok” the Mobile User is deleted.

When a Mobile User is deleted, that user will get an error message in his/her Mobile Client stating that “This user is not a Mobile User”.

Deleting users

Edit

Resynchronize User data

With this option, it’s possible to resynchronize parts of the Mobile User profile. These parts are:
  • Views
  • Forms
  • Customizations
  • Sitemap
  • All entities in the profile

To resynchronize these parts, go to “CWR Mobile CRM -> Users” and select one or more Mobile User with the same profile. If Mobile Users are chosen that have different profiles, an error message will be displayed. Click on “Resync” in the top menu bar to open the resynchronization popup.

Resynchronize

Edit

Views

Mobile Views have the same function as views in CRM. A mobile view represents a view on the local data on the Mobile Client. As mentioned in the Profiles section, views can be defined per entity per profile. So, an Account entity in the Sales profile can have different views than the Account entity in the Service profile.

Views overview

When you click on the Views menu item you go the Views overview. From here you can perform the following actions:
  • Add: Add a new view.
  • Edit: Edit an existing view. To edit the view, select one first.
  • Delete: Delete a view. To delete the view, select one first.
  • Publish: Publish a draft view to activate it on the Mobile Client.
  • Undo: Undo changes made to the view. The unpublished version will be deleted,
not the active one.
  • Export: Export one or more views.
  • Import: Import a view or overwrite an existing one.

Edit

Add a View

When the “Add” button is clicked, a popup window will appear. Here a profile and an entity can be chosen from the list of entities that are associated with the profile and that have no view defined yet.

Add a view

The “Create Default View” option is a powerful feature. When creating a new view, if this option is checked, it tries to generate views based on the CRM views that are associated with the chosen entity.

Note: Not all CRM views are compatible with mobile views. Incompatible views are skipped and an entry is added to the error log on the server.

Edit

Edit a view

Edit a view

When the option “Create Default View” was enabled during creation of the view, all views in the entity were automatically generated. Incompatible views have been skipped, because they use a filter that is incompatible with the mobile views. If there are compatible related views, these will also be created. These views are similar to the “Associated Views” in CRM.

Note: If the “Create Default View” option was unchecked during creation of the view, all views have to be created from scratch. So most of the time, leave the option checked for a quick start.

Edit

Change View Properties

Once the view is generated, a number of properties can be changed. The right pane contains the tools to edit the properties of the view. Click the “View Properties” button to edit the properties of the view.

Change view properties

The following options are available in the view properties:
  • Name: The display name of the view. This option has to be set and is language dependant.
  • Default view: Is this view the default view? When the view is opened on the Mobile Client, the default view will be displayed first.
  • Show new: A new record can be added by the Mobile User when this option is enabled.
  • Show delete: One or more records can be deleted by the Mobile User when this option is enabled. For more information about selecting multiple records, see the installation guide.

Note: If the user doesn’t have the privilege to delete a record, the user cannot delete the record.

In the previous figure the “Default view” option is enabled. There should always be one default view defined. That’s the view that shows up first when opening a view. The option cannot be unchecked. It’s only possible to check the option on another view. In that case the new view will be the default view and the old default view is no longer the default.

Edit

Manage extensions

An extension is a customized menu item. A developer can create a new menu extension. When this extension is added to the profile, it’s possible to add it to a view.

To add a custom menu item to a view, click on “Manage extensions”.

Manage extensions

This window displays all the menu extensions that have been created. To add a new extension, click “Add”. The following figure is opened.

Extension details

Select the extension in the “Type” field. If there are attributes defined in the custom menu extension, they will be displayed in the attributes list. Double-click an attribute to configure it.

Click “OK” to close the form. The new extension is added to the list. The following example shows two custom menu extensions on the Mobile Client.

View extension on Mobile Client

Edit

Edit Filter Criteria

A mobile view represents a view on the local data on the mobile device. Most of the time this view will contain a filter. The “Filter Criteria” is used to define what is shown in the view. For example the view “My active accounts”. The filter looks like the following figure.

Edit filter criteria

In this figure, one AND filter group contains one condition. This filter will show all accounts where the owner is the current user.

In the following figure, the filter will also check if an account is active.

Edit filter criteria

When right clicked on the “Filter (And)” filter group, a context menu appears. Click “Add Condition”. A new popup window will appear where the condition can be defined.

Edit filter criteria Edit filter criteria

Note: The list of available operators depends on the type of filtered field.

With the ability to add multiple filter groups, each with their own grouping type (and/or), and the ability to add multiple conditions to each filter group, complex filters can be created to match your needs.

Edit

Configure sorting

The “Configure Sorting” button opens a popup window where the sorting column and sorting order can be set.

Configure sorting

Note: Sorting can only be done on fields that are displayed in the view.

Edit

Add columns

The “Add Columns” button opens a popup window where the columns can be selected. These will be added to the view. Check the columns and after clicking “OK”, the columns will be added to the end of the view columns. The order of the columns can be changed by selecting a column header and using the arrows in the right menu. This is identical to the way views are defined in CRM.

Add columns

Change Column Properties

A column can be double-clicked or selected. Click the “Change Properties” button to open a popup window where the column properties can be edited.

Change Column Properties

The width of the column and the Column title can be changed. Depending on the data type of the column it’s possible to set the Display field, like a date/time field. This field can be modified so it displays the date and time or Date or Time. For other types such as NvarChar, there is no Display field or the Display field is fixed to a certain value.

When the Column title is set to its default value, the value will be omitted from the generated view XML and the mobile client will use the value from the metadata. The implications of this functionality will be described in detail in the section “Change Field Properties”.

Removing a column

When the column is selected, click the “Remove” button. A confirmation popup will appear. After confirming the delete action, the column is removed from the view.

Remove a column

Deleting a view

Select a view from the list and click the “Delete” button in the top menu. A confirmation popup will appear. After confirming the delete action, the view is removed.

Note: Clicking the undo action on a deleted view will reactivate it.

Remove a column

Edit

Importing and exporting a view

This process is similar to importing and exporting complete profiles, it’s also possible to perform these actions to a single view. Click the “Import” button. A popup window will appear.

The following options must be configured before import is successful:
  • Profile: The profile the view is going to be included in.
  • Entity: The entity where the view is going to be connected to.
  • XML File: The XML File with the view definition.

Import a view

An existing view can be overwritten. An existing view can be exported and saved as an XML file so it can be imported into another system.

To export the view, select a view from the list and click the “Export” button. A File Download dialog appears to save the file to your hard disk.

Edit

Forms

Mobile Forms have the same function as forms in CRM. A mobile form enables a Mobile User to view, create and update data on the mobile device. As mentioned in the Profiles section, forms can be defined per entity per profile. An Account entity in the Sales profile can have a different form than the Account entity in the Service profile.

To open the forms overview, go the forms overview in the main screen of the Configurator. From here the following actions can be performed:
  • Add: Add a new form.
  • Edit: Edit an existing form by double-clicking on a specific form.
  • Delete: Delete one or more forms.
  • Undo: Undo the draft changes made to a form.
  • Publish: Publish changes made to the form.
  • Export: Export one or more forms.
  • Import: Import a form.

Forms overview

Edit

Add a form

Click the “Add” button. A popup window will appear. In this window a profile and an entity from the list of entities that are associated with the profile and that have no form defined yet must be chosen.

Add a form

Like views, there’s an option to let the system generate the form automatically using the “Create Default Form” option.

Note: Not all entity forms can be generated. Some CRM entities have hardcoded forms that cannot be retrieved from the CRM metadata. This does not mean that a form cannot be created for such entities. It means that the system cannot generate the form.

An example: Generate a form for the “Businessunit” entity.

Tab

The system will generate an empty form with one tab named “???”. When the CRM entity property for the business unit is opened, it’s clear that the entity doesn’t contain a form. This is shown in the following figure.

Business unit entity properties

Note: there’s often a reason that a form cannot be customized in CRM. These entities usually have very specific functionality that is important for the correct functioning of CRM. Be very careful when creating a form for such an entity. As a precaution, when generation of the form fails, its “Read only” property is automatically checked. This way the data can only be viewed on the Mobile Client, not modified.

Edit

Edit a form

When generating a form succeeds, the preconfigured form based on the CRM form is presented. The following figure has been successfully generated by the system.

Edit a form

Edit

Change Form Properties

Once the form is generated, a number of properties can be changed. The right pane contains the tools to edit the properties of the form. Click the “Form Properties” button to edit the properties of the form.

Change properties

When the option “Read Only” is set, the form fields cannot be edited. The form cannot be saved.

When generating a form succeeds the preconfigured form is presented. The layout is based on the layout in the CRM entity form. An example is the Account form displayed in the figure.

Edit

Adding fields

Click the “Add Fields” button. A popup window will appear. In this window one or more fields can be added to the form. It’s also possible to choose the tab to add them to.

Add fields

Once the fields are added to the form it’s possible to move them up and down using the up and down arrow buttons. A field cannot be moved to another tab using the arrow buttons. Double-click the field and change the tab there.

Edit

Add tabs and labels

Click on the “Add a tab” button. A popup window will appear where the name of the tab can be entered. Confirm the input, after which the tab is added to the right of the existing tabs. The tab can be moved with the left and right arrow buttons.

Click the “Add a label” button. A popup window will appear where the name of the label can be entered. A label is much like a section in CRM. However, a label doesn’t contain fields so it’s not possible to move a label together with all containing fields like sections in CRM.

Edit

Add Custom Control

Custom controls can be added to the form. Customizations are .NET controls that a programmer can create using the CWR Custom Control SDK. When a custom control is added using the Customizations overview, the control is available to add to the form. Input parameters can be used if the control requires these. The following figure is an example of a custom control.

Add custom control

For more information about using customizations to add controls to the form, see chapter “Customizations”.

Note: The attributes are defined by the custom control programmer.

The custom control is placed on the form.

Custom control on form

Edit

Change Properties

With the “Change Properties” button properties of the selected item can be modified. This can be any of the top four items in the right pane: tabs, labels, fields or custom controls. Double-clicking an item has the same effect. Changing the properties of a tab or label opens a popup in which the name of the tab or label can be edited.

Edit

Change Field Properties

Double-clicking a field or selecting a field and clicking the “Change Properties” button opens a popup window where the properties of the field can be changed. The following figure displays the properties of the “Account Name” field.

Change field properties

The form is divided in three sections: General, Additional and Location. The sections General and Location are the same for every Control type (Nvarchar in this case). Depending on the Control type there can be zero or more properties in the Additional section.

The following Control types exist:

Type

Additional properties

Description

Attachment

 

Special type only used for the filename field on the annotation entity.

Bit

Display format, True value, False value, Default value

 

Custom

 

Used for custom controls.

Customer

   

DateTime

Display format

 

Decimal

Minimum value, Maximum value, Precision, Default value

 

Float

Minimum value, Maximum value, Precision, Default value

 

Int

Minimum value, Maximum value, Default value

 

Lookup

LookupEntities

 

Money

Minimum value, Maximum value, Precision, Default value, Currency symbol

 

MultiLookup

LookupEntities

Lookup that can reference multiple records.

Nvarchar

Display format

 

Owner

   

Picklist

Default value

 

State

Default value

 

Status

Default value

 

Most of the control types match directly with their corresponding CRM types.

Note: Double-click on a field property to open it.

On the “Field Properties” form, the properties “Field Name” and “Control Type” are read-only.

The “Label” property has specific functionality. When a field is added to a form, by default the label is filled with the label from CRM. When left like this, the actual “Label” property is omitted from the generated form XML (that will be sent to the mobile client). When this property is omitted, the mobile client will use the “Label” value from the metadata.

This is a great localization feature, because what this means is, that forms (and views) can be created with default label and column values, export the profile and use it in any language CRM system. The Mobile Client will use the labels from the localized metadata, i.e. in the language of the CRM system where the XML file is imported.

When the “Label” property is left empty, the “Label” attribute is included in the generated form XML, but its value is blank. In that case, the label on the form will be blank also. When the “Label” property is changed, it will override the default value and the new value will be used.

Mandatory and Read only properties can also be set in the field property. It’s also possible to toggle visibility of a field. This may not make much sense, but it can be useful when overriding default fields with custom controls. In that case it can be handy to hide the default control.

It’s possible to change the display format of an nvarchar field, like the following figure.

Change display format

When the display format is changed to “Text Area”, an extra property named “Rows” will appear in the Additional section with a default value of 5.

Additional section

Another example is the field “Priority”. The field is of the type “Picklist” and has one additional property named “Default value”. When this property is double-clicked, the following popup window appears.

Additional field property

The available default values for the field “Priority” are taken from the CRM metadata and shown in the list.

Finally, the “Lookup Entities” property is worth mentioning. The best example is the “Regarding” field of an Activity. This field can point to several different entity types. Using the “Lookup Entities” property, the administrator can decide which entities are available to the Mobile User and in which order.

Lookup property

Edit

Related

Click the “Related” button to open a popup window where related entities can be added or removed. On the Mobile Client, related entities are shown in the “Related” menu on the form. Click on a related entity. A list will open with all records of that entity that are related to the entity on the form. An example of this is the “Order” entity.

Related

The list shows all one-to-many and many-to-many relations for the Order entity. These relations are all retrieved from the metadata. Custom entities with relations to system entities will also show up in this list.

Some entities, like account or contact, have lots of relations. By default, a relation gets the name of the related entity. This can create duplicates.

The mobile client uses the name columns as the display name in the “Related” menu, so the names have to be unique. Double-click on a relation and a popup window will appear. The name for the relation can be changed there.

Note: If there are duplicate relation names, the mobile client will only show the first occurrence of that name and skip the other ones.

Edit

Remove

The “Remove” button removes the selected item from the form. A confirmation popup will appear. After confirming the delete, the selected item is removed from the form.

Edit

Deleting a Form

Select a form from the list and click the “Delete” button. A confirmation popup will appear. After confirming the delete, the form is unpublished. Publish the form and it will be removed.

Note: Clicking the undo action on a deleted form will reactivate it.

Edit

Importing and exporting a form

Just as with profiles and views, it’s possible to import and export forms. When the “Import” button is clicked, a popup window appears. A profile, the entity and the import XML file must be selected.

An existing form can be overwritten by a new version. It’s possible to export an existing form and import it into another system. To export a form: Select a published form from the list and click the “Export” button. A file download dialog will appear and the export file can be saved to the hard disk.

Edit

Filters

Filters determine how much data gets synchronized to the mobile devices. As mentioned in chapter “Profiles”, filters can be defined per entity per profile. If there are no filters applied for a particular entity, all information the user is allowed to see is being synchronized.

Click on the “Forms” menu item in the main menu. The Filters overview is shown. From this overview it’s possible to Add, Edit, Delete and Copy filters. Filters can also be imported and exported and modifications can be published or undone.

Filters overview

Filters can be combined to get a more precise dataset. Filters can get pretty sophisticated, combining AND/OR clauses and linked entities. However, sometimes it’s not possible to get the proper data using just one filter and that’s where filters must be combined to get the desired result. The data retrieved from each individual filter is combined, duplicates are removed and the result is transferred to the client.

It’s recommended to keep filters as simple as possible and to keep the number of filters per entity low. However, it’s more important to keep the filters simple than to keep the number of filters low. So in general, using two simple filters is better than one large, complex filter.

Keep in mind that filters are converted to SQL queries on the CRM database. The more complex the filter, the more complex the SQL query. This puts a bigger load on the server and can affect performance adversely. Contact the CRM/SQL administrator for more information on the performance of filters/queries. He or she can profile the SQL database and fine-tune performance if needed. For further reference see “Optimizing and Maintaining Microsoft Dynamics CRM 4.0”.   Edit

Adding a filter

Click the “Add” button to create a new filter. A popup window will appear. A profile and an entity to add the filter to must be chosen. A filter name must also be entered.

Add a filter

Edit

Edit a Filter

When the filter is created the filter can be edited. The XML tab shows a read only textual XML view of the filter.

An example: Create a filter for Accounts named “My Active Accounts with Activities in the last 6 months”. This will filter all active accounts the user is the owner and that have related activities that have been modified in the last 6 months.

Create a new filter. Choose a profile and the account entity. Fill the “Filter name” field with a descriptive name, like “My Active Accounts with Activities in the last 6 months”.

Add a filter

Add a Filter with 2 Conditions:
  • Statecode: Active.
  • OwnerId: Current User.

To add these conditions, perform the following actions: Right-click the “Account” node and select “Add Filter” from the popup menu.

Add a filter

In the popup screen select “And” for the type of filter, because both conditions need to be met.

AND filter criteria

This will result in an AND statement. Click on “OK” to return to the “Filter” tab. Right-click on the Filter (And) node and select “Add Condition”.'

AND filter criteria

Define the conditions like the following figures.

AND filter criteria AND filter criteria

The “Operator” and “Value” fields change based on the type of field that is chosen. Not all operators apply to all types of fields. DateTime operators like “Today” or “Last X Months” obviously only apply to DateTime fields and will only show in the list of operators when a field of type DateTime is selected.

The same applies to the “Value” field. When available values are known, as the case is for “Statecode”, and picklist fields, the “Value” field displays those values to choose from.

Clicking on “OK” returns you to the filter tab. Here you can add the second condition. This time select the field “OwnerId”. The list of operators will now show “Equals Current User”.

The filter tab should now look like the following figure.

AND filter criteria

For the second part of the filter a link with “Activities” must be created and filtered on the “ModifiedOn” field. Right-click on the “Account” node and select “Add Link-Entity”.

Link entity

A popup window will appear where link entity can be selected.

Link entities

Most of the time the “1 to Many” relations will be used when selecting a link entity. We want to link to activities using the “Regarding” (regardingobjectid) field. So this will get activities where the account is in the regarding field. It’s also possible to link via activityparty.partyid. That way it’s possible to select activities where an account is a party member (resource, optional attendee, requiredattendee, etc.).

Click “OK” to return to the filter tab. Finally, add a filter on the “ModifiedOn” field of the linked activity. Right-click the linked entity node and choose “Add Filter”. Select the AND type. Then right-click the Filter (AND) node and select “Add Condition”.

Filter

When the “OK” button is clicked, the filter is validated. If no validation errors are found, it’s saved.

This is just one example of a filter that showed the basic principles of filters, conditions and linked entities. It’s possible to add as many conditions to a filter as required. Multiple levels of linked entities can also be added. In theory there’s no limit to the amount of filters, conditions and linked entities that can be added. However, the sync filters are translated into SQL and executed by SQL Server. The more filters, conditions and linked entities are added, the more complex the SQL query becomes and this affects performance. So, keep it as simple as possible.

Edit

Deleting a filter

Select a filter from the list and click the “Delete” button. A confirmation popup will appear. After confirming the delete, the filter is unpublished. Publish the filter and it will be removed.

Note: Clicking the undo action on a deleted filter will reactivate it.

Edit

Importing and export a filter

Just as with profiles, views and forms, it’s possible to import and export filters. When the “Import” button is clicked, a popup window appears. A profile, the entity, the filter name and the import XML file must be selected.

Filter

An existing filter cannot be overwritten by a new version. It’s possible to export an existing filter and import it into another system.

To export a filter: Select a published filter from the list and click the “Export” button. A file download dialog will appear and the export file can be saved to the hard disk.

Edit

Customizations

The section “Customizations” contains all customizations that can be used in the application. This is a very powerful new feature, because it enables administrators to easily configure and deploy customizations in the entire organization. Customizations defined per profile.

Customizations overview

The following customizations can be added into the application:
  • Customization files: The following types of customizations can be added:
    • View extensions. For more information, see chapter “Manage extensions”.
    • Form controls. For more information, see chapter “Add Custom Control”.
    • Sitemap Menu items.
    • Callout extensions.
  • Language packs: When added, the language pack is automatically deployed to the Mobile Clients. Depending on the locale on the Mobile Client and the language settings in CRM, the language is switched.
  • Callout.Config.Xml: The callout XML File, used to configure events on the Mobile Client.
  • Icons: Images for custom or standard entities.
  • Other: Other files that must be deployed to the Mobile Client. The administrator must set the location of this file.

Note: The following chapters will not explain how to create a customization. This information is available in the SDK.

Edit

Adding a customization

When the “Add” button is clicked, a popup window will appear. Here a profile, the type and file can be chosen.

Add a customization Add a customization

After clicking the “OK” button, the customization file will be validated. If the file is incorrect, a popup will displayed with an explanation.

Edit

Edit a customization

Once a customization is added it, the name and type cannot be edited. However, the customization can be overwritten by a newer version of the customization.

Edit a customization

The name of the customization is set in the customization file. If the name must be changed, open the customization file and modify the XML file that contains the name. After this is done, double-click the customization and upload the new customization file.

Note: If the customization must be present in multiple entities, the customization must be added to each entity.

Edit

Deleting a customization

Select a customization from the list and click the “Delete” button. A confirmation popup will appear. After confirming the delete, the customization is unpublished. Publish the customization and it will be removed.

Note: Clicking the undo action on a deleted customization will reactivate it.

Edit

Exporting a customization

To export a customization: Select a customization from the list and click the “Export” button. A file download dialog will appear and the export file can be saved to the hard disk.

Edit

Reports

Reporting is an extension of the logging system. Whenever a Mobile Client synchronizes with the CWR Server, the requests made are saved in a log. To view this data, a number of reports have been created.

These reports are:
  • Client snapshot overview: Displays all records that have been transferred to and from the Mobile Client.
  • Error log overview: Displays all errors that have occurred on the server and Mobile Client.
  • Synchronization overview: Displays all communication from and to the Mobile Client.

Reports overview

Click on the “Reports” menu item in the main menu. The Reports overview is shown. From this overview it’s possible to run a report.

Note: The error log overview is a link to a custom CRM entity, called “Mobile CRM Logs”.

A report can have one or more parameters that have to be set. When the report “Synchronization overview” is opened, the report can be filtered according to the Mobile User. Drilldown reports, like “View sync history server” contain date parameters that are used in the filter.

Edit

Running reports

Double-click or select and “Run” a report. A popup window will open containing the report.

Run a report

Edit

Troubleshooting

Edit

Synchronization logging

It’s possible to log all synchronizations made from the Mobile Clients. These logs are stored in the CWR organization database. To enable the synchronization logging, open the Mobile CRM Server Administrator on the server.

CWR Mobile Server Administrator

Select the organization where the logging must be enabled. The tracing options are enabled. There are four tracing options available:
  • Enable tracing: This will create a trace log in the log directory or each CWR Server process.
  • Enable sync history server: This option is used to log all synchronization responses from the server to the Mobile Client.
  • Enable sync history client: This option is used to log all synchronization requests from the Mobile Client to the server.
  • Enable full client request: Logs all data that is being synchronized.

After the logging has been configured, a number of reports can be used to view the data. More information about reporting, see chapter “Reports”.

Edit

I see a red status bar at the bottom of the main menu.

A red status bar means that something is wrong with the license. It can be that the license file is missing or the registered name doesn’t match the CRM organization name. When the mouse is hovered over the red status bar it’ll show a tooltip with the error message. The detailed license error can be found in the log file.

Edit

The registered Name doesn't match.

This error message indicates that the registered name you provided when requesting the license doesn’t match with the organization name you used to install CRM. You can check this by looking at the primary business unit name in CRM. The primary business unit is the business unit that doesn’t have a parent business unit.

Note: The registered name is case sensitive.

Edit

I get an error message when I try to delete an entity from the entity list.

When trying to delete an entity an error message can appear. The most common cause for this error is that the entity is still in use in a profile. To fix this error, first delete the entity from all profiles and then delete it from the entity list.

Edit

I get an error message when I try to delete a profile.

When trying to delete a profile the following error message can appear.

Error deleting the profile

The most common cause for this error is that the profile still contains users. To fix this error, remove all users from the profile, either by moving them to another profile or by deleting them.

Trackbacks: Installation Guide - CWR Mobile CRM 4.1, Main Page, User Guide - CWR Mobile CRM 4.2 for Windows Mobile (Touchscreen)

ScrewTurn Wiki version 2.0.35. This Wiki contains 64 pages.