Discussions
Join us for complimentary one-day events around the world and step into a future fueled by AI and limitless potential. Explore new breakthroughs, sharpen your skills, and connect with experts who are shaping what’s next. Experience bold keynotes, interactive learning, and connections that span the global NetSuite community. Discover what's next at SuiteConnect Tour 2026.
weired problems
I want to extract invoices whose status is open and whose duedate is between a certain time and today. I have wrote the scripts as follows:
var searchFilters = new Array();
var searchColumns = new Array();
searchFilters[0] = new nlobjSearchFilter( 'duedate', null, 'after', 'daysago15' );
// searchFilters[1] = new nlobjSearchFilter( 'status', null, 'anyof', 'open' );
searchColumns[0] = new nlobjSearchColumn( 'entity' );
searchColumns[1] = new nlobjSearchColumn( 'email' );
searchColumns[2] = new nlobjSearchColumn( 'total' );
searchColumns[3] = new nlobjSearchColumn( 'status' );
searchColumns[4] = new nlobjSearchColumn( 'trandate' );
searchColumns[5] = new nlobjSearchColumn( 'duedate' );
var searchresults = nlapiSearchRecord( 'invoice', null, searchFilters, searchColumns );
I have two problems: one is that why this search is returning duplicated records. the other is how could I only select the ones with the status open. From the guide I could see that the record field status is text type, however the search column and search filter for this is select. there are multiple operators to select type. which should I use?