前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何用代码填充S/4HANA销售订单行项目的数量字段

如何用代码填充S/4HANA销售订单行项目的数量字段

原创
作者头像
Jerry Wang
发布2018-11-10 20:07:03
4730
发布2018-11-10 20:07:03
举报

我的任务是用代码生成S/4HANA销售订单(Sales Order)的行项目,并且填充对应的quantity(数量)值。

最开始我用了下面的代码,把quantity的值写入item字段target_qty:

代码语言:txt
复制
ls_order_items_in-item_categ = 'TAN'.

ls_order_items_in-material = 'REDUCER_A'.

ls_order_items_in-target_qty = 999.

ls_order_items_in-itm_number = 10.

ls_order_item_x-item_categ = 'X'.

ls_order_item_x-material = 'X'.

ls_order_item_x-target_qty = 'X'.

ls_order_item_x-itm_number = 'X'.

ls_order_item_x-updateflag = 'I'.

APPEND ls_order_item_x TO lt_order_item_x.

APPEND ls_order_items_in TO lt_order_items_in.

执行后发现不工作。

研究了一个维护有正确quantity的行项目,发现这个quantity字段实际上是维护在item的schedule line上的:

而我们在item上看到的order quantity,从F1帮助文档里已经看得很清楚了,是一个累加值,所有schedule line的quantity的求和。

所以正确的代码应该是还得创建item的schedule line:

代码语言:txt
复制
ls_schdlin-itm_number = 10.

ls_schdlin-req_qty = 3.

ls_schdlinx-itm_number = 'X'.

ls_schdlinx-itm_number = 'X'.

ls_schdlinx-updateflag = 'X'.

APPEND ls_schdlin TO lt_schdlin.

APPEND ls_schdlinx TO lt_schdlinx.

完整代码下图所示:

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档