...
Code Block { "objType": "test__Timesheet", "fields": [ "_id", "name", "test__Project_Name", "test__Task_Name", "test__Billable", "test__Time_Spent", "test__Timesheet_Date", "test__Test_Lookup", "test__Test_Integer" ], "filters": { "conditions": [{ "leftField": { "fieldOptions": { "name": "test__Timesheet_Date" } }, "operator": "greaterThanEqualTo", "rightField": { "type": "static", "fieldOptions": { "value": "2021-05-14" } } }, { "leftField": { "fieldOptions": { "name": "test__Timesheet_Date" } }, "operator": "lessThanEqualTo", "rightField": { "type": "static", "fieldOptions": { "value": "2021-06-01" } } } ], "evaluationCriteria": "and" }, "orderBy": { "name": "asc" }, "limit": 10000200, "grouping": { "groupByFields": [], "aggregationFields": [] }, "searchText": "", "searchFields": [ "name" ], "showCount": true }
...
You can apply conditions to filter records to be queried
Conditions in the filters consist of leftfield, rightfield, and operator
The left field will be the object that contains fieldsOptions: {name: "fieldName"} where fieldName is the field on which the condition is based onapplied
The right field will be the object that contains fieldsOptions: {value: fieldvalue} where fieldValue is the value for which the record will be searched
Operators can be equals, notEquals, lessThan, greaterThan, lessThanEqualTo, greaterThanEqualTo, contains, startsWith, endsWith, in, notIn as per the field type selected in the left field
Evaluation criteria work with two operators are the logical operators to combine two or more conditions with “and” & “or”, evaluation criteria mainly use with multiple conditionconditions are combined with “and“ by default
orderBy:
The orderBy contains the object with the field name as key and asc or desc as value
If the orderBy is {fieldName: asc} then the records will be sorted in ascending order
If the orderBy is {fieldName: dsc} then the records will be sorted in descending order
...
Grouping contains the groupByFields and aggregationFields fields
The records are grouped by the fields provided in the groupByFields array
The aggregationFields is an array of objects where each object contains an operator, field, and name
Operator value can be sum, min, max, count, or avg
Based on the aggregation operation we want to perform, this field contains the name of the field on which the aggregation operation needs to be performed
...
Number of the records to be queried at once
e.g. if there are 200 records of an object and you set a limit of 100 then it will query the first 100 records and show them on the List View
The default limit is 200 or as per the page size if the data needs to be displayed on the table or listview
offset:
You can set the offset for the query on the object
If the offset is “n“ then the query will take the records “n+1” onwards
For e.g. if there are 200 records and you set offset 100 then it will show records from the 101st record on the List View
searchText:
Contains the search text to search the record by searchable fields
searchFields:
...
showCount:
showCount accepts a boolean value
If showCount is true, then the query shows the count of records retrieved
If showCount is false, then the query does not show the count of records retrieved
Period Component Query
If we want to To filter the records of an object for a particular duration e.g. for days, weeks, months, years, financial years, etc.
Period types are as follows:
days: n
If conditions: { createdOn: "days:n"}
It will return the records which are created between the current date to 'n' days
If conditions: { createdOn: "days:-n"}
It will return the records which are created from the 'n' days prior to the current date till the current date
weeks: n
If conditions: { createdOn: "weeks:n"}
It will return the records which are created between the current week to 'n' weeks
If conditions: { createdOn: "weeks:-n"}
It will return the records which are created from the 'n' weeks prior to the current week till the current week
months: n
If conditions: { createdOn: "weeks:n"}
It will return the records which are created between the current month to 'n' months
If conditions: { createdOn: "weeks:-n"}
It will return the records which are created from the 'n' months prior to the current month till the current month
calQuarters: n (calendar quarter)
If conditions: { createdOn: "calQuarters:n"}
It will return the records which are created between the current calendar quarter to 'n' calendar quarters
If conditions: { createdOn: "calQuarters:n"}
It will return the records which are created from the 'n' calendar quarter prior to the current calendar quarter till the current calendar quarter
fYQuarters: n (financial quatrer)
If conditions: { createdOn: "fYQuarters:n"}
It will return the records which are created between the current financial quarter to 'n' financial quarters
If conditions: { createdOn: "fYQuarters:n"}
It will return the records which are created from the 'n' financial quarter prior to the current financial quarter till the current financial quarter
calYears: n (current calendar year)
If conditions: { createdOn: "calYears:n"}
It will return the records which are created between the current calendar year to 'n' calendar years
If conditions: { createdOn: "calYears:n"}
It will return the records which are created from the 'n' calendar year prior to the current calendar year till the current calendar year
fYYears: n (current financial year)
If conditions: { createdOn: "fYYears:n"}
It will return the records which are created between the current financial year to 'n' financial years
If conditions: { createdOn: "fYYears:n"}
It will return the records which are created from the 'n' financial year prior to the current financial year till the current financial year
...