如何用代码填充S/4HANA销售订单行项目的数量字段
我的任务是用代码生成S/4HANA销售订单(Sales Order)的行项目,并且填充对应的quantity(数量)值。
最开始我用了下面的代码,把quantity的值写入item字段target_qty:
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:
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的原创文章,请关注公众号"汪子熙":

如何用代码填充S/4HANA销售订单行项目的数量字段的更多相关文章
- C4C销售订单行项目价格维护方法
需求很简单,能够创建销售订单,在行项目里添加产品,带出价格来,同时把总价显示在销售订单抬头区域. 如下图所示: 下面是具体配置. Business Configuration里,点击Sales Ord ...
- 销售订单行上行号LINE_SHIPMENT_OPTION_NUMBER
销售订单行上行号:LINE_SHIPMENT_OPTION_NUMBER 取值: ( 1) Line块的块级触发器POST-QUERY调用: OE_LINE.Post_Query;(来自于库OE ...
- ME_PROCESS_PO_CUST 实现采购订单行项目增强
用户希望创建采购订单时,输入行项目时,能根据采购订单类型,自动带出科目分类类别. 业务顾问看了一下配置,不能实现这个功能,所以用增强实现. 采购订单BADI增强:ME_PROCESS_PO_CUST. ...
- SAP S/4HANA销售订单创建时,会自动触发生产订单的创建
这个自动触发的过程是怎么实现的? 使用下面的代码创建一个销售订单: DATA: ls_header TYPE bapisdhd1, ls_headerx TYPE bapisdhd1x, lt_bap ...
- SAP四代增强实现:销售订单复制项目文本时不需要显示文本框和回车
最近接收到一个业务需求,在SAP依据销售订单复制时,如果订单里面的项目有多个文本,系统就会显示复制的文本框处理,让用户选择是否复制,这个就让销售很不舒服,如果有几十个项目,每个项目有几个文本,那就就要 ...
- ABAP-复制采购订单行项目到新的行
FUNCTION zmm_fm_copy2new. *"------------------------------------------------------------------- ...
- 用ABAP代码读取S/4HANA生产订单工序明细
在S/4HANA事务码CO03显示的Production Order里,我希望用ABAP代码显示出该订单的operation(工序)ID,描述和状态Status,如下图所示: 很简单的几行ABAP代码 ...
- SAP 采购订单行项目中科目分配被隐藏,发现行项目设置中显示字段长度为0
1.sm30 维护 视图 TCVIEW 修改对应字段的显示长度
- ABAP-根据采购订单行项目统计供应商未清额和已清额
1.传入和传出表结构都是一样的: FUNCTION zmm_fm_po_invence. *"------------------------------------------------ ...
随机推荐
- Educational Codeforces Round 7 B
Description You are given the current time in 24-hour format hh:mm. Find and print the time after a ...
- MessageFormat 格式化String
public static String buildFailureString(AtomicInteger count, String cause) { return MessageFormat.fo ...
- AD域账号验证
public partial class _Default : Page { [DllImport("advapi32.dll")] private static extern b ...
- 2.centos7 安装Mesos和marathon
master节点 节点名称 IP地址 master1 192.168.161.128 由于硬件资源有限,这里仅安装一个master节点,会存在单点问题.在实际生产中,尽量不要这样操作. 1.安装zoo ...
- C实现shell管理的一个例子
通常情况下,一个进程(比如cat /tmp/tt.txt)的输出与输入是标准输入(stdin或者0).标准输出(stdout或者1) shell 获取tt.txt文件中包含aa的行记录,涉及两个进程, ...
- JavaScript base64多图上传
<div> <form action="/home/Uplod" method="post" enctype="multipart/ ...
- Unity3d 破解
在官网上或者其他地方下载unity3d后 运行注册机,需要详细的设置可以点击edit 一.点击browse,选择安装unity目录下的Editor文件夹 二.选择path,会提示Pathed 三. ...
- WCF rest 的帮助页面和缓存机制
打开vs2010 在工具选项中选择扩展管理器——联机库 安装WCF REST Service Template 40(CS)模板 安装后新建wcf服务应用程序,删除默认建立的文件. 新建RestWcf ...
- Android Studio CMake 生成多个so
生成多个so案例 这里stringFromJNI和stringFromJNI11分别是调用one-lib和two-lib两个so package com.test.ndkmoreso; import ...
- listview适配器中的控件的点击事件并传值
@Override public View getView(final int position, View convertView, ViewGroup parent) { // TODO Auto ...