Discussions
Stay up-to-date with the latest news from NetSuite. You’ll be in the know about how to connect with peers and take your business to new heights at our virtual, in-person, on demand events, and much more.
Now is the time to ask your NetSuite-savvy friends and colleagues to join the NetSuite Support Community! Refer now! Click here to watch and learn more!
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Stay in the Know
Be sure you're subscribed to NetSuite communication to stay in the know about monthly happenings, updates and announcements. Subscribe
Be sure you're subscribed to NetSuite communication to stay in the know about monthly happenings, updates and announcements. Subscribe
Search Filter Expressions - Criteria Negation In User-Event Scripts
Negation in search filter expressions (on internal id field match) do not seem to work when run in user event scripts but work when run via a client script.
Client Script Result:
search_results_1[9127477] (should be same id) 9127477 search_results_2[9127477] (should be null) null
User Event Script Result:
search_results_1[9127477] (should be same id) 9127477 search_results_2[9127477] (should be null) 9127477
function testSearchFilterNegation(sales_order_id) { var sales_order = nlapiLoadRecord('salesorder', sales_order_id); var search_filters_1 = [ ['mainline', 'is', 'T'], 'and', ['entity', 'is', sales_order.getFieldValue('entity')], 'and', ['internalid', 'is', sales_order.getId()] ]; var search_results_1 = nlapiSearchRecord('salesorder', null, search_filters_1, [ new nlobjSearchColumn('internalid') ]); if(typeof window.console === 'undefined') nlapiLogExecution('DEBUG', 'search_results_1[' + sales_order.getId() + '] (should be same id)', (search_results_1 ? search_results_1[0].getValue('internalid') : null)); else console.log('search_results_1[' + sales_order.getId() + '] (should be same id)', (search_results_1 ? search_results_1[0].getValue('internalid') : null)); var search_filters_2 = [ ['mainline', 'is', 'T'], 'and', ['entity', 'is', sales_order.getFieldValue('entity')], 'and', 'not', ['internalid', 'is', sales_order.getId()] ]; var search_results_2 = nlapiSearchRecord('salesorder', null, search_filters_2, [ new nlobjSearchColumn('internalid') ]); if(typeof window.console === 'undefined') 0