PP篇10 修改工单组件行
CO_XT_COMPONENT_CHANGE 修改工单组件行
DATA :
is_order_key TYPE coxt_ord_key,
is_order_component_key TYPE coxt_s_ord_comp_key,
l_mode TYPE char1 VALUE 'A'. DATA :
wa_resb TYPE resb,
es_bapireturn TYPE coxt_bapireturn,
e_error_occurred TYPE c,
l_dyn_lgort TYPE string,
l_tag TYPE char2. is_order_key = uv_aufnr. SELECT *
INTO TABLE @DATA(lt_resb)
FROM resb
WHERE aufnr EQ @is_order_key. DATA:ls_resb TYPE resb.
* DATA is_order_key TYPE coxt_ord_key.
* DATA is_order_component_key TYPE coxt_s_ord_comp_key.
DATA is_requirement_quantity TYPE coxt_s_quantity.
DATA is_requirement_quantityx TYPE coxt_s_quantityx.
DATA is_confirmed_quantity TYPE coxt_s_quantity.
DATA is_confirmed_quantityx TYPE coxt_s_quantityx.
DATA i_material TYPE coxt_material.
DATA i_materialx TYPE coxt_materialx.
DATA is_storage_location TYPE coxt_s_storage_location.
DATA is_storage_locationx TYPE coxt_s_storage_locationx.
DATA i_batch TYPE coxt_batch.
DATA:is_order_operation_key TYPE coxt_s_ord_opr_key.
DATA:is_order_operation_keyx TYPE coxt_s_ord_opr_keyx.
DATA i_batchx TYPE coxt_batchx.
DATA i_mi_configuration_object TYPE coxt_config_object.
DATA i_mi_configuration_objectx TYPE coxt_config_objectx. LOOP AT lt_resb INTO ls_resb. " 锁定预留.
* "锁定预留.
CALL FUNCTION 'ENQUEUE_EMRESB'
EXPORTING
mode_resb = 'E'
mandt = sy-mandt
rsnum = ls_resb-rsnum
rspos = ls_resb-rspos
rsart = ls_resb-rsart
EXCEPTIONS
foreign_lock =
system_failure =
OTHERS = .
IF sy-subrc <> .
e_error_occurred = 'X'. es_bapireturn-type = 'E'.
es_bapireturn-id = ''.
es_bapireturn-number = ''.
es_bapireturn-message = '预留锁定失败!'.
RETURN.
ENDIF. is_order_component_key-rsnum = ls_resb-rsnum.
is_order_component_key-rspos = ls_resb-rspos.
is_order_component_key-rsart = ls_resb-rsart. * is_requirement_quantity-quantity = zcoxt_s_quantity-menge.
* is_requirement_quantity-uom = ls_resb-meins.
* is_requirement_quantityx-quantity = 'X'.
i_material = ls_resb-matnr. is_storage_location-werks = ls_resb-werks.
is_storage_locationx-werks = 'X'.
is_storage_location-lgort = uv_lgort.
is_storage_locationx-lgort = 'X'.
* i_batch = ls_resb-charg. * is_order_operation_key
DATA:ls_afko TYPE afko.
SELECT SINGLE * INTO ls_afko FROM afko WHERE aufnr = is_order_key.
IF sy-subrc = .
SELECT SINGLE aplzl INTO is_order_operation_key-aplzl FROM afvc WHERE aufpl = ls_afko-aufpl AND vornr = ls_resb-vornr.
ENDIF.
is_order_operation_key-aufnr = uv_aufnr. is_order_operation_keyx-aufnr = 'X'.
is_order_operation_keyx-aplzl = 'X'. CALL FUNCTION 'CO_XT_ORDER_INITIALIZE'. CALL FUNCTION 'CO_XT_COMPONENT_CHANGE'
EXPORTING
is_order_key = ls_resb-aufnr
is_order_component_key = is_order_component_key
is_requirement_quantity = is_requirement_quantity
is_requirement_quantityx = is_requirement_quantityx
is_confirmed_quantity = is_confirmed_quantity
is_confirmed_quantityx = is_confirmed_quantityx
i_material = i_material
i_materialx = i_materialx
is_order_operation_key = is_order_operation_key
is_order_operation_keyx = is_order_operation_keyx
* IS_REQUIREMENT_DATE = IS_REQUIREMENT_DATE
* IS_REQUIREMENT_DATEX = IS_REQUIREMENT_DATEX
is_storage_location = is_storage_location
is_storage_locationx = is_storage_locationx
i_batch = i_batch
i_batchx = i_batchx
i_mi_configuration_object = i_mi_configuration_object
i_mi_configuration_objectx = i_mi_configuration_objectx
IMPORTING
es_bapireturn = es_bapireturn
e_error_occurred = e_error_occurred.
IF sy-subrc <> .
RETURN.
ELSE.
DATA e_order_key TYPE coxt_ord_key.
DATA et_ord_key_map TYPE coxt_t_ord_key_map.
DATA et_bapireturn TYPE coxt_t_bapireturn. CALL FUNCTION 'CO_XT_ORDER_PREPARE_COMMIT'
IMPORTING
e_order_key = e_order_key
es_bapireturn = es_bapireturn
e_error_occurred = e_error_occurred
TABLES
et_ord_key_map = et_ord_key_map
et_bapireturn = et_bapireturn.
IF sy-subrc = .
COMMIT WORK AND WAIT.
ELSE.
DELETE et_bapireturn WHERE type <> 'E' OR type <> 'A'.
READ TABLE et_bapireturn INTO es_bapireturn INDEX .
ENDIF.
ENDIF. *解锁
CALL FUNCTION 'DEQUEUE_EMRESB'
EXPORTING
mode_resb = 'E'
mandt = sy-mandt
rsnum = ls_resb-rsnum
rspos = ls_resb-rspos
rsart = ls_resb-rsart. ENDLOOP.
————————————————
版权声明:本文为CSDN博主「倔强的ABAPER」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sq1986127/article/details/
PP篇10 修改工单组件行的更多相关文章
- PP篇7 生产替代料齐套后处理
扫描可关注本人技术分享公众号,与您一起学习新知! 对于计划订单和生产订单, 当存在替代料的时候,完成齐套性检查后,按照可齐套量进行拆单,并删除不能齐套的替代料(有个删除规则).不能齐套就按照优先级最高 ...
- 【ABAP系列】SAP ABAP 工单增强
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 工单增强 ...
- Java连接Jira,创建、修改、删除工单信息
还不了解Jira是什么的同学可以看一下这篇文章:https://www.cnblogs.com/wgblog-code/p/11750767.html 本篇文章主要介绍如何使用Java操作Jira,包 ...
- Java——Java连接Jira,创建、修改、删除工单信息
还不了解Jira是什么的同学可以看一下这篇文章:https://www.cnblogs.com/wgblog-code/p/11750767.html 本篇文章主要介绍如何使用Java操作Jira,包 ...
- SAP PP中关于工单报工的小解
一般来说工单确认的方法很多,这里就简要介绍下几种常见的报工方法: 1.co11n 是大家常用的方法之一,也是比较好用,产量,报废,返工,工时,货物移动都可以输入.介于我们公司的业务我们用这个报工是最多 ...
- 从后端到前端之Vue(六)表单组件
表单组件 做项目的时候会遇到一个比较头疼的问题,一个大表单里面有好多控件,一个一个做设置太麻烦,更头疼的是,需求还总在变化,一会多选.一会单选.一会下拉的,变来变去的烦死宝宝了. 那么怎么解决这个问题 ...
- 微信小程序-表单组件
button 按钮 注:button-hover 默认为{background-color: rgba(0, 0, 0, 0.1); opacity: 0.7;} 示例代码: /** wxss **/ ...
- 封装react antd的form表单组件
form表单在我们日常的开发过程中被使用到的概率还是很大的,比如包含了登录.注册.修改个人信息.新增修改业务数据等的公司内部管理系统.而在使用时这些表单的样式如高度.上下边距.边框.圆角.阴影.高亮等 ...
- CRTD模拟MFG工单进行绑定优化
需求:按单按库生产的CRTD状态半成品工单重复创建问题 绑定成功案例: SELECT DEMANDLINEID,SUPPLYORDERID,DEMANDORDERID,QTYALLOCATED,ITE ...
随机推荐
- varnish加速web
varnish主要功能是代理服务器和缓存,和nginx代理一样可以反向代理web服务器.但是varnish不能作为web服务器.但是它的优点是可以将访问过的网站还存在代理服务器上,以便于提升web的访 ...
- 异常检测(Anomaly detection): 异常检测算法(应用高斯分布)
估计P(x)的分布--密度估计 我们有m个样本,每个样本有n个特征值,每个特征都分别服从不同的高斯分布,上图中的公式是在假设每个特征都独立的情况下,实际无论每个特征是否独立,这个公式的效果都不错.连乘 ...
- get_template_part()调用自定义模板|wordpress函数
我们在用wordpress开发主题的时候,可能需要调用一段固定的代码比如左侧菜单,这段代码会在主页.栏目页.文章页用到,如果直接写入每个页面模板是没有问题,但是如果要改左侧菜单一个链接那就要改三次,很 ...
- angular和datatables一起使用的时候,出现TypeError: Cannot Read Property "childNodes" Of Undefined In AngularJS
在anguglar中注入'$timeout' 然后: $timeout(function{},0,false);
- yolov1详细讲解
前言 当我们谈起计算机视觉时,首先想到的就是图像分类,没错,图像分类是计算机视觉最基本的任务之一,但是在图像分类的基础上,还有更复杂和有意思的任务,如目标检测,物体定位,图像分割等,见图1所示.其中目 ...
- webpack提高打包速度
通过使用插件和配置插件的参数. 1. 打包速度分析 首先通过speed-measure-webpack-plugin分析打包的各个插件和loader的耗时.然后具体问题,具体分析. 按照插件 npm ...
- 持续集成学习5 jenkins自动化测试与构建
一.jenkins参数 1.主要参数类型 2.触发构建参数 3.参数值的使用 4.给git仓库配置参数,让其构建的时候可以选择分支 5.配置password参数 6.添加Choice参数 7.其它好用 ...
- 【洛谷P5050】 【模板】多项式多点求值
code: #include <bits/stdc++.h> #define ll long long #define ull unsigned long long #define set ...
- C博客作业02—循环结构
0.展示PTA总分(0----2) 截图展示2次题目集:单循环和嵌套循环题目集,排名分数截图. 1.本章学习总结(2分) 1.1 学习内容总结 整理这两周学习主要知识点,并能对每个知识点介绍简单案例或 ...
- fluent运行过程中转换边界
我们以一个简单的VOF算例来说明,算例模型如下: 算例中空气为主相,水为次相.开始时刻,inlet_one设置为速度入口边界,速度为1m/s,且水的体积分数为100%,inlet_two设置为速度入口 ...