1、事务代码:C223

2、调用函数CM_FV_PROD_VERS_DB_UPDATE

"-----------------------------@斌将军-----------------------------
DATA:lt_mkal_i TYPE TABLE OF mkal,
lt_mkal_u TYPE TABLE OF mkal,
lt_mkal_d TYPE TABLE OF mkal,
ls_mkal TYPE mkal,
lt_mkal_aend TYPE TABLE OF mkal_aend,
ls_mkal_aend TYPE mkal_aend. SELECT
matnr,
werks,
verid
FROM mkal
INTO TABLE @DATA(lt_makl)
FOR ALL ENTRIES IN @t_input
WHERE matnr = @t_input-matnr
AND werks = @t_input-werks
AND verid = @t_input-verid. SORT lt_makl BY matnr werks verid. SELECT
*
FROM mkal_aend
INTO TABLE @DATA(lt_aend)
FOR ALL ENTRIES IN @t_input
WHERE matnr = @t_input-matnr
AND werks = @t_input-werks
AND verid = @t_input-verid. SORT lt_aend BY matnr werks verid zaehl DESCENDING. CLEAR:ls_mkal.
ls_mkal-matnr = '000000160000000019'."LV_MATNR."物料编号
ls_mkal-werks = '1011'."IS_MKAL-WERKS."工厂
ls_mkal-verid = 'JS20'."IS_MKAL-VERID."生产版本
ls_mkal-text1 = '333333'."IS_MKAL-TEXT1."生产版本的短文本
ls_mkal-bdatu = '99991231'."IS_MKAL-BDATU."生产版本的有效期截止日期
ls_mkal-adatu = sy-datum."IS_MKAL-ADATU."生产版本的有效期起始日期
ls_mkal-stlal = '01'."IS_MKAL-STLAL."可选的 BOM
ls_mkal-stlan = '1'."IS_MKAL-STLAN."BOM 用途
ls_mkal-plnty = 'N'."IS_MKAL-PLNTY."任务清单类型
ls_mkal-plnnr = '50000357'."IS_MKAL-PLNNR."任务清单组键值
ls_mkal-alnal = '1'."IS_MKAL-ALNAL."组计数器
* LS_MKAL-SERKZ = ''."IS_MKAL-SERKZ."版本允许的重复制造
* LS_MKAL-MDV01 = ''."IS_MKAL-MDV01."用于重复制造的生产线
* LS_MKAL-ELPRO = ''."IS_MKAL-ELPRO."对组件提出发货仓储地点
* LS_MKAL-ALORT = ''."IS_MKAL-ALORT."重复生产的收货库存地点
ls_mkal-prfg_f = '1'."检查生产版本的状态
ls_mkal-prfg_s = '1'."BOM - 检查生产版本的状态
*ls_mkal-PRFG_R = '1'."重复生产的收货库存地点
*ls_mkal-PRFG_G = '1'."重复生产的收货库存地点
ls_mkal-prdat = sy-datum."出品版本的最后测试日期
ls_mkal-bstma = 99999999."截至批量大小 READ TABLE lt_makl INTO DATA(ls_makl) WITH KEY matnr = '000000160000000019'
werks = '1011'
verid = 'JS20' BINARY SEARCH.
IF sy-subrc EQ 0."存在就更新
APPEND ls_mkal TO lt_mkal_u. READ TABLE lt_aend INTO DATA(ls_aend) WITH KEY matnr = '000000160000000019'
werks = '1011'
verid = 'JS20' BINARY SEARCH.
IF sy-subrc EQ 0.
CLEAR:ls_mkal_aend.
ls_mkal_aend-matnr = ls_aend-matnr."物料编号
ls_mkal_aend-werks = ls_aend-werks."工厂
ls_mkal_aend-verid = ls_aend-verid."生产版本
ls_mkal_aend-zaehl = ls_aend-zaehl + 1."计数参数 ls_mkal_aend-datuv = ls_mkal-adatu."有效起始日期
ls_mkal_aend-datub = ls_mkal-bdatu."有效截止日期
ls_mkal_aend-andat = ls_aend-andat."日期记录创建于
ls_mkal_aend-annam = ls_aend-annam."创建记录的用户
ls_mkal_aend-aedat = sy-datum."上次更改日期
ls_mkal_aend-aenam = sy-uname."更改对象的人员姓名
ls_mkal_aend-vbkz = 'U'."
ENDIF.
APPEND ls_mkal_aend TO lt_mkal_aend. ELSE."不存在就创建
APPEND ls_mkal TO lt_mkal_i. CLEAR:ls_mkal_aend.
ls_mkal_aend-matnr = '000000160000000019'."物料编号
ls_mkal_aend-werks = '1011'."工厂
ls_mkal_aend-verid = 'JS20'."生产版本
ls_mkal_aend-zaehl = 1."计数参数 ls_mkal_aend-datuv = ls_mkal-adatu."有效起始日期
ls_mkal_aend-datub = ls_mkal-bdatu."有效截止日期
ls_mkal_aend-andat = sy-datum."日期记录创建于
ls_mkal_aend-annam = sy-uname."创建记录的用户
ls_mkal_aend-vbkz = 'I'."
APPEND ls_mkal_aend TO lt_mkal_aend. ENDIF. CALL FUNCTION 'CM_FV_PROD_VERS_DB_UPDATE'
TABLES
it_mkal_i = lt_mkal_i "创建
it_mkal_u = lt_mkal_u "修改
it_mkal_d = lt_mkal_d "删除
it_mkal_aend = lt_mkal_aend. *DATA(gv_info) = TEXT-002.
IF sy-subrc EQ 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
* ES_RETURN-RETYP = 'S'.
* ES_RETURN-REMSG = '生产版本修改成功'.
WRITE:'success'.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
* ES_RETURN-RETYP = 'E'.
* ES_RETURN-REMSG = GV_INFO.
* WRITE:gv_info.
ENDIF.
"-----------------------------@斌将军-----------------------------

定期更文,欢迎关注

C223 生产版本BAPI的更多相关文章

  1. 如何使用 Xcode Targets 管理开发和生产版本?

    在开始此教程之前,我们假设你已经完成了应用程序的开发和测试,现在准备提交生产发布.问题是,某些 Web 服务 URLs 指向测试服务器,而 API keys 则为测试环境而配置.在提交应用程序给苹果审 ...

  2. [HMLY]3.如何使用Xcode Targets管理开发和生产版本?

    本文原地址:http://www.appcoda.com/using-xcode-targets/ 在开始此教程之前,我们假设你已经完成了应用程序的开发和测试,现在准备提交生产发布.问题是,某些web ...

  3. 设置 debug 版本签名与生产版本一致

    debug 版本使用生产版本的签名 在开发过程中,app 直接跑到手机上,用的签名文件是 Android Studio 默认的自动生成的一个签名,与生产版本的 app 签名是不一样的.当接入华为推送的 ...

  4. 前端项目中使用git来做分支和合并分支,管理生产版本

    最近由于公司前端团队扩招,虽然小小的三四团队开发,但是也出现了好多问题.最让人揪心的是代码的管理问题:公司最近把版本控制工具从svn升级为git.前端H5组目前对git的使用还不是很熟悉,出现额多次覆 ...

  5. 如何使用Xcode的Targets来管理开发和生产版本的构建

    如何使用Xcode的Targets来管理开发和生产版本的构建 想象一下,你已经完成了应用程序的开发和测试,现在准备提交正式版本.问题是,一些web服务的url指向了测试服务器,同时API密钥被配置用于 ...

  6. 使用Xcode的Targets来管理开发和生产版本的构建

    如何创建一个新的Target 如何在Xcode中创建一个开发的target?我使用示例项目“todo”引导您一步一步完成整个过程..您也可以使用自己的项目并按照步骤: 1. 在项目的导航面板进入项目设 ...

  7. EControl平台测试向生产版本工程切换说明

    第一步,备份生产环境版本,假设生产环境版本工程名为SEHEControl,记录版本说明第二部,拷贝测试版本到新文件夹,假设测试版本工程名为SEHEControlTest第三步,进入工程文件夹,修改SL ...

  8. React 项目生产版本迭代页面不刷新问题

    React 页面缓存 react 打包项目进行服务端部署后,会发现index.html被浏览器缓存,访问项目url指向的还是上个版本的内容.原理是index.html被缓存后,路由指向和跳转都是旧版的 ...

  9. SAP交货单过账自动生产采购订单、采购订单自动收货入库

    公司间需要买卖操作,由于发货和收货都是同一批人在操作,为了减少业务人员的工作量,提高工作效率,特实现以上功能 1.增强实现:增强点为交货单过账成功时触发,在提交前触发,如果遇到不可预知问题,可能造成数 ...

  10. EOS1.1版本新特性介绍

    EOSIO/eos 目前在github的项目活跃度方面排名第一,release版本更新的速度让人应接不暇.今天EOS的大版本1.1发布,我也有幸参与了贡献,本篇文章重点介绍1.1版本的重大功能升级. ...

随机推荐

  1. 一键整合,万用万灵,Python3.10项目嵌入式一键整合包的制作(Embed)

    我们知道Python是一门解释型语言,项目运行时需要依赖Python解释器,并且有时候需要安装项目中对应的三方依赖库.对于专业的Python开发者来说,可以直接通过pip命令进行安装即可.但是如果是分 ...

  2. Hadoop学习(一) 搭建伪分布式集群

    文章结构 1.准备工作 1.1 配置IP 1.2 关闭防火墙 1.3 修改主机名并与IP绑定 1.4 创建新用户 1.5 配置免密匙 2.安装并配置Hadoop伪分布式集群 2.1 安装Java 2. ...

  3. Cadence SPB 22.1 --学习基础01Day

    1.电路图设计 ①.原理图设计 原理图符号-->原理图库:代替实际电子元器件的符号,主要就是引脚数目.引脚序号与实物对应: ②.PCB设计 PCB符合-->PCB封装库:电子元器件的各种实 ...

  4. 【源码系列#02】Vue3响应式原理(Effect)

    专栏分享:vue2源码专栏,vue3源码专栏,vue router源码专栏,玩具项目专栏,硬核推荐 欢迎各位ITer关注点赞收藏 Vue3中响应数据核心是 reactive , reactive 的实 ...

  5. JAVA学习week2

    这周:根据老师在群里面推荐的JAV学习路线,初步规划了一下学习方案 并找到了相关的视频,目前来说在学习SE.学习内容:环境变量的配置和简单的hello world程序书写的注意点 下周:打算进行简单的 ...

  6. 【Javaweb】动态web工程目录介绍

    src 存放自己编写的Java源代码 web 专门用来存放web工程的资源文件(html页面.css文件.js文件等等) WEB-INF 是一个受服务器保护的目录,浏览器无法直接访问此目录的内容 we ...

  7. 一文秒懂|Linux字符设备驱动

    1.前言 众所周知,Linux内核主要包括三种驱动模型,字符设备驱动,块设备驱动以及网络设备驱动. 其中,Linux字符设备驱动,可以说是Linux驱动开发中最常见的一种驱动模型. 我们该系列文章,主 ...

  8. Java八股面试题整理(1)

    1.为什么Java代码可以实现一次编写,到处运行? 参考答案 JVM(Java虚拟机)是Java跨平台的关键. 在程序运行前,Java源代码(.java)需要经过编译器编译成字节码(.class).在 ...

  9. 在CPF里使用OpenGL做跨平台桌面应用开发

    CPF 是开源的C#跨平台UI框架,支持使用OpenGL来渲染,可以用来硬件加速播放视频或者显示3D模型 实现原理其实就是Skia用OpenGL后端,Skia里绑定GLView的OpenGL纹理,将纹 ...

  10. Android12版本闹钟服务崩溃问题

    原文地址: Android12版本闹钟服务崩溃问题 - Stars-One的杂货小窝 公司项目app线上出现的崩溃记录问题,崩溃日志如下所示: Caused by java.lang.Security ...