Я пытаюсь получить серийные номера из записи выполнения в учетной записи Netsuite, которая использует Advanced Inventory (в отличие от обычной системы инвентаризации Netsuite, Advanced Inventory хранит серийный номер во вспомогательной записи в записи транзакции). Я пробовал использовать пример, который предоставляет Netsuite, и получил ответ NULL. Я попытался получить доступ к существующему сохраненному поиску, но получаю неправильные поля (сохраненный поиск отлично работает в пользовательском интерфейсе). Кто-нибудь знает, в чем прикол? Вот пример кода, который предоставляет Netsuite -
var ffill=nlapiLoadRecord('itemfulfillment', 5892, {recordmode: 'dynamic'});
ffill.selectLineItem('item', 1);
var invDetailSubrecord = ffill.viewCurrentLineItemSubrecord('item', 'inventorydetail');
invDetailSubrecord.selectLineItem('inventoryassignment', 1);
nlapiLogExecution('DEBUG', 'inventory number: ' + invDetailSubrecord.getCurrentLineItemValue('inventoryassignment', 'receiptinventorynumber'));
С помощью приведенного выше кода я получаю NULL из оператора Debug - «Debug Serial Mgr - Create inventory number = null»
А вот код с использованием существующего сохраненного поиска -
var results = nlapiSearchRecord('itemfulfillment', 620, null, null);
var result = results[0];
var columns = result.getAllColumns();
var columnlen = columns.length;
for (ci = 0; ci < columnLen; ci++)
{
var column = columns[ci];
var label = column.getLabel();
var value = result.getValue(column);
nlapiLogExecution('DEBUG','Serial Mgr', 'Columns ' + label + " " + value);
С помощью этого кода я получаю 3 столбца из поиска, но неправильные поля (Itemship и 553 неверны) - «Debug Serial Mgr Columns null 10/16/2013» «Debug Serial Mgr Columns null ItemShip» «Debug Serial Mgr Columns null 553 "