#netsuite
Вопрос:
У меня есть сценарий действия рабочего процесса с переменной «сборка», которая содержит внутренний идентификатор элемента (тип всегда сборка). Теперь я хочу найти спецификации для этого товара. Однако мой поиск возвращает «Фильтр nlobjsearch содержит недопустимые критерии поиска: идентификатор». Попытка «internalid» также не работает. Если кто-нибудь может помочь, это было бы здорово.
var filters = new Array();
filters[filters.length] = new nlobjSearchFilter('internalid', 'assemblyitem', 'is', assembly);
var columns = new Array();
columns[columns.length] = new nlobjSearchColumn('internalid');
var searchResults = nlapiSearchRecord('bom', null, filters, columns);
var internalId = searchResults[1].getId();
var bom = searchResults[1].getValue('internalid');
Ответ №1:
Вы подтвердили, что значение переменной assembly
является допустимым внутренним идентификатором элемента сборки?
Также иногда, хотя, возможно, только в прошлом, у меня возникали проблемы с поиском внутренних идентификаторов, когда скалярный тест не работает, но работает следующее:
var filters = [
new nlobjSearchFilter('internalid', 'assemblyitem', 'anyof', [assembly])
];
Также следует попробовать еще одну вещь (даже если в словаре данных ее нет)::
var filters = [
new nlobjSearchFilter('assemblyitem', null, 'anyof', [assembly])
];