首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >NetSuite SuiteTalk项实现错误- VALID_LINE_ITEM_REQD

NetSuite SuiteTalk项实现错误- VALID_LINE_ITEM_REQD
EN

Stack Overflow用户
提问于 2021-02-28 03:51:12
回答 2查看 888关注 0票数 0

任何建议都是非常感谢的!

销售订单可以有50-100条线.每个这样都会有多个项目的实现。当我们通过SuiteTalk创建IF时,我们不知道哪些行已经完成,哪些行部分完成了。

创建soap时,我将重写项目列表。

如果销售订单上只有两个项目,并且所有行都已完成,则代码可以正常工作。

当另一个过程在销售订单上添加/删除了项目,从而导致5行订单具有soLines (如1、45、245、300和301 )时,就会出现麻烦。如果我想完成第245行,我将收到VALID_LINE_ITEM_REQD。

有人会对需要初始化的内容提出建议吗?

提前谢谢你,

帐单

下面是一个示例请求/响应。

请求

代码语言:javascript
运行
复制
<record xmlns:q1="urn:sales_2020_1.transactions.webservices.netsuite.com" xsi:type="q1:ItemFulfillment" externalId="mrk-so-2446425">
<q1:createdFrom internalId="2446425"/>
<q1:shippedDate>2020-12-25T06:00:00Z</q1:shippedDate>
<q1:shipStatus>_shipped</q1:shipStatus>
<q1:tranDate>2020-12-25T06:00:00Z</q1:tranDate>
<q1:generateIntegratedShipperLabel>false</q1:generateIntegratedShipperLabel>
<q1:itemList>
<q1:item>
<q1:location internalId="308"/>
<q1:quantity>1</q1:quantity>
<q1:item internalId="82198"/>
<q1:orderLine>101</q1:orderLine>
</q1:item>
</q1:itemList>
</record>

响应

代码语言:javascript
运行
复制
<writeResponse>
<platformCore:status xmlns:platformCore="urn:core_2020_1.platform.webservices.netsuite.com" isSuccess="false">
<platformCore:statusDetail type="ERROR">
<platformCore:code>VALID_LINE_ITEM_REQD</platformCore:code>
<platformCore:message>You must have at least one valid line item for this transaction.</platformCore:message>
</platformCore:statusDetail>
</platformCore:status>
<baseRef xmlns:platformCore="urn:core_2020_1.platform.webservices.netsuite.com" type="itemFulfillment" xsi:type="platformCore:RecordRef" externalId="mrk-so-2446425"/>
</writeResponse>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-11 19:17:44

您是否以初始化调用开始项目实现?

ItemFulfillmentItem有一个字段“orderLine”。这与SalesOrderItem 'line‘字段匹配。

如果您真正想要实现的内容可以从SO信息中计算出来,那么我只需通过实现行进行反向循环,使用orderLine值键入SalesOrder,并删除不应该出现在实现过程中的任何实现行。

票数 0
EN

Stack Overflow用户

发布于 2021-03-02 21:33:43

此事务至少必须有一个有效的行项。

这有很多原因:

backordered)

  • that (项目)不存在于此中的
  • ,因此项目没有可用数量的
  • (所有

行都关闭了

  • 错误的项

)。

在完成第一次实现之后,检查您的SO (部分实现)并验证您的还押行。

当你把你的所以变成满足之后

代码语言:javascript
运行
复制
var itemFulfillMent = record.transform( {
                fromType: context.createdfrom.recordType,
                fromId: context.createdfrom.id,
                toType: 'itemfulfillment',
                isDynamic: true,
            } );

用(行、项)制作数组

代码语言:javascript
运行
复制
    var itemsPosition = {};
    for ( var i = 0; i < itemFulfillMent.getLineCount( 'item' ); i ++ ) {
            itemsPosition[ itemFulfillMent.getSublistValue( 'item',  'item', i ) ] = i;
}

在itemsPosition中,您现在将知道项目的行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66405651

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档