Difference between revisions of "Filter editor"

From Resco's Wiki
Jump to navigation Jump to search
m (grammar)
(Data visibility - new section)
Line 69: Line 69:
  
 
If you want to reuse the filter in another location, click '''Export XML''' to download the filter in XML format ([[FetchXML]]). Change to the other location, for example to a different app project, and click '''Import XML''' to reuse the filter there.
 
If you want to reuse the filter in another location, click '''Export XML''' to download the filter in XML format ([[FetchXML]]). Change to the other location, for example to a different app project, and click '''Import XML''' to reuse the filter there.
 +
 +
== Data visibility ==
 +
 +
Occasionally, you may run into a situation that you cannot see a particular record in the app. What are some of the possible causes?
 +
 +
; Sync Filters on entities
 +
: Find your entity in the '''Entities''' section of your app project and click '''[[Sync Filter]]'''. If a record does not match your Sync Filter, it is not downloaded to the local database, and therefore unavailable in offline mode.
 +
 +
; Sync Filters on views
 +
: Edit the view and click '''Edit Filter'''. If a record does not match your view filter, it is downloaded to the device, but this particular view does not list it. Different views can have different filters.
 +
 +
; Entity Mode (online / offline)
 +
: When you create a record in one mode and then switch to the other mode without synchronizing, that record is not visible in the second mode. Synchronize apps when switching between online and offline modes.
 +
 +
; Max Sync Records for entity reached
 +
: Go to the '''[[Configuration]]''' section of your app project and switch to the '''Offline Data Sync''' tab. The parameter '''Max Sync Records''' specifies how many records are downloaded for each object/entity.
 +
 +
; User role (profile)
 +
: Your user role does not have the permission to view the record.
 +
 +
Tip: It is not possible to use Parent > Child relationships in Sync Filter (Contact.Account is possible, Account.Contacts is not). The same limitation applies to view filters used in online mode.
  
 
[[Category:Woodford]]
 
[[Category:Woodford]]

Revision as of 13:49, 18 November 2019

Several Resco tools include a functionality that allows you to define conditions that allow you to filter the records used or displayed in the app. For example:

Overview

These are the main functions of the filter editor:

  • Define conditions, group them with logical operators AND or OR.
  • Define the order of the records.
  • Restrict the maximum number of records.
  • Export or import filters in XML format.

Essentially, filter editor allows users to build database queries or fetches without knowing the syntax of FetchXML.

Define conditions

Each filter starts with an entity. Without additional configuration, it returns all records of that entity. If you specify a custom sort order, it is also displayed, for example:

account
contact SORT: lastname, firstname

Click Add Condition, select one of the entity fields and a condition operator, for example:

modifiedon This Month

Some operators require additional arguments, for example:

address1_city Equals Prague

Sometimes you need to filter the records of an entity using information from another entity. Click Add Link and select a related entity. Choose the link type as inner or outer join. You can add conditions to this related entity, and also set sort order or restrict the maximum number of returned records. For example, the following view filter shows only those accounts that have an opportunity created within the last 10 days.

Account
Opportunities inner
Created On Last X Days 10

Additionally, you can decide, how your conditions should be evaluated and grouped:

  • AND operator: all grouped conditions must be met
  • OR operator: at least one of the grouped conditions must be met

Define sort order and restrict count

Users usually can modify the sort order in the app, but for example in case of a view, it makes sense to define a valid default sort order. You can also define sort order for related entities that you added via Add Link.

  1. Click Edit Sort to open the Configure Sort Fields window.
  2. Choose the primary column (for example, Name) and the sort order (for example, Ascending).
  3. Click Add if you want to another column for sorting. Click Del to remove it.
  4. Click OK to save your changes.

In some cases, you don't need to find all records, only top five (ordered by a relevant criterion), or even a single one. To restrict the maximum count of records, click Edit Count, enter a value, and then click OK.

Save and share filters

Once you're done editing, click Save or Save & Close.

If you want to reuse the filter in another location, click Export XML to download the filter in XML format (FetchXML). Change to the other location, for example to a different app project, and click Import XML to reuse the filter there.

Data visibility

Occasionally, you may run into a situation that you cannot see a particular record in the app. What are some of the possible causes?

Sync Filters on entities
Find your entity in the Entities section of your app project and click Sync Filter. If a record does not match your Sync Filter, it is not downloaded to the local database, and therefore unavailable in offline mode.
Sync Filters on views
Edit the view and click Edit Filter. If a record does not match your view filter, it is downloaded to the device, but this particular view does not list it. Different views can have different filters.
Entity Mode (online / offline)
When you create a record in one mode and then switch to the other mode without synchronizing, that record is not visible in the second mode. Synchronize apps when switching between online and offline modes.
Max Sync Records for entity reached
Go to the Configuration section of your app project and switch to the Offline Data Sync tab. The parameter Max Sync Records specifies how many records are downloaded for each object/entity.
User role (profile)
Your user role does not have the permission to view the record.

Tip: It is not possible to use Parent > Child relationships in Sync Filter (Contact.Account is possible, Account.Contacts is not). The same limitation applies to view filters used in online mode.