UnifiedSearch
This rule is a global rule and can be overridable at primary company level.
- The UnifiedSearch rule will have "Entity"as the array of attributes that are repeatable.
- This attribute shall hold the list of entities in an order that specify the search criteria corresponding to that entity.
- The entities not specified in 'Entity' array but allowed by security will be displayed below the entities specified in 'Entity' array.
- Each 'Entity' will hold the list of 'Criteria' that the entity can be searched by.
- The string entered by the user will be compared to only columns corresponding to criteria specified in the configuration. The first 'Entity' in the list will be treated as default entity.
Note: In case of absence of criteria configuration for any entity, the search is performed against entities as per the criteria given in the table Default entity / criteria table . Example : If in the rule, in 'entity' array if criteria for case is not specified then it is referred from table 'Default entity / criteria table' given below.
Quick Search
A Quick search uses a <Filter> configuration which should be added to the UnifiedSearch business rule. The underlying code can then use the filtering to return the correct results from the search.
Within OIPA when the Quick search is used, the search results should take into account the “Exclusion” condition configured in the <Filter> tags. The search results should not display any data which matches the filter condition. The exclusion conditions should enable a SQL statement to be built that will exclude those matches from the returned results. The condition should enable access to related dynamic data.
The User can use the following tables to filter Unified Search for Client:
- ASCLASSMEMBERSHIP
- ASCLIENT
- ASCLIENTFIELD
- ASROLE
- ASCLIENTRELATIONSHIP**
- ASCLIENTRELATIONSHIPFIELD**
The User can use the following tables to filter Unified Search for Customer:
- ASCLIENT
- ASCLIENTFIELD
- ASGROUPCUSTOMER
- ASCLIENTRELATIONSHIP**
- ASCLIENTRELATIONSHIPFIELD**
The User can use the following tables to filter Unified Search for Suspense:
- ASSUSPENSE
- ASSUSPENSEFIELD
The User can use the following tables to filter Unified Search for Policy:
- ASPOLICY
- ASPOLICYFIELD
- ASROLE
The User can use the following tables to filter Unified Search for Case:
- ASCASE
- ASCASEFIELD
- ASCASEPOLICY
- ASPOLICY
The User can use the following tables to filter Unified Search for Disbursement:
- ASDISBURSEMENT
- ASDISBURSEMENT
- ASDISBURSEMENTAPPROVAL
Note: ** The AsClientRelationship table stores CLIENTGUIDs in PRIMARYCLIENTGUID and SECONDARYCLIENTGUID columns. This will require additional attributes to define whether the PrimaryClientGUID or SecondaryClientGUID should be used.
UnifiedSearch Elements/Attributes
Element/Tag | Attribute | Definition | Element/Attribute Value and Description |
---|---|---|---|
<UnifiedSearch> |
| The opening and closing tags of the UnifiedSearch business rule. |
|
<Entity> | ENTITYNAME | Required, repeatable element: Opening and closing tag of the element entity. Indicates and defines entity that can be searched using quick search. | ENTITYNAME allows configurer to specify the name of the entity. |
<Filter> | |||
<Conditions> | SecurityGroup Exclusion conditiondefinition:
| Comma separated security group names:
| |
<Conditions> | ENTITY RELATIONSHIPKEY | Repeatable | Specifies the table to be used for the filter. Only required when ENITITY is, CLIENTRELATIONSHIP OR CLIENTRELATIONSHIPFIELD. Should be set to either Primary or Secondary |
Repeatable | Specifies the field name to be used. For the main tables, this would be the column name. For Field tables this would be the field name. | ||
Specifies the value to search on the attribute should correspond to the datatype of the field: TextValue/ IntValue/ FloatValue/ DateValue | |||
<Criteria> | Required, repeatable element: Opening and closing tag of the element criteria. Indicates and defines criteria that the entity can be searched by using quick search. | ||
<Name> | Required element: Defines the name of the criteria. | ||
<DisplayName> | Required element: Defines the display name of the criteria. It shall be used to display the ghost text. | ||
<Group> | Required Element: This tag identifies the table where the specified field is stored. Note: The name of the table should be mentioned without the prefix As. For e.g.: for the Fixed field, DisbursementNumber, <Group> tag is defined as below: <Group>Disbursement</Group> |
|
XML Schema
<UnifiedSearch>
<Entity ENTITYNAME="Policy|Client|Customer|Case|Disbursement|Suspense|Bill">
<Criteria>
<Name></Name>
<DisplayName></DisplayName>
</Criteria>
<Criteria>
<Name></Name>
<DisplayName></DisplayName>
</Criteria>
</Entity>
</UnifiedSearch>
XML Example
<UnifiedSearch>
<Entity ENTITYNAME="Policy">
<Criteria>
<Name>PolicyName</Name>
<DisplayName>Policy Name</DisplayName>
</Criteria>
<Criteria>
<Name>PolicyNumber</Name>
<DisplayName>Policy Number</DisplayName>
</Criteria>
</Entity>
</UnifiedSearch>
XML Example for UnifiedSearch with Filter Configuration.
<UnifiedSearch>
<Entity ENTITYNAME="Case">
<Filter>
<Conditions SecurityGroup = "AlamereGroupSuper,AlamereTest" type ="Exclusion">
<Condition Entity = "ASCASEFIELD">Fieldname = 'Employee' and TextValue = 'Oracle'</Condition>
</Conditions>
<Criteria>
<Name>CaseNumber</Name>
<Display>Case Number</Display>
<Group>Case</Group>
</Criteria>
<Criteria>
<Name>PolicyNumber</Name>
<Display>Application Number</Display>
<Group>Policy</Group>
</Criteria>
</Entity>
<Entity ENTITYNAME="Batch">
<Criteria>
<Name>BatchNumber</Name>
<Display>Batch Number</Display>
<Group>Batch</Group>
</Criteria>
</Entity>
<Entity ENTITYNAME="Customer">
<Filter>
<Conditions SecurityGroup = "AlamereGroupSuper,AlamereTest" type ="Exclusion">
<Condition Entity = "ASCLIENTFIELD">Fieldname = 'Employee' and TextValue = 'Oracle'</Condition>
</Conditions>
<Criteria>
<Name>CustomerNumber</Name>
<Display>Customer Number</Display>
<Group>GroupCustomer</Group>
</Criteria>
<Criteria>
<Display>Customer Name</Display>
<Name>CompanyName</Name>
<Group>Client</Group>
</Criteria>
</Entity>
<Entity ENTITYNAME="Client">
<Filter>
<Conditions SecurityGroup = "AlamereGroupSuper,AlamereTest" type ="Exclusion">
<Condition Entity = "ASCLIENTFIELD">Fieldname = 'Employee' and TextValue = 'Oracle'</Condition>
</Conditions>
<Criteria>
<Name>TaxID</Name>
<Display>Tax ID</Display>
<Group>Client</Group>
</Criteria>
<Criteria>
<Display>LASTNAME</Display>
<Name>LastName</Name>
<Group>Client</Group>
</Criteria>
</Entity>
<Entity ENTITYNAME="Policy">
<Filter>
<Conditions SecurityGroup = "AlamereGroupSuper,AlamereTest" type ="Exclusion">
<Condition Entity = "ASPOLICYFIELD">Fieldname = 'Employee' and TextValue = 'Oracle'</Condition>
</Conditions>
<Criteria>
<Name>PolicyNumber</Name>
<Display>Policy Number</Display>
<Group>Policy</Group>
</Criteria>
<Criteria>
<Name>PolicyName</Name>
<Display>Policy Name</Display>
<Group>Policy</Group>
</Criteria>
</Entity>
</UnifiedSearch>