7. Dynaway Mobility Functionality Configuration

After the setup, set up and configure the Mobile Client, Users, Roles and Dynaway Mobility features

Introduction

This section contains guides on how to set up and configure the Mobile Client in the Mobility module in Dynamics 365 for Finance and Operations.

Prerequisites

You have completed mobile deployment, as described in the section above.

Audience
Sysadmin, Partner Consultant

Security Roles

In Dynamics 365 for Finance and Operations, security roles are used to grant access rights to a user, allowing the user to access certain menu items and perform specific tasks.

Security roles relate to Client Access Licenses (CAL) in Dynamics 365 for Finance and Operations. Refer to the article Security roles in the Mobile Setup for Dynamics 365FO section for an overview of security roles related to the Mobile Client.

Users and User Groups

User setup tasks must be completed in the Mobility module as well as in Dynamics 365 for Finance and Operations.

Refer to the five articles below.

User Prerequisites

New Mobile Client users must be set up as system users, and they must be associated with a 'Person' in Dynamics 365 for Finance and Operations. A mobile client user will log into the Mobile Client using system user credentials (Azure Active Directory) and will be identified in Dynamics 365 for Finance and Operations as the associated person when making registrations on the Mobile Client.

  1. Set up new users in the System administration module (System administration > Users > Users).
  2. Set up new persons in the Human resources module (Human resources > Workers > Workers).
  3. Set up new users as Asset management workers (Asset management > Workers > Workers).

For further details, refer to the documentation for Microsoft Dynamics 365 for Finance and Operations.

Mobile User Setup

Mobile users must be added in Users setup in order to log in and use the Mobile Client. This form works across all company accounts in Dynamics 365 for Finance and Operations.

  1. Select Dynaway mobile > Setup > Users to open the form.
  2. Select New to add users, or Edit if you want to edit existing user data.
  3. When adding users, select the user ID (person).
  4. Select Save.

Add a user in Dynaway mobile
Add a user in Dynaway mobile

User Security Roles

The minimum requirements for Mobile Client user security roles depend on the functionality that the user will be using.

  • The "System user" role is always required.
  • The "Maintenance worker" role is required for making registrations related to Asset management.
  • The "Dynaway Mobile user" role is required for making registrations on the Mobile Client.

Example setup for user security roles
Example setup for user security roles

User License

The number of active users is validated against the Dynaway mobile user license key. If the number of active users exceeds the number of licensed users, a license warning will appear for all users when they log into Dynamics 365 for Finance and Operations.

You can change the number of active users by deactivating the Enabled check box (set it to "No") in Mobility > Setup > Users for users that are no longer using the Mobile Client. Those users will be inactive in relation to the Mobile Client license. If no users can be disabled, you must purchase additional Mobility user licenses in order to remove the license warning.

Mobile users also require a Dynamics 365 for Finance and Operations user license. Refer to Microsoft Dynamics 365 for Finance and Operations documentation regarding license requirements.

User Groups

User groups can be used to group users on the Mobile Client with similar or identical skills or certificates. Adding user groups in the Dynaway mobile module is optional. If users are not part of a group, they will all share the mobile configuration settings set up for all users.

  1. Select Mobility > Setup > User groups to open the form.
  2. Select New to add new groups, or Edit to edit existing groups.

You can also add a group to a user in the Users form (Mobility > Setup > Users).

User groups in Mobility.
User groups in Mobility.

Module Configuration

The module configuration defines which functions are available for users using the Mobile Client. Select Mobility > Setup > Module configuration to open the form.

The configuration parameters are shown in a tree structure. The leaves in the tree structure represent a parameter. The leaves are grouped based on functional area. Using standard functionality, the following parameter groups are available:

  • Asset Management
  • General

Change a Configuration Value

All leaves in the configuration structure have a default parameter value that can't be edited or deleted. If required, you must add additional lines to change the value of a parameter – defining a new value for all users, or a user group, or a specific user.

Do this by first selecting a parameter and selecting Add to add an additional value line. When adding a line, you must define both the scope of the value and the selected value. If the scope is either a user group or a user, a specific user group or user is also required.

In the screenshot "Screen-01" below, an example of a configuration setup for "Checklists" is shown. This setup relates to viewing and working with checklists, which are related to work orders, on the Mobile Client. The default value is 'true', meaning all users can view and work with checklists. However, this setup has been modified so the user/worker Charlie Carson can't see checklists related to work orders because that parameter value is set to 'false'.

In the screenshot "Screen-02" below, the Scope column is highlighted to show you the options for setting up different parameter values:

  • "Default" shows the pre-defined parameter value, which is automatically set up during installation of the Dynaway mobile module.
  • Create a new line, select "All", and select the opposite value to "Default" if you want all users to be allowed to use (or not use) a certain function.
  • Create a new line, select "User group", and set up a parameter value to be valid for a specific user group.
  • Create a new line, select "User", and select a specific user/worker, if you want to set up a parameter value for that user.

Screen-01: Configuration for
Screen-01: Configuration for "Checklists"
Screen-02: Options in
Screen-02: Options in "Scope" column

Running Environment

Changes made to the module configuration are effective immediately after the changes have been saved. However, the Mobile Client only retrieves the module configuration during user login on the Mobile Client. This means that changes will not have an effect for a user until that user is required to log in again.

The tables in the two articles below provide an overview of the configuration setup in Dynamics 365 for Finance and Operations > Mobility > Setup > Module configuration for the Mobile Client, including a description of standard settings.

Object Management

This area includes configuration of functionality and modules on the Mobile Client.

Configuration
section
Configuration Default
value
Description
Enabled true

Enable/disable the Asset management module.

Assets Asset and functional
location attribute add
false Allow adding attributes to assets and functional location attributes.
Assets Asset and functional
location attribute update
false Allow updating asset attributes and functional location attributes.
Assets Asset BOM true

Enable/disable asset BOM.

Assets Asset counters true

Enable/disable asset counters.

Assets Asset image updates false

Allow updating the image for an asset.

Assets Document attachments true

Enable/disable asset document attachments.

Assets Event history true

Enable/disable asset event history.

Assets Faults true

Enable/disable asset faults.

Assets Maintenance downtime false

Enable/disable maintenance downtime functionality on work orders
and requests.

Assets Offline assets false

Enable/disable downloading assets with only basic information available.
This is done to allow users to create requests and work orders while offline.

Maintenance
requests
Allowed lifecycle states [param]

List of maintenance request lifecycle states that can be set
on the Mobile Client. An empty list means that all
maintenance request lifecycle states can be set.

Maintenance
requests
Document attachments true Enable/disable attachments on maintenance requests.
Maintenance
requests
Enabled false

Enable/disable maintenance requests on assets.

Maintenance
requests
Faults true Enable/disable faults on maintenance requests.
Planning board Enabled false

Enable/disable the Planning board module.

Planning board Planned absence false

Show planned absence for time registration users on the Planning board.

Planning board Readonly mode false

Enable/disable read-only mode on the Planning board.

Planning board Schedule-duration
modification
false

Allow scheduling a different duration than forecasted
on the job during planning.

Planning board Split maintenance jobs true

Allow splitting a work order job schedule in two
individual schedules.

Planning board Week start day [param]

Select the day to be shown as the first day in the
week in the calendar on the Planning board.
The default setting is 'Monday'.

Planning board Work order card title
configuration
[param]

Configure how work order jobs are displayed
on the Planning board.

Service portal Document attachments true

Enable/disable attachments on requests in the
Service portal.

Service portal Enabled false

Enable/disable the Service portal module.

Service portal Faults true

Enable/disable faults on requests in the
Service portal.

Work orders Allowed lifecycle states [param]

List of work order lifecycle states that can be set
on the Mobile Client. An empty list means that all
work order lifecycle states can be set.

Work orders Checklists true

Enable/disable work order checklists.

Work orders Create related work order false

Enable/disable creating related work orders.

Work orders Create work order false

Enable/disable creating work orders.

Work orders Create work order line false

Enable/disable creating work order lines (jobs) on a work order.

Work orders

Work order deep link false Enable/disable usage of deep links for work orders in Planning Board.
Work orders Document attachments true

Enable/disable work order document
attachments.

Work orders Item forecast modification false

Enable/disable modifying work order
item forecasts.

Work orders Offline inventory false

Allow storing a snapshot of a partial inventory
offline. The snapshot is from a site, warehouse,
and/or location specified by the user on the Mobile Client.

Work orders Purchase requisition false

Enable/disable creating purchase requisitions on work orders.

Work orders Remarks and reason codes false

Enable/disable showing fields to enter remarks and select
reason codes on work orders.

Work orders

Responsible worker
modification

false

Enable/disable editing Responsible worker on a work order.

Work orders

Work order schedule
modifications

true Allow making changes to work order schedules.
Work orders

Work order schedule
work status

false

Show work status on scheduled work order jobs and
use this information to automatically make changes on
work order lifecycle state. If this parameter is not enabled,
the user must manually change work order lifecycle state.

Work orders >
Registrations

Expense registrations true Enable/disable expense registration on work orders.
Work orders >
Registrations
From and to time on
hour registrations
false

Enable/disable registration of "From" and "To" time on
an hour registration. If the parameter value is set to 'false',
it means you enter duration in hours on a work order job,
but a specific time interval cannot be selected.

Work orders >
Registrations
Item registrations true

Enable/disable item consumption registrations on
work orders.

Work orders >
Registrations
Lock item registration
storage dimension
false

Enable/disable forcing the Mobile Client to use inventory
dimensions from the functional location on the work order
job during item consumption, if those dimensions have
been set on the functional location.

Work orders >
Registrations
Registrations for other
workers
false

Allow create and edit registrations on behalf of
other workers.

Work orders >
Registrations
Start/stop on
maintenance jobs
false

Enable start/stop of timer that tracks work hours
spent on a work order job.

General

This area includes configuration of general mobile functionality.

Configuration
section
Configuration Default
value
Description
Document attachments Document attachment
cache size
75

Define the amount of storage in megabytes that will be used for
non-prefetched attachments before the least recently used
attachments will be deleted from the Mobile Client to make
room for recently requested attachments.

Document attachments Max. attachment
upload size
15000

Define the maximum file size in kilobytes for document
attachments (default is 15 MB per file).

Document attachments Max. image attachment
upload size
200

Define the maximum file size in kilobytes when uploading
image attachments (default is 200 KB per file).
Larger files will be resized to this value.

Entity synchronization

true

Enable synchronization of entities for offline operation.

NOTE: This is only relevant if mobile users are only using the Planning board.

Telemetry

false

Enable collection of telemetry data on the Mobile Client.

Configuration of all module parameters is set up in Mobility > Setup > Module configuration. Each parameter has a default value that can be changed for all users, a specific user group, or a specific user. For any user, the most specific setup is always used.

Offline Functionality

The Mobile Client can be used outside company premises, for example, in remote areas with limited or no internet coverage. Registrations on the Mobile Client are transferred to the company's ERP system, Dynamics 365 for Finance and Operations, when an online connection is available. This solution supports offline functionality meaning that registrations can be made by workers even if Dynamics 365 for Finance and Operations is temporarily offline.

The following should be observed regarding data synchronization:

  1. Data synchronization only takes place when the Mobile application is active on the mobile device.
  2. When data are registered on the Mobile Client, the client will attempt to submit those changes to Dynamics 365 for Finance and Operations.
  3. A complete synchronization step, during which data updated in Dynamics 365 for Finance and Operations are synchronized to the Mobile Client and vice versa, takes place every 30 seconds.
    1. When you create a work order from a request, data are submitted immediately.
  4. From Dynamics 365 for Finance and Operations, a system administrator can force a rebuild of the client databases. However, the Mobile Clients will not start a rebuild before all local changes have been submitted to Dynamics 365 for Finance and Operations.

Generally, all data are available on the Mobile Client in offline mode, with a few exceptions:

  • While the Mobile Client is in offline mode, item consumption registrations can only be viewed and deleted. However, if Offline inventory functionality is enabled, you can also create and update item consumption registrations. When the Mobile Client is in online mode, you can perform all tasks on item consumption registrations.
  • Item forecasts on work orders can only can be viewed and deleted when the Mobile Client is in offline mode. However, if Offline inventory functionality is enabled, you can create, view, update, and delete item forecasts in offline mode.
  • Working with the Planning board and Service portal requires online mode.
  • Search for data not already available on the Mobile Client requires online mode.

In some circumstances, errors may occur while synchronizing registrations from the Mobile Client to Dynamics 365 for Finance and Operations. If the errors are caused by data, detailed error information can be seen in the "Synchronization messages" area of the settings page. Generally, the analysis and processing of these messages will not be performed by the worker making the registrations, but by a supervisor, manager, or system administrator.

Example: A worker made hour registrations on a work order on a Mobile Client in offline mode and then logged out and went on a one-week vacation. In the meantime, data were not submitted to Dynamics 365 for Finance and Operations, and when the worker returns and logs in again, the data transfer fails because, during the one-week period, a manager changed the status of the work order, on which hour registrations was made, to "Completed". You cannot make registrations on a completed work order, which is why an error message will be displayed in the synchronization log when the Mobile Client goes online.

Overview of offline setup
Overview of offline setup

Data Entities

Data sent to and from the Mobile Client are sent as data entities, which are stored offline by the Mobile Client in a local database. The data entities can be viewed in entity setup.

Entity Setup

Select Mobility > Setup > Entity setup to see the list of mobile entities.

Note: The entities, which should be synchronized to the Mobile Clients, must be enabled. Usually, that would include all entities.

All the data entities that are eligible to be sent to the Mobile Client are stored in a synchronization table in the database, which must be initialized before you can start using the Mobile Client. No data will be available to mobile users on the Mobile Client until data initialization has been completed.

Entity list

Each line in the Entity setup list represents a data entity that is being sent to the Mobile Client. Entities may contain data from one or more tables in Dynamics 365 for Finance and Operations. Each entity can have a number of properties (described in the table below), which affect the synchronization and the amount of data being sent. These properties can't be changed, but some individual properties can be adjusted or contain related setup.

Enabled

This property indicates whether or not the entities should be monitored and sent to the Mobile Clients.

Personated

This property indicates if the data entity will be personalized to the individual mobile user.
Personalized entities mean that data will only be synchronized to devices for selected mobile users.
This occurs if there is a relation between the user and the data entity. Personalizing will be done
during an 'initialize synchronization data' job each time data inside Dynamics 365 for Finance and
Operations are created or updated.

Example: "Work orders" is a personalized entity. Work orders will only be personalized and
synchronized to the users' mobile devices when the work order, or any of the work order jobs,
have been scheduled to the users. The result is that the number of work order data on the users'
mobile devices are greatly reduced.

Some entities may also get personated to users based on their behavior on the Mobile Client,
even if they have not been directly linked to the data. If the user requests data on the Mobile
Client that are not available offline, this can result in personalizing new data entities.

Example: If a user does have any work related to a specific asset, data for that asset will be
unavailable offline as this is not automatically personalized. However, if the user uses the
online search to find an asset and starts working with the asset, the asset data will be
personalized.

Document
references

This property indicates if the data entity supports attachments on the Mobile Client. Attachments
are handled in Dynamics 365 for Finance and Operations as document references.

If document references are related to a data entity, document references can also be included in
the data entity for offline use. Data can either be downloaded on demand or using prefetch. The
configuration determining which document types are related to an entity, and how data are
downloaded, is described in the article Attachments.

Date range
enabled

Date range enabled indicates if the entity synchronization can be adjusted to take less data,
based on the age of the data. This is done by using a sliding window of a set amount of days -
refer to the "Days" description below. If no sliding window is available, all historical data are
sent to the Mobile Client.

This setting will only have an effect during 'entity initialization'.

Days

See the "Date range enabled" description above.

Change this value to reduce the amount of data being sent to the Mobile Client. The number of
days indicate the number of days in the past that will be included in the synchronization of the
entity. If the number of days has not been specified, or if it is set to zero, no sliding window of
data will be applied.

Example: Setting up a sliding window for a period of 90 days on 'TimeRegistrationHeader' and
'TimeRegistration' means that only time registrations for the past 90 days are available to the
user on the Mobile Client.

Initializable

This indicates if the entity type can be initialized directly.

Initialization
count

Number of entities generated if initialization is performed with the current setting (Days).

Entities

This value shows the total number of data entities that are currently stored in the
synchronization table. If the entity is not personated, this is also the number of data
entities being sent to all mobile users.

A large value may indicate a large amount of data being sent to Mobile Clients for
offline use. Setting up a date range and/or 'initialize synchronization data' could reduce
the number of entities.

Personations

This value shows the number of personalized entities.

A large value may indicate that a large amount of personalized synchronization entities
have been generated. If the entity initialization is taking a long time to run, the reason
could be a large value set in this field.

Initialize entity allows an entity to be initialized individually. In the Entity setup list, the Entity initialization button is only intended for debugging or testing purposes and not recommended to use in production environments. It can be used to test the impact when setting a sliding window on an entity. This function will drop synchronization data for an entity and recreate the synchronization data. In production environments, entity initialization should always be used if changes to entity setup have been made.

Entity Initialization

The data initialization job will, based on user and entity setup, identify and add the data required by users to the synchronization table. Only data required by users will be added to the synchronization. In most cases, the data entities will be personalized to specific users. This means that data are only sent to users that require the data, which is done in order to limit the overall data size being sent to individual users.

Example: Maintenance work order data are personalized based on work order scheduling. This means that the work order data entity - and associated data entities – will only be sent to the users who have been scheduled to the work order.

  1. Click Mobility > Periodic > Entity initialization.
  2. In Mobility > Setup > Mobile parameters > Change tracking > Synchronization status FastTab, the Initialization active check box may already be activated on the company account on which you want to run initialization. If that check box is activated, you can't start a new initialization. See example in screenshot "Screen-02" below. Therefore, if you want to run initialization once more, for example, if the first initialization failed, you must select "Yes" in the Force field in Entity initialization dialog, which will override the mobile parameters setup.
  3. Select "Yes" in the Verbose field if you want to see detailed information about the initialization. Detailed information is shown in an Infolog message.
  4. Select OK to run data initialization.

The screenshot "Screen-01" below shows the Entity initialization dialog.

Synchronization status and paging information is shown in Change tracking:

  • The Synchronization paging section shows how many records are currently held in the temporary synchronization paging table, which is used to ensure a steady flow of data to the Mobile Clients. Under normal conditions, this number should be fairly low; only after a new data initialization has completed should a large number be shown in the Records field. Under normal conditions, a large number may indicate a problem with data or synchronization in general.
  • The Synchronization status section shows the synchronization status for each company account for which synchronization has been initialized. The table shows the company account, if initialization is currently running for this company account, start and end times for the latest initialization, database change tracking version, number of initialized entities, and the number of personations currently active in the company account.

If any of the data entities have been disabled by setup, or data related to entities have been changed - either by module updates or custom changes - synchronization data must be reinitialized.

Screen-01: Entity initialization dialog
Screen-01: Entity initialization dialog
Screen-02: Initialization active on a company setup
Screen-02: Initialization active on a company setup

Initialize Data in Multiple Companies

If you have multiple company accounts in which you need to initialize data entities, the Multicompany entity initialization functionality allows you to quickly start data initialization for several companies at a time.

  1. In the Synchronization status grid view, select the company accounts that should be initialized by selecting the Initialization active check box for the accounts.
  2. Select the Multi company initialization button to start data initialization.

If you create a batch job for the initialization process, each company account initialization will be created as a separate task, allowing for parallel execution of the entity initialization. Depending on the hardware, this setup may reduce the total time for data initialization significantly. If you don't create a batch job, the company accounts are initialized in sequence.

Multiple company entity initialization
Multiple company entity initialization

Data Synchronization

When the Dynamics 365 for Finance and Operations environment is running, and the Mobile Clients are used, initialization data synchronization is not required. Any changes to data, which are required by users, will be identified based on database change tracking. This means that any changes made in Dynamics 365 for Finance and Operations are added to the synchronization table immediately, if those changes are required by one or more mobile users.

Example: A maintenance work order is scheduled to a user in Dynamics 365 for Finance and Operations, which will result in an update to the work order database table. This change in data triggers the data to be added to the synchronization if the user scheduled on the work order is a mobile user.

Initialization of synchronizing data in a running environment should only be done during planned system maintenance, or if synchronization data sent to users have been identified as incorrect or containing data errors.

Inspect synchronization data

It is possible to inspect the number of entities and the data content that are sent to the Mobile Clients. This can be used for debugging purposes if offline data on Mobile Clients are unavailable or incorrect.

Select an entity in the grid view, and select Inspect in the action pane to open this form.

You can inspect the synchronization table for all entities by clicking Mobility > Inquiries > Inspect entities. See screenshot example below.

The grid views show all the entities that have been added to the synchronization.

  • The Inspect entities grid shows a line for each entity.
  • Selecting a line shows a list of workers to which the entity has been personalized (if any), and the data included.
  • In the Entity personations section, a line indicates a personalized entity. The worker name indicates the user to which data has been personalized.

Inspect mobile entities
Inspect mobile entities

Handlers

Handler setup shows the data handler and data provider classes and data handler methods used on the Mobile Client. These handlers are used for data synchronization or online data requests.

Select Mobility > Setup > Handler setup to open the grid view.

Each mobile handler is represented by an ID, which is used by the Mobile Client when communicating with Dynamics 365 for Finance and Operations. Each handler has a corresponding Dynamics 365 for Finance and Operations class and method, which represent the code that handles the request.

When this form is opened, available handlers are automatically initialized/refreshed. During initial installation and setup, you must open this form; otherwise the Mobile Client will be unable to connect to Dynamics 365 for Finance and Operations.

The Mobile Client will not be able to connect to handlers if the handlers haven't been initialized. If any custom data handlers have been added, or existing handlers have been updated, you may need to open the form in order to initialize new handlers.

Enable logging

On the handler setup, you can specify if incoming requests from the Mobile Client, and the result of these requests, should be logged to the handler log. Enabling logging can be used to identify errors seen on the Mobile Client, or data created on the Mobile Client that haven't been committed in Dynamics 365 for Finance and Operations. If logging is enabled, the contents of data received, and the response, are added to the handler log. In the overview, you can see the number of logs in the 'Handler logs' column and open the logs from there.

Enable logging on a handler by selecting Edit and selecting the Enable logging check box on one or more handler lines.

Handler setup.
Handler setup.

Skip XDS Policies

Managers can set up that XDS Policies are skipped for online calls from mobile client.

This can be done using 'Skip XDS Policies' parameter in Mobile parameters form by going to Mobility > Setup > Mobile parameters.

In Mobile parameters, toggle the button 'Skip XDS Policies' to say Yes.
In Mobile parameters, toggle the button 'Skip XDS Policies' to say Yes.

Work Status

Work status is used on the Mobile Client to define work progress on a work order job. Work status has five values, which can be mapped to different work order lifecycle states.

Depending on the setup, which we will explain in this article and related sub-articles, changing the work status on a work order job schedule may update the work order lifecycle state on the work order automatically.

Changing the work order lifecycle state on a work order does not change the work status of a work order job schedule automatically.

A work order may contain one or more work order jobs.

A work order job may contain one or more work order job schedules.

The five work status values available are:

  • Not started
  • In progress
  • Waiting
  • Canceled
  • Work completed

There are different rules for when a work order lifecycle state should be updated, depending on the work status of one or all work order job schedules.

Not started
Update the work order lifecycle state (for example "Scheduled") when all work order job schedules on the work order are in this work status.

In progress
Scenario 1: Update the work order lifecycle state (for example "In progress") when at least one work order job schedule is in this work status, and all other schedules are either "Not started", "Canceled", or "Work completed".
Scenario 2: Update the work order lifecycle state when some work order job schedules are in "Canceled" or "Work completed" while the others are in "Not started".

Waiting
Update the work order lifecycle state when at least one work order job schedule is in this work status.

Canceled
Update the work order lifecycle state when all work order job schedules are in this work status.

Work completed
Update the work order lifecycle state when all work order job schedules are in this work status.

Scenario 1: A work order contains five work order jobs. When you complete each job, you update work status to "Work completed". When all jobs have status "Work completed", the work order lifecycle state is automatically updated.

Scenario 2: A work order contains 10 work order jobs:

  • Two jobs have work status "Canceled"
  • Three jobs have work status "Work completed"
  • Five jobs have work status "In progress"

As you complete the five "In progress" jobs, you update the work status of those jobs to "Work completed". When you update the last of the five work order jobs to "Work completed", the work order lifecycle state is automatically updated even though two work order jobs have been canceled.

Setup in Object Management

If you want to use work status to automatically update a work order lifecycle state, you must set up a mapping between a work status and a work order lifecycle state.

You set up the mapping of work status and work order lifecycle state in Asset management.

1. Select Asset management > Work orders > Lifecycle models.
2. Select the Mobile work status to state mapping FastTab.
3. Select Add line.
4. Select a Work status, and select the work order lifecycle state that you want to update a work order to when you select the work status.
5. Repeat steps 3-4 if you want to add more lines.
6. Save the setup. The screenshot below shows our minimum recommended setup.

Refer to Microsoft documentation regarding the general setup of work order lifecycle models in Asset management: Work order lifecycle states.

If you've set up several lifecycle models, work status mapping should be set up on each lifecycle model.

Minimum recommended setup for mapping work status and work order lifecycle state
Minimum recommended setup for mapping work status and work order lifecycle state

Setup in Dynaway Mobile

Next, you set up the mobile workers who should be able to select work status on a work order job on the Mobile Client. This is done in D365FO in Mobility > Setup > Module configuration > Asset management > Work orders > select config "Work order schedule work status".

Refer to the article Module configuration and related sub-articles to learn more about configuration of the Mobile Client.

You can set up specific workers (as shown in the screenshot below), or user groups, or all mobile workers to be allowed to select work status on work order jobs on the Mobile Client.

Workers who are not set up to use work status can only change work order lifecycle state on a work order.

Workers who can change work status on a work order job are also able to change work order lifecycle state on the related work order on the Mobile Client. In that case, we recommend that you instruct your workers to only use work status.

Module configuration setup in Mobility module.
Module configuration setup in Mobility module.

Usage on the Mobile Client

On the Mobile Client, work order lifecycle state is shown in the upper-right corner of the work order details screen.

Work status is shown in the upper-right corner of the work order job details screen if a schedule has been created (see example in the screenshot below).

When you update work status (by selecting the current status, which opens a dialog), a message confirming the update is shown on the Mobile Client.

Work order job details screen. Current Work Status (in this case
Work order job details screen. Current Work Status (in this case "In Progress") is shown in the upper-right corner of the screen.

Time Registration

Timesheet registrations are by default posted to project journals, but they can also be posted to project timesheets. You can choose to register hours on the mobile client either for all users, or only for some users or user groups. The procedure for registering hours in the mobile client is the same whether you're registering time to project journals or to project timesheets.

To change the way time is registered, go to:

  1. Mobility > Module configuration > Work execution > Work order > Registrations > Project timesheet time registration.
  2. If you want all registrations to be on project timesheets, you can simply set the scope to 'All' and the parameter value as 'true'.
  3. Otherwise, you can specify how the time registration should be done for specific users or user groups.

Project timesheet time registration module configuration.
Project timesheet time registration module configuration.

Attachments

The Mobile Client supports handling file and image attachments using standard Dynamics 365 for Finance and Operations document handling. Enabling this functionality requires defining document type setup on data entities, and setup in the module configuration.

Attachment setup is enabled for each specific entity.

Document types that have been set up on entities will be included in the synchronization and will be available on the Mobile Client for offline use.

Set up Document Types

The basic requirement for using attachments is that document references are supported on the entity, and that document types have been set up for the entity.

Entities that support document references can be seen by the check mark in the grid view. To configure document types for entities with document support, select an entity and go to the Entity setup document types grid view.

  1. Select Mobility > Setup > Entity setup.
  2. Select the entity. The selected entity must support document references.
  3. Select Mobility > Setup > Document types to see document setup across all entities.
    1. You can't add support for document references on entities dynamically. It's not possible, using setup alone, to enable document references on entities that do not already support it.
  4. Add one or more document types that should be available on the Mobile Client. You will need to reference a Dynamics 365 for Finance and Operations standard document type and a permission level. For documents that are supposed to be attached from the Mobile Client, you must also select a Document type identifier.
    1. Select New to create a new document type. The screenshot "Screen-01" below shows the Entity setup document types grid.
  5. The type value refers to standard Dynamics 365 for Finance and Operations document types, which are managed in Organization Administration > Document management > Document types. Consider whether existing document types can be used, or new document types should be added.
    1. In the screenshot "Screen-02" below, you see an example of a document type used for attaching documents like PDF files.

The upload identifier value is specific to the Mobility module and is used by the synchronization framework to identify incoming and outgoing file types when new attachments are created from the Mobile Client. Refer to the table below to select the required value.

Document
identifier
Description
Audio

Used for audio files, for example, mp3 and wav formats.

File/All

Includes file types if specific types haven't already been defined.

Image

Should be used for all image types. Images will be automatically reduced in size
to reduce use of network bandwidth and storage space on the Mobile Client.

Select "Attach file" in the document type Class field, and "Image" in the Group field.

Text

Used for handling text files, html pages (other than the sign off report), log files, etc.

Video

Used for handling video files, for example, mp4 and mov formats.

If the "File/All" identifier is configured for a specific entity type, it works as an "all files included" configuration, meaning any file type can be handled without having to configure it.

Permission level indicates if users on the Mobile Client should be able to read, create, update, or delete documents. The minimum value is read. Refer to the table below for permission level values.

Permission
level
Description
Read

Allows users to view documents on the Mobile Client.

Minimum value and the recommended value for most document types.

Create

Allows users to attach new documents/images using the Mobile Client.

Update

Allows users to update/replace existing attached images/documents.

Delete

Allows users to delete attachments.

This value is generally not recommended. Deleted files will be removed from the Mobile Client and Dynamics 365 for Finance and Operations without any option to undo.

The Caching field indicates whether data should be fetched automatically to the Mobile Clients. If the Caching check box has not been selected, data are not retrieved until the user selects the attachment to view it. This also means that if the Mobile Client is in offline mode, the data related to attachments are not available.

Once the user has downloaded attachments, they are available on the Mobile Client in online and offline mode.

Screen-01: Entity setup document types in Mobility
Screen-01: Entity setup document types in Mobility
Screen-02: Document types setup
Screen-02: Document types setup

Module Configuration

When the entity setup has been made, the attachment functionality needs to be enabled in one or more sections of the module configuration. Enabling attachments will make attachment menu items available on the Mobile Client.

See an example of enabling attachments on work orders in the screenshot below. It is a prerequisite, that documents have been set up on the work order data entity.

Attachments added to a maintenance job type setup in Asset management are automatically transferred to work order jobs on the Mobile Client, if they use a job type setup that includes attachments, and if the entity document type setup is set to be prefetched.

If an add blocker extension is set up in your browser, it may block access to attachments and asset documents on the Mobile Client. Attachments can be related to assets, requests, work orders, work order jobs, and checklist lines. Asset documents are set up on assets. To allow mobile users to see attachments and asset documents, you can either remove the add blocker extension, or you can allow the mobile site in the add blocker extension.

Module configuration setup for document attachments
Module configuration setup for document attachments

Create a Sign-off Report

When you've completed all the jobs/line on a work order, a maintenance worker and a manager or supervisor can sign off a report to verify completion of the jobs/lines related to the work order. The Sign-off report can contain various information about the work order depending on your needs.

Setup

  1. In order to have the sign-off report be available, the module configuration Work execution > Sign-off report > Enabled must be set to 'true' for the user.
  2. The contents of the sign-off report can be configured, depending the type of information you want to include in the report. This can be configured in Setup > Module configuration > Work execution > Sign-off report. See screenshot 01 below to see the possible configurations.
  3. The Customer signature and Worker signature are mandatory input fields - if you enable them, the user must fill them in before the sign-off report can be saved.
  4. It's possible to write some terms and conditions that will be added to the sign-off report. This can be done in Setup > Mobile parameters > General > Sign-off report.
    1. Whether they are shown depends on the lifecycle state/stage the work order is in when the sign-off report is created. This can be set on the lifecycle state/stage in D365 as seen in screenshot 02 below.
  5. In order to have the sign-off report be saved correctly, a specific document type must be added to Setup > Document types: Entity setup = WorkOrder, Type = SignOffReport, Document type identifier = SignOffReport, Permission = (Either: Create, Update, or Delete).

Create a sign-off report

  1. On the Work order details screen, select 'context menu' in the top right and then Sign-off report.
    1. Note that if the work order is not active, the user will be informed that the sign-off report can't be created for an inactive work order.
    2. Note that if the work order has non-processed mandatory checklist lines, i.e. not checked or set as N/A, the user is informed that some checks are not filled in, and they are also presented with a link to open the checklist.
  2. On the Sign-off report screen, you can see the report. The report is automatically filled out. View an example of a sign-off report in screenshot 04.
  3. If the worker and/or customer signature are enabled for the sign-off report, these must be filled in. Each of the fields Service technician signature and Customer signature is an input field where the name can be typed and a canvas where a signature can be drawn with the finger or mouse. See the input fields at the bottom of the report in screenshot 03.
  4. Select the Signature required button in the 'Service technician signature' field where the maintenance worker or service technician enters a name in the Printed name field and provides a signature in the large signature field.
  5. Select Apply to save the changes.
  6. Select the Signature required button in the 'Customer signature' field. The manager or supervisor enters a name in the Printed name field and provides a signature in the large signature field.
  7. Select Apply to save the changes.
  8. When the sign-off report has been approved and signed, it can be saved. It's saved as a PDF and added as an attachment to the work order. View an example of a sign-off report in screenshot 04.

01: Configuration of content shown on the sign-off report.
01: Configuration of content shown on the sign-off report.
02: 02: Specify if terms and conditions should be shown on the sign-off report on a lifecycle state/stage.
02: 02: Specify if terms and conditions should be shown on the sign-off report on a lifecycle state/stage.
03: Signature required input field.
03: Signature required input field.
04: Example of a sign-off report.
04: Example of a sign-off report.

Customize Fields

It's possible to control which users or groups should have access to viewing certain extra information in the mobile client. You also have the possibility of adding your own custom fields that are not directly related to the standard AM/EAM module in D365.

In the following sections below, you can learn how to personalize fields and learn how you can add your own custom fields.

Personalize Fields

It's possible to personalize existing fields in the mobile client. This is valid for Work orders and Planning board.

In order to set up which users and groups can view certain fields on the work order card and the work order job card, go to Setup > Module configuration > Work execution > Card design. From there, you'll see the menu shown in screenshot 01 below.

Work order design

  • Work order card date fields: you can specify which users or groups should have access to viewing the:
    • Start date
    • End date
  • Work order card other fields: you can specify which users or groups should have access to viewing the:
    • Number of lines
    • Priority/service level
    • Responsible worker group Id
    • Responsible worker group name
    • Responsible worker name
    • Responsible worker personnel number

Work order job/line design

  • Work order job/line card date fields: you can specify which users or groups should have access to viewing the:​​
    • Start date
    • End date
  • Work order job/line card other fields: you can specify which users or groups should have access to viewing the:
    • Functional location Id
    • Functional location name
    • Job trade Id
    • Job trade name
    • Job variant name
    • Object Id
    • Object name
  • Work order job/line card personnel fields: you can specify which users or groups should have access to viewing the:
    • Scheduled worker name
    • Responsible worker name
    • Scheduled worker personnel number
    • Responsible worker personnel number

Planning board

In order to set up which users and groups can view information about work order lines in the planning board, go to Setup > Module configuration > Planning board > Work order card title configuration as seen in screenshot 02 below.

  • Work order card title configuration: You can specify which users or groups should have access to viewing the:
    • Criticality
    • Criticality name
    • Forecast hours
    • Job type Id
    • Job type name
    • Job variant Id
    • Job variant name
    • Job trade Id

01: Card design menu under Work execution.
01: Card design menu under Work execution.
02: Specify who has access to viewing certain information on the planning board.
02: Specify who has access to viewing certain information on the planning board.

Add Custom Fields

It's possible to add your own custom fields if you want to see data which is not directly related to the standard AM/EAM module in D365. This can for example be from extensions or other standard tables.

Note that the mobile client expects data to be in a specific format, an array of JSON objects consisting of: a label, an id and a value. The value can be a text or another array of JSON objects of this type. This data has to be in 'customFields' property on the entity being extended.


Example of structure

Below is an example structure of the data which should be put in the 'customFields' property.

[

{

label: 'Location',

id: <backend_field_id>,

value: [

{

label: 'Building',

id: <backend_field_id>,

value: ''

},

{

label: 'Coordinate/Elevation',

id: <backend_field_id>,

value: ''

},

{

label: 'Remark',

id: <backend_field_id>,

value: 'SP03 SOUTH CROSSWAY - SICK'

},

{

label: 'Commune',

id: <backend_field_id>,

value: 'HVIDOVRE'

},

{

label: 'Region',

id: <backend_field_id>,

value: 'S-GSV'

}

]

},

{

label: 'Security',

id: <backend_field_id>,

value: [

{

label: 'ATEX',

id: <backend_field_id>,

value: ''

},

{

label: 'Zone',

id: <backend_field_id>,

value: ''

},

{

label: 'Method',

id: <backend_field_id>,

value: ''

},

{

label: 'DDS/DSS',

id: <backend_field_id>,

value: ''

}

]

}

]


Entities that accept custom fields

Note that for now, the entities that accept custom fields are limited to these in the table below, which also has information regarding classes to extend in order to provide the fields.

Entity

EAM class

WorkOrderLine

DynMROJWorkOrderLine

WorkOrder

DynMROJWorkOrder

MaintenanceObject

DynMROJObject

Each of these classes implements a serialize() method responsible for the creation of entity data which is later sent to the mobile client.

Additionally, Dynaway mobile modules include JSON parsing classes which can be used for easy creation of formatted data.

Those classes are DynMPJsonObject and DynMPJsonArray.

Example of the fields Criticality and Service level/Priority added

The example below shows a scenario in which criticality and service level/priority of a work order are added to the work order line entity.

[ExtensionOf(classStr(DynAMMJWorkOrderLine))]

public final class DynAMMJWorkOrderLineCustomFields_Extension

{

public void serialize(Common _record, DynMPJsonObject _serialized)

{

EntAssetWorkOrderLine workOrderLine = _record as EntAssetWorkOrderLine; // _record parameter must be cast to correct table buffer.

EntAssetWorkOrderTable workOrderTable = workOrderLine.workOrderTable();

next serialize(_record, _serialized);

// Specific JSON object containing information.

DynMPJsonObject valueObject = new DynMPJsonObject();

valueObject.addValue('id', 1);

valueObject.addValue('label', 'Work order service level');

valueObject.addValue('value', workOrderTable.ServiceLevel);

// Specific JSON object containing information.

DynMPJsonObject valueObject2 = new DynMPJsonObject();

valueObject2.addValue('id', 2);

valueObject2.addValue('label', 'Work order criticality');

valueObject2.addValue('value', workOrderTable.criticality().Criticality);

// Value array for previous objects.

DynMPJsonArray arrayObject = new DynMPJsonArray();

arrayObject.add(valueObject);

arrayObject.add(valueObject2);

// Previous array is added as value to the main value object.

DynMPJsonObject mainObject = new DynMPJsonObject();

mainObject.addValue('id', 100);

mainObject.addValue('label', 'Work order data');

mainObject.add('value', arrayObject);

// Finally, main value object is added to top-most JSON array.

DynMPJsonArray mainArray = new DynMPJsonArray();

mainArray.add(mainObject);

// The array is added to the serialized entity which will be sent to the mobile client.

_serialized.add('customFields', mainArray);

}

}

Result of the example

In the screenshot below, you can see the result of the extension in the mobile client after adding the fields.

Result of the extension seen in the mobile client.
Result of the extension seen in the mobile client.

Lists

Lists can be created based on filtering of entities and properties related to those entities. An example could be a filtering of assets/objects by asset/object type or filtering a request by service level/priority.

On the Mobile Client, list creation is available to maintenance workers for:

  • Work Execution
    • Work orders module
    • Assets/Objects module
    • Requests module
  • Planning Board
    • Planning board module
  • Safe Work
    • Permits module

You can create them in the mobile application and in D365 it's possible to manage them, e.g. by publishing them to multiple users or setting them up to automatically download results to the mobile application (this only works on the work execution mobile application).

Manage and distribute lists in D365

In D365, Dynaway mobile/Mobility > Inquiries > Saved search lists shows all available lists (called saved search lists in D365) created by all users for all modules.

From here, it's possible to change the type of a list from User defined (the default type after creating a new saved search) to Predefined which allows whoever is managing them to publish to mulitple users or groups. It's also possible to add, edit, and delete lists from here.

  • Changing the type is done in the 'Query' panel as seen in screenshot 01 below.
    • 'Predefined' allows the person who manages the saved search to distribute it to multiple user groups or users.
  • Distributing a saved search is done in the 'User relations' panel as seen in screenshot 02 below.
    • This allows the person who manages the saved searches to specify which user groups or users should see the lists when they open their application.
  • Setting saved search results to be downloaded by the Prefetch setting is done in the 'User relations' panel which can be seen in screenshot 03 below. (This is only valid for modules in the work execution app).
    • Example: A user needs to inspect a number of assets/objects to determine their need for maintenance and the user could then have a saved search filtered on a certain functional location or set of assets/objects, have the saved search set to be prefetched, and then even if the user is outside network coverage, they can still create requests or work orders on the downloaded assets/objects.

Limit Results from Lists to Functional Location

It's possible to limit results shown on lists to functional locations that are assigned to maintenance workers. This is valid for work orders, assets/objects, and requests.

Go to Setup > Mobile Parameters and toggle the button 'Query functional location limitation' to limit results shown on lists to functional location.

To assign workers to functional locations, go to:

  1. Enterprise asset Management > Setup > Workers > Workers.
  2. Pick a worker from the list on the left.
  3. On the Functional locations tab, add a line to assign a functional location.

If the assigned functional location has children, these are also assigned.

01.
01.
02.
02.
03.
03.

Planning Note Categories

If you want to use categories for planning notes on the Planning board, you must set up those categories in Dynaway mobile. You can add colors to planning note categories. This allows you to easily distinguish the notes you add on the Planning board.

To create a new category

  1. Select Dynaway mobile > Setup > Asset management > Planning note categories.
  2. Select New.
  3. In the Planning note category field, enter a name for the category.
  4. Enter a Description.
  5. To add a color code in the Color field, follow steps 2-4 in the article Colors on work order lifecycle states.
  6. Select Save.

Below is an example of a note category setup, including the drop-down for color selection.

Planning note categories setup
Planning note categories setup

Colors on Work Order Work Status

Colors on work statuses are available in the Mobile client on work order jobs/lines and schedules. Colors on work statuses allow you to easily get an overview of current work status on work order job/lines and on schedules.

In order to use the functionality, you need to enable the module configuration which can be accessed in Module configuration > Work execution > Work orders > Work status > Work order schedule work status color.

Use default colors

A set of default colors for work statuses are available and are designed to be distinguishable for people with color blindness. Click the button Default values if you have made changes and want to go back to the default colors.

Create your own colors

If you want to use other colors than the default set of colors, follow the steps below.

  1. Click New and choose the work status.
  2. On a record, select the arrow-down button in the Color field. In the drop-down, you can change color in two ways.
    a. In the color palette, select a color. The color number is automatically inserted in the Hex # field, or
    b. If you know the Hex number, enter the Hex color number in the Hex # field.
  3. Select OK.
  4. Leave the field and log out/in on the mobile client or go to the mobile client settings and select Fetch Configuration to see the color update.

Default colors.
Default colors.
Example of work order jobs/lines where the grey color represents the work status.
Example of work order jobs/lines where the grey color represents the work status.

Colors on Work Order Stages

You can set up colors for work order stages, which are visible on the Planning board. This allows you to easily get an overview of current stages on work orders on the Planning board.

This functionality requires that you have already created the work order stages you want to use in Enterprise asset management. Refer to the EAM documentation to learn about the general setup of work order stages.

Color code setup for work order lifecycle states is done in the Mobility module.

  1. Select Mobility > Setup > Enterprise asset management > Work order stage display setup.
  2. On a record, select the arrow-down button in the Color field. In the drop-down, you can change color in two ways.
    1. In the color palette, select a color. The color number is automatically inserted in the Hex # field, or
    2. If you know the Hex number, enter the Hex color number in the Hex # field.
  3. Select OK.
  4. Leave the field to see the color update.

Color setup on a work order stage.
Color setup on a work order stage.

Publish Mobile Site on Mobile Devices

The Mobile Client may be published on the users' mobile devices for offline use. This is an easy step as the Dynaway Mobile solutions are based on HTML5. The user must insert the link to the website containing the mobile application.

In the following procedure, we describe how to publish a mobile site using the Azure setup on a mobile device.

  1. Start the web browser on the mobile device.
  2. Go to the deployed website (example https://example.azurewebsites.com/index.html).
  3. The browser automatically detects that the site contains an HTML5-based application and starts to download the application to the browser's application cache. This means that the application can run offline, if required.
  4. Log in with your user credentials. Depending on the configuration setup described earlier, login is done using Active Directory credentials, or the credentials defined for the mobile user in Dynamics 365 for Finance and Operations.
  5. When the website is launched in the browser, the downloaded HTML5 application will start to set up the local database and initiate the first data synchronization. When synchronization is complete, the Mobile Client application is ready for use.

We recommend that you add the Mobile Client website to the home screen of the mobile device.

Browser Recommendation for Android™

On mobile devices using Android, we recommend using the Google Chrome™ browser.

Browser Recommendation for iOS

On mobile devices from Apple®, we recommend using the Apple® Safari® browser.

Browser Recommendation for Windows®

On mobile devices using Windows, we recommend using the Google Chrome™ browser or the Microsoft® Edge browser.

You can create direct links to modules in the mobile client for the Work Execution app. This is useful in situations where you want to open for example a link to a work order from another application, or send a co-worker a link to a work order in a message, e-mail or the like.

Work Execution App

For the Work Execution app, you can create direct links to Work orders, Assets/Objects, and Requests.

Note: Users must have access to the module where the link directs to, for instance, if a user has access to the Work order module, they can open a work order using a direct link.

Work orders

When a URL formatted as <website-URL>?woid=<Work order ID>&_id=<Job/Line RecId>&_sid=<Schedule RecId> is opened, the application will navigate to the details of the supplied work order or work order job/line or schedule, and download it if it has not already been downloaded.

Example URLs could be:

  • https://mycompany.azurewebsites.net/work?woid=WO-000042
  • https://mycompany.azurewebsites.net/work?woid=WO-000042&_id=87623415
  • https://mycompany.azurewebsites.net/work?woid=WO-000042&_id=87623415&_sid=87622445

Assets/Objects

When a URL formatted as <website-URL>?objid=<Asset/Object ID> is opened, the application will navigate to the details of the supplied asset/object, and download it if it has not already been downloaded.

An example URL could be:

  • https://mycompany.azurewebsites.net/work?objid=FL-01-02

Requests

When a URL formatted as <website-URL>?reqid=<Request ID> is opened, the application will navigate to the details of the supplied request, and download it if it has not already been downloaded.

An example URL could be:

  • https://mycompany.azurewebsites.net/work?reqid=REQ-000042

Copyright Dynaway A/S

Privacy Policy