#suitescript2.0
#suitescript2.0
Вопрос:
Я передаю заказы на продажу, сгруппированные по элементам, в функцию. Мне нужно загрузить заказы на продажу, чтобы изменить запись заказа на продажу, чтобы она уже была обработана. Как мне получить все заказы на продажу, сгруппированные по товару?
var itemId = result.getValue({
name: 'item',
summary: 'GROUP'
});
Приведенный выше код дает мне идентификатор товара, по которому группируются заказы в данном результате. В одной группе может быть любое количество продаж.
Ответ №1:
Выполнение сгруппированного сохраненного поиска в SuiteScript не дает вам возможности «детализировать», как вы можете при выполнении аналогичного поиска в пользовательском интерфейсе. Как только у вас есть сводные критерии для любого столбца в сохраненном поиске, Netsuite требует, чтобы все ваши столбцы были суммированы. Если вы хотите получить внутренние идентификаторы для заказов на продажу, то они должны быть возвращены в виде сводного столбца в сохраненном коде поиска.
Что-то вроде этого:
const searchObj = search.create({
type: search.Type.SALES_ORDER,
filters: [
['mainline', 'is', 'F']
//,'AND', any other filters you need...
],
columns: [
search.createColumn({
name: "item",
summary: "GROUP"
}),
search.createColumn({
name: "formula(text)",
summary: "MAX",
formula: "ns_concat({internalid})"
})
]
}).run().each(function(result) {
const itemId = result.getValue({name: "item", summary: "GROUP"})
const salesOrderIds = result.getValue({
name: "formula(text)",
summary: "MAX",
formula: "ns_concat({internalid})"
}).split(',')
return true
})