netsuite 库存明细子记录
Posted
技术标签:
【中文标题】netsuite 库存明细子记录【英文标题】:netsuite inventory detail subrecord 【发布时间】:2013-10-27 14:11:02 【问题描述】:我正在尝试通过脚本填充销售订单行项目的库存详细信息子记录。 该脚本是一个用户事件脚本,将在提交之前运行。 此时用户已经输入了行项目信息:即。项目、数量、批号(自定义选择字段,其中选项是库存编号)。
我使用以下内容填充库存详细信息子记录:
for (var i=1; i<=numberOfLineItems; i++)
nlapiSelectLineItem('item',i);
//First get the Lot Number and Quantity
var lotNumber = nlapiGetCurrentLineItemValue('item', 'custcol_select_lot_number');
var quantity = nlapiGetCurrentLineItemValue('item', 'quantity');
var inventoryDetail=nlapiCreateCurrentLineItemSubrecord('item','inventorydetail');
inventoryDetail.selectNewLineItem('inventoryassignment');
inventoryDetail.setCurrentLineItemValue('inventorydetail', 'issueinventorynumber', lotNumber);
inventoryDetail.setCurrentLineItemValue('inventorydetail', 'quantity', quantity);
inventoryDetail.commitLineItem('inventoryassignment');
inventoryDetail.commit();
nlapiCommitLineItem('item');
当我这样做时,我收到以下错误:
通知 (SuiteScript) 您必须为此交易输入至少一个行项目。
有人知道我为什么会收到此错误吗?
谢谢!
【问题讨论】:
【参考方案1】:第 10 行和第 11 行有错误。此外,在我在客户中心的特殊情况下,我需要将此代码放入 After Submit 并加载记录。这是更正后的代码:
for (var i=1; i<=numberOfLineItems; i++)
SOrecord.selectLineItem('item',i);
//First get the Lot Number and Quantity
var lotNumber = SOrecord.getCurrentLineItemValue('item', 'custcol_select_lot_number');
var quantity = SOrecord.getCurrentLineItemValue('item', 'quantity');
var available = SOrecord.getCurrentLineItemValue('item','available');
nlapiLogExecution('debug','lineNum, LotNumID, Quantity, available',i + ', ' + lotNumber + ', ' + quantity + ', ' + available);
var inventoryDetail = SOrecord.createCurrentLineItemSubrecord('item','inventorydetail');
inventoryDetail.selectNewLineItem('inventoryassignment');
inventoryDetail.setCurrentLineItemValue('inventoryassignment', 'issueinventorynumber', lotNumber);
inventoryDetail.setCurrentLineItemValue('inventoryassignment', 'quantity', quantity);
inventoryDetail.commitLineItem('inventoryassignment');
inventoryDetail.commit();
SOrecord.commitLineItem('item');
nlapiSubmitRecord(SOrecord);
【讨论】:
@maty77 Peter 你能帮我解决这个问题吗***.com/questions/63343560/…以上是关于netsuite 库存明细子记录的主要内容,如果未能解决你的问题,请参考以下文章
Netsuite - 加载前的 Suitescript 用户事件 - 获取子列表值加入 -> 设置子列表值自定义子记录
设置子列表字段值时的 NetSuite SuiteScript 2.0 invalid_fld_value