详细报错:

"type":"error.SuiteScriptError","name":"USER_ERROR","message":"在更改数量之后,您仍需要重新配置库存详细信息记录。"

"type":"error.SuiteScriptError","name":"USER_ERROR","message":"You still need to reconfigure the inventory detail record after changing the quantity."

原因:

SuiteAnswers ID 81448 的解答:

当系统启用了库存状态功能,访问子记录时会发生已添加行的行为,对新创建的库存详细信息子记录的子列表使用 selectNewLine 方法会返回错误“在更改数量之后,您仍需要重新配置库存详细信息记录” 。如果遇到此问题,建议使用 selectline 方法。

解决方案

var rec = record.transform({
fromType: 'workorder',
fromId: wordOrderId,
toType: 'workordercompletion',
isDynamic: true,
defaultValues: {
isbackflush: 'T'
}
}); // 正文字段赋值
rec.setValue('trandate', new Date());
/** 其他正文字段赋值 **/ // 行字段赋值
var sublistId = 'component';
var lineCounts = rec.getLineCount(sublistId);
for (var i = 0; i < lineCounts; i++) {
rec.selectLine({
sublistId: sublistId,
line: i
});
rec.setCurrentSublistValue({
sublistId: sublistId,
fieldId: 'quantity',
value: lineData[i].qty,
});
var subRec = rec.getCurrentSublistSubrecord({
sublistId: sublistId,
fieldId: 'componentinventorydetail',
});
var detailData = lineData[i].details;
var detailSublistId = 'inventoryassignment';
for (var j = 0; j < detailData.length; j++) {
// 根据SuiteAnswers的解答,因为启用了库存状态功能,此处需要使用selectLine方法,并非selectNewLine方法
// subRec.selectNewLine({sublistId: detailSublistId});
subRec.selectLine({sublistId: detailSublistId,line:j});
subRec.setCurrentSublistText({
sublistId: detailSublistId,
fieldId: 'issueinventorynumber',
text: detailData[j].invNum,
});
subRec.setCurrentSublistValue({
sublistId: detailSublistId,
fieldId: 'binnumber',
value: detailData[j].binNum,
});
subRec.setCurrentSublistValue({
sublistId: detailSublistId,
fieldId: 'inventorystatus',
value: detailData[j].status,
});
subRec.setCurrentSublistValue({
sublistId: detailSublistId,
fieldId: 'quantity',
value: detailData[j].quantity,
});
subRec.commitLine({
sublistId: detailSublistId
});
}
rec.commitLine({
sublistId: sublistId
});
} rec.save();

另外,根据实际测试,使用标准模式创建完工单也可以避免该报错。

var rec = record.transform({
fromType: 'workorder',
fromId: wordOrderId,
toType: 'workordercompletion',
isDynamic: false,
defaultValues: {
isbackflush: 'T'
}
}); // 正文字段赋值
rec.setValue('trandate', new Date());
/** 其他正文字段赋值 **/ // 行字段赋值
var sublistId = 'component';
var lineCounts = rec.getLineCount(sublistId);
for (var i = 0; i < lineCounts; i++) {
rec.setSublistValue({
sublistId: sublistId,
fieldId: 'quantity',
value: lineData[i].qty,
line: i
});
var subRec = rec.getSublistSubrecord({
sublistId: sublistId,
fieldId: 'componentinventorydetail',
line: i
});
var detailData = lineData[i].details;
var detailSublistId = 'inventoryassignment';
for (var j = 0; j < detailData.length; j++) {
// 标准模式下,给issueinventorynumber赋值时,建议使用setSublistValue方法,而非setSublistText方法
// 原因:当系统中存在不同物料但库存编码相同时,此处可能发生USER_ERROR的错误,此类错误较难排查
subRec.setSublistValue({
sublistId: detailSublistId,
fieldId: 'issueinventorynumber',
value: detailData[j].invNumId,
line: j
});
subRec.setSublistValue({
sublistId: detailSublistId,
fieldId: 'binnumber',
value: detailData[j].binNum,
line: j
});
subRec.setSublistValue({
sublistId: detailSublistId,
fieldId: 'inventorystatus',
value: detailData[j].status,
line: j
});
subRec.setSublistValue({
sublistId: detailSublistId,
fieldId: 'quantity',
value: detailData[j].quantity,
line: j
});
}
} rec.save();

其他参考答案:

NetSuite 开发日记 —— 库存详细信息记录更改数量问题的更多相关文章

  1. Asp.Net MVC4入门指南(9):查询详细信息和删除记录

    在本教程中,您将查看自动生成的Details和Delete方法. 查询详细信息和删除记录 打开Movie控制器并查看Details方法. public ActionResult Details(int ...

  2. [课程设计]Scrum 3.3 多鱼点餐系统开发进度(下单详细信息页面设计)

    Scrum 3.3 多鱼点餐系统开发进度(下单详细信息页面设计)  1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点 ...

  3. 钉钉开发入门,微应用识别用户身份,获取用户免登授权码code,获取用户userid,获取用户详细信息

    最近有个需求,在钉钉内,点击微应用,获取用户身份,根据获取到的用户身份去企业内部的用户中心做校验,校验通过,相关子系统直接登陆; 就是在获取这个用户身份的时候,网上的资料七零八落的,找的人烦躁的很,所 ...

  4. [课程设计]Scrum 3.4 多鱼点餐系统开发进度(下单详细信息页面&会员信息页面)

    Scrum 3.4 多鱼点餐系统开发进度(下单详细信息页面&会员信息页面) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队 ...

  5. [课程设计]Scrum 3.2 多鱼点餐系统开发进度(页面优化&下单详细信息页面)

    Scrum 3.2 多鱼点餐系统开发进度(页面优化&下单详细信息页面)  1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选 ...

  6. Scrum 3.2 多鱼点餐系统开发进度(页面优化&下单详细信息页面)

    Scrum 3.2 多鱼点餐系统开发进度(页面优化&下单详细信息页面)  1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选 ...

  7. 记录EntityValidationErrors的详细信息

    0.一个问题 使用过EF的人相信都会遇到Validation failed for one or more entities. See ‘EntityValidationErrors’这种异常,这是由 ...

  8. 微信公众号开发《一》OAuth2.0网页授权认证获取用户的详细信息,实现自动登陆

    原创声明:本文为本人原创作品,绝非他处转账,转载请联系博主 从接触公众号到现在,开发维护了2个公众号,开发过程中遇到很多问题,现在把部分模块功能在这备案一下,做个总结也希望能给其他人帮助 工欲善其事, ...

  9. 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息--3.3 Details用户详细信息]

    3.3 Details用户详细信息 用户详细信息是通过objectId获取.代码如下 public async Task<ActionResult> Details(string obje ...

  10. NX二次开发-UFUN获取工程图详细信息UF_DRAW_ask_drawing_info

    NX9+VS2012 #include <uf.h> #include <uf_draw.h> #include <uf_part.h> UF_initialize ...

随机推荐

  1. 使用HTML一键打包APK工具打包KRPANO全景项目

    "HMTL一键打包APK工具"可以把本地HTML项目或者网站打包为一个安卓应用APK文件,无需编写任何代码,支持在安卓设备上安装运行. 打包工具群:429338543 下载地址: ...

  2. PHPStudy hosts文件可能不存在或被阻止打开及同步hosts失败问题

    在使用PHPStudy建站包时,有时会遇到同步hosts失败的问题,可能是因为hosts文件不存在或被阻止打开.这个问题通常可以通过以下几个步骤解决: 步骤一:检查hosts文件是否存在 首先,我们需 ...

  3. MediaRecorder test

    public class MediaRecorder extends Object java.lang.Object    ↳ android.media.MediaRecorder Class Ov ...

  4. 【Dotnet 工具箱】基于 .NET 6 和 Angular 构建项目任务管理平台

    1.Reha 时间管理大师 Rhea 是一个基于 C# 和 .NET 6 开发的在线任务管理平台,类似于 禅道.Jira.Redmine, 滴答清单等. 支持多视图多维度统一管理任务.多级结构,工作区 ...

  5. Semantic Kernel .NET SDK 的 v1.0.0 Beta1 发布

    介绍 Semantic Kernel (SK) 是一个开源的将大型语言模型(LLM)与流行的编程语言相结合的SDK,Microsoft将Semantic Kernel(简称SK)称为轻量级SDK,结合 ...

  6. 【羚珑AI智绘营】分分钟带你拿捏SD中的色彩控制

    导言 颜色控制一直是AIGC的难点,prompt会污染.img2img太随机- 今天带来利用controlnet,实现对画面颜色的有效控制.都说AIGC是抽卡,但对把它作为工具而非玩具的设计师,必须掌 ...

  7. dijkstra算法(朴素 + 堆优化)

    dijkstra算法的大题思路是通过n - 1次迭代,每次迭代把一个点距汇点的最短路确定,当n - 1次循环过后所有点的最短路都已经确定 注意:dijkstra算法只适用于没有负权边的单源最短路 以下 ...

  8. 系统RAM几乎爆满与解决方法

    先说一遍,遇事不决就重启! 在电脑长时间运转下某些无良应用程序会产生大量的临时文件(目前我怀疑是有道云笔记) 最终导致系统爆炸 附图 在这种情况下,我下载了RAM实时监测我内存占用情况 结果发现pag ...

  9. 巅峰对决:英伟达 V100、A100/800、H100/800 GPU 对比

    近期,不论是国外的 ChatGPT,还是国内诸多的大模型,让 AIGC 的市场一片爆火.而在 AIGC 的种种智能表现背后,均来自于堪称天文数字的算力支持.以 ChatGPT 为例,据微软高管透露,为 ...

  10. Util应用框架基础(六) - 日志记录(四) - 写入 Exceptionless

    本文是Util应用框架日志记录的第四篇,介绍安装和写入 Exceptionless 日志系统的配置方法. Exceptionless 是一个日志管理系统,使用 Asp.Net Core 开发,比 Se ...