Description
Searches for given text in specific properties or entities.
Returns
A struct that contains the following:
An array of structs (with the entity and scorebeing the keys) in the following format:
Searches for given text in specific properties or entities.
A struct that contains the following:
An array of structs (with the entity and scorebeing the keys) in the following format:
data -[{entity: entity1, score: entity1_score}, {entity: entity2, score: entity2_score}, ..... ]
ORMSearch("query_text", "entityName")ORMSearch("query_text", "entityName", fields)ORMSearch("query_text", "entityName", fields, optionMap)
Parameters
Parameter |
Description |
---|---|
query_text |
The text to be searched for or a complete Lucene query.In the case of ORMSearch("query_text", "entityName"), only Lucene query is supported.For details of Lucene query, see http://lucene.apache.org/core/old_versioned_docs/versions/3_0_0/queryparsersyntax.html |
entityName |
Name of the entity to be searched. |
fields |
Fields in which search has to be performed. This can be an array of strings.If you are performing a Lucene query, you need not specify this field. In other words, if you do not specify this value, a Lucene query is performed.Field name is case-sensitive. |
optionMap |
Extra options that can be passed while executing Lucene query.The options are:
|
When you perform a date search, use the format yyyymmdd as shown in the following example:
objs = ORMSearch("datecheck:[#dateformat(dateadd("d",5,now()),"yyyymmdd")# TO #dateformat(dateadd("d",35,now()),"yyyymmdd")#]","C2",[],{maxresults=2});
If you are performing a time search, use the UTC format.
Example 1: ORM search based on Lucene query
ORMSearch("FirstName:ch*","Employee"); ORMSearch("ch*","Employee",["FirstName"]); objs = ORMSearch('FirstName:ch*',"Employee",[],{sort="salary",maxresults=5,offset=2});
ORMSearch("john*","DeveloperEntity,UserEntity",["firstname"]);
In this example, first name is searched in the DeveloperEntity and UserEntity and a composite array of entities are returned.
This example shows how to perform ORM search on all subentities that inherit a super entity. Assume that USEmployeeEntity and UKEmpoyeeEntity are extending EmployeeEntity. You can search both the subentities using the following code:
ORMSearch("john*","EmployeeEntity",["FirstName"]);
Example 4: ORM search in relationships
In this example, products and categories have a many-to-one relationship. You can search all products of a specific category using the following code:
ORMSearch("CategoryID.CategoryName:In*","cproducts",[]);