Difference between revisions of "Inspections"

From Resco's Wiki
Jump to navigation Jump to search
 
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{Academy|14|Resco Inspections}} {{Inspections TOC}}
 
{{Academy|14|Resco Inspections}} {{Inspections TOC}}
: ''This article is about Resco Inspections module that can be added to your app project in Woodford to support inspections features. For information about the standalone product on Resco Cloud, see '''[[resco.Inspections]]'''.
+
: ''This article is about the module that can be added to your app project in Woodford to support inspections features. For information about the standalone product on Resco Cloud, see [[resco.Inspections]].
  
 
'''Resco Inspections''' is a solution that allows you to shape every step of your inspection process:
 
'''Resco Inspections''' is a solution that allows you to shape every step of your inspection process:
Line 10: Line 10:
 
Resco Inspections is a flexible module with many customization options.
 
Resco Inspections is a flexible module with many customization options.
  
;Questionnaires
+
=== Questionnaires ===
: Questionnaires, checklists, guides, surveys that can be viewed and answered in the mobile app.
 
:* [[Questionnaire Designer]] (formerly called Inspections Designer or builder) - a powerful tool for creating questionnaires
 
:* You don't have to start from scratch! Browse a [https://www.resco.net/library/ library of checklists, forms, and reports] that you can download and use in your organization. See [[How to use a template from the Resco Template Library]] to get started.
 
  
; Reports
+
The heart of Resco Inspections are questionnaires, checklists, guides, and surveys. You can use and combine over two dozen different questions and static components to design questionnaire templates that can be then viewed and answered in the mobile app. Questionnaire templates are created using the [[Questionnaire Designer]], a powerful dedicated tool. But there's more than just a series of questions. You can tweak format and layout, organize questions into (repeatable) groups, control the flow of the questionnaires using commands, buttons, and rules (for example, show or hide a question depending on a previous answer), localize your questions to create multi-language questionnaires, or even overhaul everything using [[Resco JavaScript Bridge|JavaScript]].
: Resco Inspections supports [[mobile report]]s that can be generated in your mobile device for each answered questionnaire, including signatures, even offline.
 
:* [[Mobile reports for Resco Inspections]]
 
* [[Report Designer]] - tool for designing report templates
 
  
; Displaying results
+
But you don't have to start from scratch! Browse a [https://www.resco.net/library/ library of checklists, forms, and reports] that you can download and use in your organization. See [[How to use a template from the Resco Template Library]] to get started.
: You can easily access the answers collected in the field from your office.
 
:* [[Automatic Dashboard]] or Analyst - tool for visualizing and evaluating questionnaire results
 
:* [[Results Viewer]] - tool for viewing completed questionnaires
 
  
; Customizing
+
=== Reports ===
: Use the powerful [[Woodford]] configuration tool to modify your Resco [[app projects]] to better suit the needs of your mobile users.
+
 
 +
With Resco Inspections, you can follow up the inspection by generating a [[mobile report]], for example in PDF format. The report is created directly on the device, even offline. Again, you have several options for how much attention do you want to spend on your reports. Out of the box, there's a generic report that simply collects all the questions and answers. You can use [[Questionnaire Designer]] to customize your reports, change question layout, colors, fonts, or decide which questions to skip. For the most advanced scenarios, we offer a dedicated tool, [[Report Designer]].
 +
 
 +
For more information, see [[Mobile reports for Resco Inspections]].
 +
 
 +
=== Displaying results ===
 +
 
 +
Back in the back office, you can easily access the answers collected in the field, as well as any reports.
 +
* [[Automatic Dashboard]] or Analyst - tool for visualizing and evaluating questionnaire results
 +
* [[Results Viewer]] - tool for viewing completed questionnaires
 +
 
 +
=== Customizing the solution ===
 +
 
 +
Use the powerful [[Woodford]] configuration tool to modify your Resco [[app projects]] to better suit the needs of your mobile users.
 +
 
 +
=== Mobile apps ===
 +
 
 +
Resco Inspections is compatible with any of the recently released [[Resco mobile apps]], such as [[Resco Mobile CRM]] (version 10.2.1 or higher).
 +
 
 +
Mobile users can usually access questionnaires from the home screen or an entity form (depending on the [[Inspections#Configuring_in_Woodford|configuration of your app project]]. There are many more options how questionnaires can be accessed; see [[Adding questionnaires to app projects]] for inspiration.
 +
 
 +
Once the questionnaire is filled and saved, a copy of the initial template is created with all the answers and stored as a separate questionnaire record. Users don’t make changes to the original questionnaire, since it is used as a template for future inquiries.
 +
 
 +
It is not possible to have two questionnaires opened at once – the user can work with one questionnaire at a time. To fill out another questionnaire, the user must save and close the questionnaire or discard changes and close it.
  
 
== Backend integration ==
 
== Backend integration ==
Line 91: Line 105:
 
* [[Questionnaire OData service]]: a read-only [https://www.odata.org/ OData v4] API service for accessing questionnaire results
 
* [[Questionnaire OData service]]: a read-only [https://www.odata.org/ OData v4] API service for accessing questionnaire results
 
* [[Resco CRM Connector]]: a universal REST API to [[Resco Cloud]]
 
* [[Resco CRM Connector]]: a universal REST API to [[Resco Cloud]]
 
  
 
== Configuring in Woodford ==
 
== Configuring in Woodford ==
Line 109: Line 122:
 
The one-click integration into app projects (the Add to... buttons) wasn't originally included. The bindings had to be created manually. If you want to create your integration from scratch, or if you are looking for inspiration how to customize the display within the app, see [[Adding questionnaires to app projects]].
 
The one-click integration into app projects (the Add to... buttons) wasn't originally included. The bindings had to be created manually. If you want to create your integration from scratch, or if you are looking for inspiration how to customize the display within the app, see [[Adding questionnaires to app projects]].
  
== Mobile application ==
+
=== Filters ===
To see it in the application, use the Resco Mobile CRM app, version 10.2.1 or higher.
+
 
 +
Questionnaire templates, snippets, and questionnaire answers are stored in the same entity: questionnaire (see [[Questionnaire_Designer#Technical_information|technical information]] for details). Additionally, templates can have different states, depending on their [[Questionnaire_Designer#Life_cycle_of_a_questionnaire_template|lifecycle]] (draft/active/inactive or draft/staged/published/archived). All of these can be displayed in the mobile app. However, it usually does make sense to differentiate and filter these records. Consider the following Woodford settings:
 +
* Use [[Sync Filter]] to define what data from the server is replicated in the Resco Mobile CRM application during a synchronization. Remember that sync filters usually only apply in offline mode!
 +
* Use [[View#Edit_filter|view filters]] to restrict the displayed data in the view to only those that meet the specified conditions. You can create multiple views for different use cases.
 +
 
 +
For example, when displaying a list of available templates for mobile users to choose from, use only active or published templates. Set this up in the view filter. For the sync filter, however, consider also including archived templates if you want to allow the mobile users to view older completed questionnaires.
 +
 
 +
=== Innovations ===
 +
 
 +
Resco Inspections have a strong focus on innovations to fully leverage modern devices and technologies.
 +
 
 +
;Inspections with augmented-reality video calls
 +
:Inspectors in the field can initiate a video call to an expert. The recipient can draw instructions straight into the shared video scene. See [[Houston video calls]].
 +
 
 +
;Wearables and ruggedized devices
 +
* [[Smartwatch integration]]: perform inspections with a smartwatch and voice control
 +
* [[RealWear]]: a custom version of the Resco app tailored for voice control is available for the head-mounted tablet HMT-1
 +
* [[Zebra]]: Resco Inspections is certified by Zebra for their TC series of handheld computers
 +
* [[Resco Mobile CRM on HoloLens|HoloLens]]: Perform inspections in 3D.
 +
 
 +
== Performance considerations ==
 +
 
 +
When you deploy Resco Inspections in large projects without considering performance, your users may experience performance degradation. Learn about the possible problems in advance and set up your questionnaires to mitigate the risks.
 +
 
 +
=== Rapidly increasing database footprint ===
 +
 
 +
If you created your Resco Inspections organization some time ago, the default setting used to be that every single answered questionnaire is saved in a self-contained way, i.e., it includes the answers, but also the questions along any possible custom images (logo), business rules, and styles. This approach ensures that even if the original questionnaire template changes, your answered questionnaires are unaffected.
 +
 
 +
In scenarios where questionnaires are changing frequently and each questionnaire is answered only a limited number of times, this is a valid approach. However, if your inspectors perform hundreds or thousands of inspections every day, you might discover that your database gets full of redundant data.
 +
 
 +
Use the parameter '''Dependency Level''' in the [[Questionnaire_Designer#Properties_pane|properties of a questionnaire template]] to control this behavior.
 +
 
 +
* '''None''': Questionnaires are self-contained, at the cost of increased database footprint.
 +
* '''Images''': In this case, static images of the questionnaire template (such as the logo) are not included in each answer.
 +
* '''Full''': Save only the answers. Static images, questions, rules, and styles are not included; instead, they are replaced with a reference to a questionnaire template. This option is recommended if your questionnaires rarely change and it is only available for versioned questionnaire templates.
 +
: <small>Using versioned templates means that old template versions gain the archived state. Sometimes, the sync filter for the Questionnaire entity is configured to exclude archived templates. If you attempt to view old answered questionnaires (that use an archived template with medium or high dependency level) in the app in offline mode, you may encounter the ''Questionnaire template not found!'' error. In this case, consider modifying the sync filter to make archived templates available in the offline mode.</small>
 +
 
 +
Another complementary option is saving your images in external cloud document storage, rather than in the database. This behavior is configured on the Properties pane for images in the parameter '''Storage Entity'''. Cloud document storage is often much cheaper than databases. Resco Inspections supports third-party document storage by Box, Dropbox, Google Drive, OneDrive, and SharePoint.
 +
 
 +
=== Slow questionnaire loading time ===
 +
 
 +
If your complex questionnaire templates include many On Change rules, app users may experience slow performance when they open the questionnaire in the app. This issue affects particularly older devices.
 +
 
 +
Edit your questionnaire template and on the [[Questionnaire_Designer#Properties_pane|'''Properties''' pane]], set the '''Rules Version''' parameter to '''Latest''', to take advantage of optimized handling of On Change rules during questionnaire loading. To learn more about this parameter, read [[Questionnaire_Designer#Rules_version|Rules version]].
 +
 
 +
=== Sync: upload takes too long ===
 +
 
 +
Inspectors in the field who perform many large inspections regularly may sometimes experience the problem that the upload phase of synchronization takes too long, particularly if the network isn't too good. Increasing the dependency level to full as described above can help, because the amount of data for upload is reduced. Additional savings can be accomplished by changing how questionnaire answers are stored and uploaded.
  
After opening Questionnaires in the application, a list of questionnaires (including templates and completed questionnaires) is visible. You can use [[Woodford]] to create separate views for templates and answers.
+
Edit your questionnaire template and on the [[Questionnaire_Designer#Properties_pane|'''Properties''' pane]], configure the '''Answer Storage''' to select how should the answers be stored.
  
Once the questionnaire is filled and saved, copy of the initial template is created with all the answers and stored as a separate questionnaire. Users don’t make changes on the original questionnaire, since it is used as a template for future inquiries.
+
* '''Records''': This is the default option. Each answer is transferred as a single record during synchronization. This may make synchronization slower, but ensures the best compatibility with the backend servers and allows you to leverage existing tools to visualize the data.
 +
* '''JSON''' or '''Compressed JSON''': These options offer improved synchronization performance, however, not all tools understand JSON.
  
It is not possible to have two questionnaires opened at once – the user can work with one questionnaire at a time. To fill out another questionnaire, the user must save and close the questionnaire or discard changes and close it.
+
=== Sync: download takes too long ===
 +
 
 +
If your app users (inspectors in the field) experience long download times followed by many deletions, consider setting the [[App_projects#Managing_entities|'''Synchronization''' strategy]] for the entity Questionnaire to '''Incremental with Sync Filter'''.
 +
 
 +
== Tip: Migrating inspections between environments ==
 +
 
 +
If you need to migrate more complex inspections scenarios between environments, for example, for a dev/test environment to production, proceed as follows:
 +
# Migrate the questionnaires (using the [[Questionnaire_Designer#Data_group|export/import function]] of the Questionnaire Designer).
 +
# Migrate the mobile reports (using the [[Report_Designer#Using_the_designer|export/import function]] of the Report Designer) and activate them.
 +
# In Questionnaire Designer, [[Questionnaire_Designer#Actions_group|associate]] the reports to the right questionnaires.
 +
# In Questionnaire Designer, [[Questionnaire_Designer#Configuring_commands|set up the Run Report command]] on each questionnaire to point to the right report template.
 +
# In Questionnaire Designer, activate (non-versioned) or publish (versioned) questionnaire templates.
 +
 
 +
== Technical information ==
 +
 
 +
Resco Inspections utilizes the data-driven architecture rather than the metadata-driven approach. It means that the Resco Inspections data model (entities, fields, relationships) is already created, and when building a new custom questionnaire template you are not altering the data model – instead, you’re adding the entity records. As a consequence, the user who manages the questionnaire templates does not have to be a backend administrator since this user is not changing the data model.
 +
 
 +
All questionnaire data is saved as records on your backend server (Resco Cloud/Dynamics/Salesforce), in multiple custom entities:
 +
* '''Questionnaire''' (resco_questionnaire) stores information about the questionnaire templates, snippets, and answered questionnaires.
 +
* '''Question Group''' (resco_questiongroup) stores information about the question groups. Each question group can contain multiple questions.
 +
* '''Question'''  (resco_question) stores all the questions created for the questionnaire, as well as answers.
 +
* '''Questionnaire Folder''' (resco_questionnairefolder) stores information about the folder structure that organizes questionnaire templates in the designer.
 +
 
 +
See also: [https://blog.resco.net/2020/06/02/resco-inpections-for-dynamics-365-data/ Dynamics 365 how is the data stored?] {{Badge|Blog}}
 +
 
 +
=== Saving questionnaire data ===
 +
 
 +
When an app user starts a questionnaire in the app, a new copy of the template is created. For an answered questionnaire, we store both questions and answers. When you enable template dependency, the answered questionnaire is no longer self-contained (it refers to the template) but each answer needs less data (faster sync and less database storage). How self-contained should answers be is configured on the questionnaire template's '''Properties''' pane, in the '''Template Dependency''' field.
  
== Filters ==
+
Questionnaire data can be saved in three different formats:
  
Questionnaire templates, snippets, and questionnaire answers are stored in the same entity (questionnaire). Additionally, templates can have different states (active, draft, inactive). All of these can be displayed in the mobile app. However, it usually does make sense to differentiate and filter these records. Consider the following Woodford settings:
+
* Record-based model (default): Each answer in a questionnaire is a record.
* Use [[Sync Filter]] to define what data from the server is replicated in the Resco Mobile CRM application during a synchronization. Remember that sync filters usually only apply in offline mode!
+
* JSON / compressed JSON: Answers are stored in JSON format that might be compressed. JSON requires fewer records and may result in faster synchronization. However, analyzing the answers may require additional effort.
* Use [[View#Edit_filter|view filters]] to restrict the displayed data in the view to only those that meet the specified conditions. You can create multiple views for different use cases.  
+
<!-- * Hybrid model (planned for a future release): Combination of the previous two models. For each question, you can configure what you prefer. -->
  
== Entities ==
+
The data model can be configured on the questionnaire template's '''Properties''' pane, in the '''Answer Storage''' field.
  
When you add inspections to your project, you are enabling several custom entities:
+
See also: [[Resco Inspections data model]]
* Question (resco_Question)
 
* Question Group (resco_QuestionGroup)
 
* Questionnaire (resco_Questionnaire) - this entity is actually used in three ways
 
** As a questionnaire template (if Is_Template = Yes)
 
** As a snippet (if Is_Snippet = Yes)
 
** As a filled-in questionnaire
 
* Questionnaire Folder
 
  
== Permissions ==
+
=== Permissions ===
  
 
Permissions for Inspections entities need to be set based on what action will the user perform on questionnaires.
 
Permissions for Inspections entities need to be set based on what action will the user perform on questionnaires.
Line 154: Line 235:
  
 
It is also possible to manage permissions by assigning ownership of Questionnaires to teams in the backend server.
 
It is also possible to manage permissions by assigning ownership of Questionnaires to teams in the backend server.
 +
 +
=== Completion status ===
 +
 +
A questionnaire has a completion status field (resco_completionstatus) that can take three values:
 +
* [0] Active (incomplete, in progress)
 +
* [1] Completed
 +
* [2] Canceled
  
 
[[Category:Resco Inspections]] [[Category:Woodford]] [[Category:Resco Mobile CRM]]
 
[[Category:Resco Inspections]] [[Category:Woodford]] [[Category:Resco Mobile CRM]]

Latest revision as of 11:58, 30 November 2021

Resco Academy
Resco Academy has a course on a similar subject:
Resco Inspections
Backend-specific
Innovations
Miscellaneous
This article is about the module that can be added to your app project in Woodford to support inspections features. For information about the standalone product on Resco Cloud, see resco.Inspections.

Resco Inspections is a solution that allows you to shape every step of your inspection process:

  • Create custom questionnaires, dynamic forms, surveys and more.
  • Make inspections more effective for your field staff and analyze collected data afterwards – all with one solution.

Components

Resco Inspections is a flexible module with many customization options.

Questionnaires

The heart of Resco Inspections are questionnaires, checklists, guides, and surveys. You can use and combine over two dozen different questions and static components to design questionnaire templates that can be then viewed and answered in the mobile app. Questionnaire templates are created using the Questionnaire Designer, a powerful dedicated tool. But there's more than just a series of questions. You can tweak format and layout, organize questions into (repeatable) groups, control the flow of the questionnaires using commands, buttons, and rules (for example, show or hide a question depending on a previous answer), localize your questions to create multi-language questionnaires, or even overhaul everything using JavaScript.

But you don't have to start from scratch! Browse a library of checklists, forms, and reports that you can download and use in your organization. See How to use a template from the Resco Template Library to get started.

Reports

With Resco Inspections, you can follow up the inspection by generating a mobile report, for example in PDF format. The report is created directly on the device, even offline. Again, you have several options for how much attention do you want to spend on your reports. Out of the box, there's a generic report that simply collects all the questions and answers. You can use Questionnaire Designer to customize your reports, change question layout, colors, fonts, or decide which questions to skip. For the most advanced scenarios, we offer a dedicated tool, Report Designer.

For more information, see Mobile reports for Resco Inspections.

Displaying results

Back in the back office, you can easily access the answers collected in the field, as well as any reports.

Customizing the solution

Use the powerful Woodford configuration tool to modify your Resco app projects to better suit the needs of your mobile users.

Mobile apps

Resco Inspections is compatible with any of the recently released Resco mobile apps, such as Resco Mobile CRM (version 10.2.1 or higher).

Mobile users can usually access questionnaires from the home screen or an entity form (depending on the configuration of your app project. There are many more options how questionnaires can be accessed; see Adding questionnaires to app projects for inspiration.

Once the questionnaire is filled and saved, a copy of the initial template is created with all the answers and stored as a separate questionnaire record. Users don’t make changes to the original questionnaire, since it is used as a template for future inquiries.

It is not possible to have two questionnaires opened at once – the user can work with one questionnaire at a time. To fill out another questionnaire, the user must save and close the questionnaire or discard changes and close it.

Backend integration

Resco Inspections performs excellently with our proprietary CRM solution, Resco Cloud, but it can also be natively integrated with Microsoft Dynamics 365 and Salesforce. Additionally, we provide an API for integration with third-party systems.

Resco Inspections on Resco Cloud

Resco Inspections works best on the dedicated inspections cloud. Use a web browser to connect to your organization.

  1. Go to https://inspections.resco.net/<your organization>.
  2. Log in to your organization using the email and password you used for registering the organization.
  3. Click Log in to access the landing page: Manager's experience for Resco Inspections.

Resco Cloud

To access inspections features on your classic Resco Cloud, use a web browser to connect to your organization.

  1. Go to https://rescocrm.com/Login.aspx.
  2. Enter your organization name, email address, and your password.
  3. Click Log in.

To integrate Inspections feature into an existing Resco Cloud project

  1. Go to your Resco Cloud organization as described above.
  2. Start Woodford from the landing page.
  3. Enable inspections as described here.

Microsoft Dynamics

  1. Log in to Microsoft Dynamics 365.
  2. Start Woodford. If you have not used it before, you can find the detailed guide on how to download and import Woodford into your Dynamics 365/CRM here.
  3. Enable inspections as described here.

See also a detailed blog post describing this procedure. Blog

We have also prepared a dedicated page to guide you through the process of setting up and using Resco Inspections on Dynamics 365.

Salesforce

  1. Log in to your Salesforce server, go to the AppExchange and install the Resco managed package to the Salesforce organization in which you want to run Resco Inspections.
  2. Log in to the Resco for Salesforce website.
  3. Start Woodford.
  4. Click Update to download your custom settings to Woodford.
  5. Open a default project called Inspections and click Validate to verify that your organization's metadata are compatible with settings in the default project.
    Depending on your Salesforce customization, there is a possibility that some standard fields on Account, Contact or Event objects will not be enabled in your organization, so just remove them from Views or Forms to resolve the warnings.
  6. Customize the project as needed and publish it.

See also a detailed blog post describing this procedure. Blog

When you use Inspections without custom objects on Salesforce, the following limitations apply:

  • Question data are stored on Resco Cloud and not available in Salesforce UI.
  • Binary questions (e.g. images and signatures) are not supported.
  • Data migration from Resco Cloud to Salesforce is not supported.
  • Resco Cloud data will not be available in the app once you install the Resco Managed Package and update metadata.

Salesforce users without admin rights need the appropriate permission to access Inspections features, see Grant permissions to non-admins.

SAP ERP

Contact Resco for information about connecting to your ERP and working with your data.

API

Configuring in Woodford

To configure inspections in Woodford, you need Woodford 10.2 or later.

  1. Edit an app project.
  2. Select Inspections in the Project menu.
  3. Check Enable Inspections and click Save.
  4. You can integrate Inspections with your project in a few clicks:
    • To add Inspections to your Home screen, click Add to Home.
    • To add Inspections to a Form, click Add to Form. You have to select an entity; Inspections are added to that entity's default view. You can repeat this step for multiple entities as needed.
    • To install a pre-configured automatic report, click Install Report.
Note Inspections require a separate license. If you are not sure if your organization has the appropriate license, please contact your account manager at Resco or email us at sales@resco.net.

The one-click integration into app projects (the Add to... buttons) wasn't originally included. The bindings had to be created manually. If you want to create your integration from scratch, or if you are looking for inspiration how to customize the display within the app, see Adding questionnaires to app projects.

Filters

Questionnaire templates, snippets, and questionnaire answers are stored in the same entity: questionnaire (see technical information for details). Additionally, templates can have different states, depending on their lifecycle (draft/active/inactive or draft/staged/published/archived). All of these can be displayed in the mobile app. However, it usually does make sense to differentiate and filter these records. Consider the following Woodford settings:

  • Use Sync Filter to define what data from the server is replicated in the Resco Mobile CRM application during a synchronization. Remember that sync filters usually only apply in offline mode!
  • Use view filters to restrict the displayed data in the view to only those that meet the specified conditions. You can create multiple views for different use cases.

For example, when displaying a list of available templates for mobile users to choose from, use only active or published templates. Set this up in the view filter. For the sync filter, however, consider also including archived templates if you want to allow the mobile users to view older completed questionnaires.

Innovations

Resco Inspections have a strong focus on innovations to fully leverage modern devices and technologies.

Inspections with augmented-reality video calls
Inspectors in the field can initiate a video call to an expert. The recipient can draw instructions straight into the shared video scene. See Houston video calls.
Wearables and ruggedized devices
  • Smartwatch integration: perform inspections with a smartwatch and voice control
  • RealWear: a custom version of the Resco app tailored for voice control is available for the head-mounted tablet HMT-1
  • Zebra: Resco Inspections is certified by Zebra for their TC series of handheld computers
  • HoloLens: Perform inspections in 3D.

Performance considerations

When you deploy Resco Inspections in large projects without considering performance, your users may experience performance degradation. Learn about the possible problems in advance and set up your questionnaires to mitigate the risks.

Rapidly increasing database footprint

If you created your Resco Inspections organization some time ago, the default setting used to be that every single answered questionnaire is saved in a self-contained way, i.e., it includes the answers, but also the questions along any possible custom images (logo), business rules, and styles. This approach ensures that even if the original questionnaire template changes, your answered questionnaires are unaffected.

In scenarios where questionnaires are changing frequently and each questionnaire is answered only a limited number of times, this is a valid approach. However, if your inspectors perform hundreds or thousands of inspections every day, you might discover that your database gets full of redundant data.

Use the parameter Dependency Level in the properties of a questionnaire template to control this behavior.

  • None: Questionnaires are self-contained, at the cost of increased database footprint.
  • Images: In this case, static images of the questionnaire template (such as the logo) are not included in each answer.
  • Full: Save only the answers. Static images, questions, rules, and styles are not included; instead, they are replaced with a reference to a questionnaire template. This option is recommended if your questionnaires rarely change and it is only available for versioned questionnaire templates.
Using versioned templates means that old template versions gain the archived state. Sometimes, the sync filter for the Questionnaire entity is configured to exclude archived templates. If you attempt to view old answered questionnaires (that use an archived template with medium or high dependency level) in the app in offline mode, you may encounter the Questionnaire template not found! error. In this case, consider modifying the sync filter to make archived templates available in the offline mode.

Another complementary option is saving your images in external cloud document storage, rather than in the database. This behavior is configured on the Properties pane for images in the parameter Storage Entity. Cloud document storage is often much cheaper than databases. Resco Inspections supports third-party document storage by Box, Dropbox, Google Drive, OneDrive, and SharePoint.

Slow questionnaire loading time

If your complex questionnaire templates include many On Change rules, app users may experience slow performance when they open the questionnaire in the app. This issue affects particularly older devices.

Edit your questionnaire template and on the Properties pane, set the Rules Version parameter to Latest, to take advantage of optimized handling of On Change rules during questionnaire loading. To learn more about this parameter, read Rules version.

Sync: upload takes too long

Inspectors in the field who perform many large inspections regularly may sometimes experience the problem that the upload phase of synchronization takes too long, particularly if the network isn't too good. Increasing the dependency level to full as described above can help, because the amount of data for upload is reduced. Additional savings can be accomplished by changing how questionnaire answers are stored and uploaded.

Edit your questionnaire template and on the Properties pane, configure the Answer Storage to select how should the answers be stored.

  • Records: This is the default option. Each answer is transferred as a single record during synchronization. This may make synchronization slower, but ensures the best compatibility with the backend servers and allows you to leverage existing tools to visualize the data.
  • JSON or Compressed JSON: These options offer improved synchronization performance, however, not all tools understand JSON.

Sync: download takes too long

If your app users (inspectors in the field) experience long download times followed by many deletions, consider setting the Synchronization strategy for the entity Questionnaire to Incremental with Sync Filter.

Tip: Migrating inspections between environments

If you need to migrate more complex inspections scenarios between environments, for example, for a dev/test environment to production, proceed as follows:

  1. Migrate the questionnaires (using the export/import function of the Questionnaire Designer).
  2. Migrate the mobile reports (using the export/import function of the Report Designer) and activate them.
  3. In Questionnaire Designer, associate the reports to the right questionnaires.
  4. In Questionnaire Designer, set up the Run Report command on each questionnaire to point to the right report template.
  5. In Questionnaire Designer, activate (non-versioned) or publish (versioned) questionnaire templates.

Technical information

Resco Inspections utilizes the data-driven architecture rather than the metadata-driven approach. It means that the Resco Inspections data model (entities, fields, relationships) is already created, and when building a new custom questionnaire template you are not altering the data model – instead, you’re adding the entity records. As a consequence, the user who manages the questionnaire templates does not have to be a backend administrator since this user is not changing the data model.

All questionnaire data is saved as records on your backend server (Resco Cloud/Dynamics/Salesforce), in multiple custom entities:

  • Questionnaire (resco_questionnaire) stores information about the questionnaire templates, snippets, and answered questionnaires.
  • Question Group (resco_questiongroup) stores information about the question groups. Each question group can contain multiple questions.
  • Question (resco_question) stores all the questions created for the questionnaire, as well as answers.
  • Questionnaire Folder (resco_questionnairefolder) stores information about the folder structure that organizes questionnaire templates in the designer.

See also: Dynamics 365 – how is the data stored? Blog

Saving questionnaire data

When an app user starts a questionnaire in the app, a new copy of the template is created. For an answered questionnaire, we store both questions and answers. When you enable template dependency, the answered questionnaire is no longer self-contained (it refers to the template) but each answer needs less data (faster sync and less database storage). How self-contained should answers be is configured on the questionnaire template's Properties pane, in the Template Dependency field.

Questionnaire data can be saved in three different formats:

  • Record-based model (default): Each answer in a questionnaire is a record.
  • JSON / compressed JSON: Answers are stored in JSON format that might be compressed. JSON requires fewer records and may result in faster synchronization. However, analyzing the answers may require additional effort.

The data model can be configured on the questionnaire template's Properties pane, in the Answer Storage field.

See also: Resco Inspections data model

Permissions

Permissions for Inspections entities need to be set based on what action will the user perform on questionnaires.

For Questions and Question groups, users – administrators – managers, who create and fill out questionnaires, should have a Read and Create permission (enable the Update permission only if it admins will need to modify questionnaires later).

User / Inspector
(a person who is filling out the questionnaires)
  • Read permission – required for owned records and records owned by the manager that creates the questions (e.g. Business unit level).
  • Create permission – is needed so the user can answer questionnaire templates and save the completed questionnaires.
  • Update, Delete permissions – users may not have these permissions unless they’re creating questionnaires themselves.
Administrator
(a person who us creating questionnaires, and gathering info)
  • Read permission – necessary for owned questionnaires.
  • Create, Update, Delete permissions – required at least for owned questionnaires. Delete permission is upon consideration.
Note If you want to enable viewing and updating all questionnaires available on the server for all managers, these permissions need to be set rather for a business unit.

It is also possible to manage permissions by assigning ownership of Questionnaires to teams in the backend server.

Completion status

A questionnaire has a completion status field (resco_completionstatus) that can take three values:

  • [0] Active (incomplete, in progress)
  • [1] Completed
  • [2] Canceled