Я новичок в Netsuite. У меня странная проблема, и я не могу ее решить.
Я использую WorkFlow с состояниями, и у меня есть сохраненные результаты поиска, они возвращают совпадающие элементы в заказе на продажу. Мне нужно обновить настраиваемое поле в каждой строке для возвращаемых элементов.
У меня это есть в моем сценарии действий
itemSearch.run().each(elem => {
let lineNum = parseInt(elem.getValue('linesequencenumber'), 10) - 1;
log.audit({
title: 'linesequencenumber',
details: {lineNum, type: typeof lineNum}
});
newRec.setSublistValue({
sublistId: 'item',
fieldId: SO_LN_ITEM_PROCESS,
line: lineNum,
value: 1
});
log.debug({ // this one retrieves the field value correctly but when refresh page after WF finished and existed then the fields are empty.
title: 'currValue', details: newRec.getSublistValue({
sublistId: 'item',
fieldId: SO_LN_ITEM_PROCESS,
line: lineNum,
})
});
updatedItemsCnt++;
return true;
});
Он должен работать и обновлять значение полей. Если я использую getSublistValue
сразу после метода setSublistValue
и регистрирую его, он показывает мне ожидаемое значение. После запуска refre sh страница и поле не обновляются. Пусто. И вот странная вещь, которую я не понимаю. Следующий скрипт работает. Но это жестко запрограммировано.
[0, 4].forEach(line => {
newRec.setSublistValue({
sublistId: 'item',
fieldId: SO_LN_ITEM_PROCESS,
line: lineNum,
value: 1
});
});
Если я создаю массив вручную, поля обновляются. Я попытался поместить sh значения в массив и использовать forEach для l oop для перебора значений, но поля все еще не обновляются, только если я создаю массив вручную.
Журнал
1 View Debug currValue 7/10/2020 2:40 pm -System- 1
2 View Audit linesequencenumber 7/10/2020 2:40 pm -System- {"lineNum":4,"type":"number"}
currValue
- это одно из значений, записанных сразу после setSublistValue
.
Что я делаю не так?