需要先配置自动带出一行行项目,然后增强代码里去修改带出来的数量,注意事务码的判断,不然影响程序效率

  

FV45PF0N_NATRAB_SELECTION

  IF SY-TCODE = 'VA03'.
ELSE.
* natrab_new = abap_true.
* LOOP AT yvbap ASSIGNING FIELD-SYMBOL(<LS_YVBAP>).
* IF <LS_YVBAP>-pstyv <> 'ZTNN'.
* natrab_new = abap_true.
* ENDIF.
* ENDLOOP.
IF VBAP-MVGR1 <> *VBAP-mvgr1
OR VBAP-mvgr2 <> *VBAP-mvgr2
OR VBAP-mvgr3 <> *VBAP-mvgr3
OR VBAP-mvgr4 <> *VBAP-mvgr4 .
natrab_new = abap_true.
ENDIF.
ENDIF.
*
"//试样件处理逻辑
* BREAK MMQM_XIEHL. DATA LRNG_POSNR TYPE RANGE OF POSNR.
CLEAR LRNG_POSNR.
DATA:lv_KWMENG TYPE menge_d.
DATA(lv_zcl_hb) = NEW zcl_hb( ).
data ls_vbap type VBAP.
DATA rs_qty TYPE zsds_tpr01. LOOP AT KONDN_MAT_TAB ASSIGNING FIELD-SYMBOL(<LS_MAT_TAB>) .
READ TABLE xvbap ASSIGNING FIELD-SYMBOL(<LS_VBAP>) .
IF SY-SUBRC = 0.
clear lv_KWMENG.
lv_KWMENG = <LS_VBAP>-kwmeng.
clear ls_vbap.
clear rs_qty.
MOVE-CORRESPONDING <LS_VBAP> to ls_vbap.
CALL METHOD lv_zcl_hb->get_qty
EXPORTING
iv_tp_cat = <LS_VBAP>-mvgr1
iv_posnr = <LS_VBAP>-posnr
iv_matnr = <LS_VBAP>-matnr
iv_menge = lv_KWMENG
* iv_mvgr1 = <ls_so_dsf>-mvgr1
iv_mvgr2 = <LS_VBAP>-mvgr2
iv_mvgr3 = <LS_VBAP>-mvgr3
is_vbap = ls_vbap
RECEIVING
rs_qty = rs_qty.
if rs_qty-menge_customer is not INITIAL.
"//如何识别是用户更改的,保留下来? 默认免费数量会计算出来
<LS_MAT_TAB>-NRMENGE = rs_qty-menge_customer.
* natrab_new = abap_true.
ELSE.
LRNG_POSNR = value #( base LRNG_POSNR ( sign = 'I' option = 'EQ' low = <LS_MAT_TAB>-KPOSN ) ).
ENDIF.
ENDIF.
ENDLOOP. if LRNG_POSNR is NOT INITIAL.
delete kondn_mat_tab[] where KPOSN in LRNG_POSNR.
endif. ENDENHANCEMENT.
*$*$-End: (2)---------------------------------------------------------------------------------$*$*

sd 买送服务,自动带出销售订单行项目的更多相关文章

  1. C4C销售订单行项目价格维护方法

    需求很简单,能够创建销售订单,在行项目里添加产品,带出价格来,同时把总价显示在销售订单抬头区域. 如下图所示: 下面是具体配置. Business Configuration里,点击Sales Ord ...

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

    我的任务是用代码生成S/4HANA销售订单(Sales Order)的行项目,并且填充对应的quantity(数量)值. 最开始我用了下面的代码,把quantity的值写入item字段target_q ...

  3. odoo之带出历史订单产品

    这是在sale_origin中下由两张单子{sale_origin_line和history_order} class history_order(osv.osv): _name="hist ...

  4. 销售订单行上行号LINE_SHIPMENT_OPTION_NUMBER

     销售订单行上行号:LINE_SHIPMENT_OPTION_NUMBER 取值: ( 1) Line块的块级触发器POST-QUERY调用: OE_LINE.Post_Query;(来自于库OE ...

  5. SAP四代增强实现:销售订单复制项目文本时不需要显示文本框和回车

    最近接收到一个业务需求,在SAP依据销售订单复制时,如果订单里面的项目有多个文本,系统就会显示复制的文本框处理,让用户选择是否复制,这个就让销售很不舒服,如果有几十个项目,每个项目有几个文本,那就就要 ...

  6. 记住密码后,密码框Password会自动带出数据

    一般登陆之后浏览器会询问是否记住密码,如果把密码记住在浏览器上,下次登陆的时候浏览器会把用户名和密码自动填充到登录页面.前段时间服务站平台的员工账号模块提测后,测试提出360浏览器记住密码后会自用把登 ...

  7. 用友CDM系统“货位间商品移库单(一步)”表体增加“货位可用数量”字段,根据表头的选择的货位自动带出数值

    系统控制台——业务单据定制——货位间商品移库单(一步) 明细字段——增加“可销数量”字段. 然后修改明细字段的“商品编号”自定义查询方案. 增加自定义资料检索方案hwyksp SQL: select ...

  8. PyCharm新建.py文件时自动带出指定内容

    如:给Pycharm加上头行  # coding:utf-8File—Setting—Editor--Code Style--File and Code Templates--Python Scrip ...

  9. [SAP ABAP开发技术总结]SD销售订单定价过程

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  10. 如何用SAP Cloud for Customer的手机App创建销售订单

    第一次启动App,设置一个初始化的pin code: 输入C4C tenant的url,用户名和密码: 登录进系统后,找到Sales Order工作中心: 可以看到系统里很多已有的销售订单了.点击屏幕 ...

随机推荐

  1. Linu基础 文件IO(读写操作)

    前言 本章讨论普通文件的读写.读写效率.简单介绍文件描述符.IO效率.文件共享和原子操作.dup.文件映射.临时文件. 文件描述符 在Linux系统中,打开的文件是用一个整数来表示的,表示打开文件的整 ...

  2. 正则爬取豆瓣Top250数据存储到CSV文件(6行代码)

    利用正则爬取豆瓣TOP250电影信息 电影名字 电影年份 电影评分 评论人数 import requests import csv import re # 不算导包的话正式代码6行 存储到csv文件 ...

  3. GeoLayout: Geometry Driven Room Layout Estimation Based on Depth Maps of Planes

    1. 论文简介 论文题目:GeoLayout: Geometry Driven Room Layout Estimation Based on Depth Maps of Planes Paper地址 ...

  4. org.apache.catalina.startup.HostConfig.deployWAR Error deploying web application archive

    昨天23点给一个老项目改完打包发布到云服务器后报错,Tomcat9 启动不了,白折腾了我几个小时. 这错误以前遇到过,由于太过久远已经忘记,特此记录 错误日志 22-Dec-2021 23:52:18 ...

  5. python之路53 ajax补充返回序列化数据,多对多创建三种方式,django内置序列化组件(drf前身),批量操作数据,自定义分页器,form组件

    ajax补充说明 主要是针对回调函数args接收到的响应数据 1.后端request.is_ajax() 用于判断当前请求是否由ajax发出 2.后端返回的三板斧都会被args接收不再影响整个浏览器页 ...

  6. angular Ionic CLI组件建立,使用图标,弹窗,按钮,卡片,列表,无尽滚动,刷新

  7. Thread的常用方法_sleep-实现Runable接口

    Thread的常用方法_sleep public static void sleep(long millis) :使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行 实现Runable接口 采用 j ...

  8. Java 进阶P-8.3+P-8.4

    捕捉到的异常 捉到了做什么? 拿到异常对象之后 String getMessage(); String toSTring(); void printStackTrace(); 但是肯定时回不去了,而具 ...

  9. 《Terraform 101 从入门到实践》 第四章 States状态管理

    <Terraform 101 从入门到实践>这本小册在南瓜慢说官方网站和GitHub两个地方同步更新,书中的示例代码也是放在GitHub上,方便大家参考查看. 军书十二卷,卷卷有爷名. 为 ...

  10. 线程基础知识02-CompletableFuture

    1 简介 Futrue可以监视目标线程调用call的情况,当你调用Future的get()方法以获得结果时,调用方的线程就被阻塞,直到目标线程的call方法结束并返回结果. 线程的实现方式有几种方式, ...