SuiteQL
SELECT *
FROM transactionline
WHERE ( transactionline.department, transactionline.cseg_grant ) IN (( '11',
'1' ))
The above query when run using suiteQL, It returns the below error
Error:
Search error occurred: Invalid or unsupported search
This is valid syntax in ORACLE
I have tried a sample query in Oracle
and there is no issue in the execution while this syntax does not work in SuiteQL
Our solution was to create a RESTlet that could execute the SQL via query.runSuiteQL(). I believe the problem you are experiencing is due to the native web service providing a paged response - and calling the /query/v1/suiteql endpoint without limit and offset parameters does not solve the problem.
You can confirm/try this yourself: test your SQL via query.runSuiteQL() and you'll get results, but use the same SQL via query.runSuiteQLPaged() and you'll get the error message 'Invalid or unsupported search'.
I think there is a limit of 5000 records using query.runSuiteQL().
Here's JS code for the RESTlet:
This RESTlet was adapted from work by Tim Dietrich. The above JS is transpiled from TypeScript (you'll want @hitc/netsuite-types):
I expect the native web service will improve in time rendering this approach redundant.