服务层:如何更新,添加和删除销售订单项目

2020-09-26 02:49发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我目前正在使用服务层来测试创建销售订单。 以下是我到目前为止的存档。

我接下来要做的是更新项目A00001,删除A00002,然后添加A00003。 我知道可以使用patch方法完成此操作,并将B1S-ReplaceCollectionsOnPatch应用于标头等于true。 下面是在邮递员中设置的标题信息。

以下是我要发出的PATCH请求,以更新第0行并添加商品代码A00003。 但是,出现如下错误。 你知道为什么这个电话不起作用吗?

(37.3 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我目前正在使用服务层来测试创建销售订单。 以下是我到目前为止的存档。

我接下来要做的是更新项目A00001,删除A00002,然后添加A00003。 我知道可以使用patch方法完成此操作,并将B1S-ReplaceCollectionsOnPatch应用于标头等于true。 下面是在邮递员中设置的标题信息。

以下是我要发出的PATCH请求,以更新第0行并添加商品代码A00003。 但是,出现如下错误。 你知道为什么这个电话不起作用吗?

(37.3 kB)
付费偷看设置
发送
3条回答
落灬小鱼
1楼 · 2020-09-26 03:21.采纳回答

我发现了为什么事情不起作用。 对于我要更新的LineNum 0,服务层想知道商品编号。 在包含LineNum 0的项目编号之后,它确实使用新值更新了该行,删除了我的第二个项目A00002,并添加了一个新项目A00003。 很高兴能够在不引用项目代码的情况下更新LineNum 0。

Tong__Ming
2楼-- · 2020-09-26 03:09

PATCH方法要求将请求实体中描述的一组更改应用于所标识的资源 通过Request-URI。 这里的定义很正确

因此,每当您尝试制作PATCH时,根据定义,服务层都会尝试更新您要求的字段。 如果某行不存在,则不会删除它,而是将其忽略。

要实现所需的功能,请使用 PUT方法。 需要正文中Order对象的全部内容,但是将完全替换您在DocumentLines数组上定义的内容。

大道至简
3楼-- · 2020-09-26 03:17

您好,我的要求与SAP此处所述完全相同 Business One v 9.2。

我尝试使用" B1S-ReplaceCollectionsOnPatch = true"的PUT方法和PATCH方法。 对于这两种情况,我都得到了完全相同的错误,如下所示:

有效载荷中每个文档行都提到了LineNum,ItemCode,UoMCode,UoMEntry字段。

可以请你帮忙。

一周热门 更多>