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.
Suitescript 2.0: Wrong parameter type: filters is expected as Array
Hi
I have the following code:
define(["N/runtime", "N/search", "N/util"], function (runtime, search, util) {
function getInputData() {
var scriptObj = runtime.getCurrentScript();
var filtersParam = runtime
.getCurrentScript()
.getParameter({ name: "custscript_selected_lines_json" });
var lineIdToTransactionIdMap = JSON.parse(filtersParam);
log.debug("lineIdToTransactionIdMap", lineIdToTransactionIdMap);
var searchResults = [];
function createDynamicFilter(keyValuePairs) {
var filters = [];
var index = 0;
for (var internalId in keyValuePairs) {
if (keyValuePairs.hasOwnProperty(internalId)) {
var lineIds = keyValuePairs[internalId];
var internalIdFilter = search.createFilter({
name: "internalid",
operator: search.Operator.ANYOF,
values: [internalId],
});
var lineIdFilters = [];
for (var i = 0; i < lineIds.length; i++) {
var lineIdFilter = search.createFilter({
name: "line",
operator: search.Operator.EQUALTO,
values: [lineIds[i]],
});
lineIdFilters.push(lineIdFilter);