A Search Filter Contains an Invalid Operator
Created: June 13, 2017
It's important to remember that a Lookup is simply a convenience method for a Search, so we can expect them to behave like Searches. It means that we look at the Search Columns area of the Records Browser to find field names for our Lookups. It also means that any Errors caused by our Lookups will appear as Search Errors.
For example:
Notice (SuiteScript): A Search filter contains an invalid operator, or is not in proper syntax: internalid
This is a very common error to get when trying a Lookup. It can be misleading if
you encounter this error and scan the guilty script, because there may well be
no mention of internalid
or any Search Filters.
What's usually happening is that a Lookup is receiving an invalid (often null
)
record ID parameter. For instance, you may have something like:
var caseData = s.lookupFields({
type: s.Type.SUPPORT_CASE,
id: caseId,
columns: [
"casenumber",
"createddate",
"enddate"
]
});
If caseId
is ever undefined
or null
, you will see the error mentioned
above.