queryRecordType with an "or" condition
I need an Expression Rule that has an or condition for a filed.
I have a list of clergy assignments and I need to pull all current assignments and those that terminated over the last year. The record type, CPMA Clergy Position has a termination date for the assignment, clergyPositionTermEnd which is a date formatted field. If the assignment is for a fixed term, then there is a future date in the field. If the assignment is a permanent assignment, then the field date is null.
The or function would look like this.
or(
RecordType!CPMA Clergy Position.field.clergypositiontermend >= today()-365,
isNullOrEmpty(RecordType!CPMA Clergy Position.field.clergypositiontermend)
)
However, I do not understand how to use this inside an Expression Rule. My Expression Rule using the queryRecordType function looks like this.
if(
a!isNotNullOrEmpty(ri!clergyId),
a!queryRecordType(
recordType: 'recordType!CPMA Clergy Position',
pagingInfo: a!pagingInfo(startIndex: 1, batchSize: 5000),
filters: {
a!queryFilter(
field: 'recordType!CPMA Clergy Position.fields.clergyId',
operator: "=",
value: ri!clergyId
),
a!queryFilter(
field: 'recordType!CPMA Clergy Position.fields.clergypositiontermend',
operator: ">=",
value: today()-365
),
a!queryFilter(
field:'recordType!CPMA Clergy Position.fields.clergypositiontermend',
operator: "is null"
)
}
),
null
).data
However, it doesn't work. No values are returned. I am assuming that Appian treats the listing of queryFilters as an "and" condition. I have tried using the If function to check to see if the clergyPositionTermEnd field is null, but that only pulls records with a value in the field.
Thanks for you help!
