Advanced Search

An advanced option is typically available next to the quick search to enable search on a combination of attributes. In the advanced search dialog, the user can enter values for multiple fields. The advanced search component is opened with the click on the link 'Advanced'. When the user clicks on the Advanced Search button/link, the Advanced Search dialog is displayed providing the ability to add multiple search criteria (using the Add Criterion button (hover text: Add Criterion, icon: qual_plus_24.svg and the Criteria dropdown list). Next to it based on the property type (of the lowest level property), it is possible to enter the search criterion. Individual attributes adhere to the single value/refrenced property design.

This component supports search on string (enums, booleans), integer, date, date time, referenced type properties. For detail refer to the Property guide.

The advanced search component:

"advancedSearch": {
  "properties": [
   {  "name":"name of the property"
      "sequence": 1,
    },
    { "name":" name of the property"
      "sequence": 2
    },
    ...
  ]
}

When the user has selected the search criteria, entered search values for them and clicked on the Search button (hover text: Search, icon: magnifier_16), the dialog is closed and a search is performed based on all entered search values. If a criterion is entered, but no value is given, then the criterion is not considered for search.

The dialog can be closed by clicking anywhere outside the dialog. The selected criteria and entered search values will be remembered until the user changes them, clicks on the Reset link or signs out of the application (or the user session expires)

The search is case insensitive. The search operator is 'like' for text attributes that allow wildcards like % and _, the search operator is 'equals' for other types of attributes. Multiple input parameters are combined using an 'AND' statement. OR-search is implement between the various values of a property when the same search property is added multiple times, Example: A can search for claims with 'code like CL004%' AND '(Status=Enter OR Status=Change)' is possible.

Personalization will ensure that at minimum one valid property (when a specified property does not exist, system ignores that property) is specified

Consider the following example for configuring advanced search on the claims object:

"advancedSearch": {
  "properties": [
    { "name":"servicedMember",
      "sequence":1,
      "refType":"person"
    },
    { "name":"claimantProvider",
      "sequence": 2,
      "refType":"provider"
    },
    { "name":"claimantRelation",
      "sequence": 3,
      "refType":"relation"
    },
    { "name":"startDate",
      "sequence": 4
    },
    { "name":"claimPendReasonList",
      "sequence": 5,
      "properties": [
        { "name":"pendReason",
          "sequence": 2,
          "refType": "codeDescr"
        },
        { "name":"resolved",
          "sequence": 1,
          "label": "GEN_RESOLVED"
        }
      ]
    },
    { "name":"status",
      "sequence": 6
    }
  ]
}

This will show an advanced search dialog with the following options:

Field Input

Label** for serviced member

LOV component on person

Label for claimant provider

LOV component on provider

Label for claimant relation

LOV component on relation

Label for start date

Date picker

Label for pend reason in ClaimPendReason entity

LOV on pend reason

Label for Indicator resolve on pend reason

Yes/No dropdown

Label for Status

Drop down on status

**Refer examples in the section Boilerplate in Property guide for more details on the label.

image