题目这个增强的输入参数很恐怖,长长的一串:

 CALL BADI l_badi->BEFORE_UPDATE
EXPORTING
IT_PIINSTRUCTIONVALUE = IT_PIINSTRUCTIONVALUE
IT_PIINSTRUCTION = IT_PIINSTRUCTION
IT_PMPARTNER_OLD = IT_PMPARTNER_OLD
IT_PMPARTNER = IT_PMPARTNER
IT_PRT_ALLOCATION_OLD = IT_PRT_ALLOCATION_OLD
IT_PRT_ALLOCATION = IT_PRT_ALLOCATION
IT_DOCLINK_OLD = IT_DOCLINK_OLD
IT_DOCLINK = IT_DOCLINK
IT_OPR_RELATIONS_OLD = IT_OPR_RELATIONS_OLD
IT_OPR_RELATIONS = IT_OPR_RELATIONS
IT_STATUS_OLD = IT_STATUS_OLD
IT_STATUS = IT_STATUS
IT_PLANNED_ORDER = IT_PLANNED_ORDER
IT_MILESTONE_OLD = IT_MILESTONE_OLD
IT_MILESTONE = IT_MILESTONE
IT_PSTEXT_OLD = IT_PSTEXT_OLD
IT_PSTEXT = IT_PSTEXT
IT_RELATIONSHIP_OLD = IT_RELATIONSHIP_OLD
IT_RELATIONSHIP = IT_RELATIONSHIP
IT_COMPONENT_OLD = IT_COMPONENT_OLD
IT_COMPONENT = IT_COMPONENT
IT_OPERATION_OLD_AFVU = IT_OPERATION_OLD_AFVU
IT_OPERATION_OLD_AFVV = IT_OPERATION_OLD_AFVV
IT_OPERATION_OLD_AFVC = IT_OPERATION_OLD_AFVC
IT_OPERATION = IT_OPERATION
IT_SEQUENCE_OLD = IT_SEQUENCE_OLD
IT_SEQUENCE = IT_SEQUENCE
IT_ITEM_OLD = IT_ITEM_OLD
IT_ITEM = IT_ITEM
IT_HEADER_OLD = IT_HEADER_OLD
IT_HEADER = IT_HEADER.

好在绝大部分内表都是空的。我们就一起来看看非空列表里包含的数据。

IT_STATUS

状态迁移。STAT是SAP系统状态ID,

其描述信息在表TJ02T里能查到。比如I0001状态的四位标识符是CRTD,意思是已创建-Created

INACT栏为X的状态代表该Production Order当前已经从该状态跳转到了其他状态。

上图的意思是该Production Order已经从状态I0001已创建,进入了状态I0002- Released已释放。

IT_COMPONENT

要理解Production Order component这个概念,我们先看一个已经创建好的生产订单。

下图component的意思是为了生产REDUCER_A这个成品,我们需要生产它的组件0010 COVER1, 0020 AXIS和0030 BASE。

那么REDUCER_A和其三个组件运行时的信息,就维护在内表IT_COMPONENT里。

IT_OPERATION

同理,一个生产订单可以包含若干生产工序,比如下图的Manual processing, Maching,Assembly和Testing,对应的系统状态都是REL - Released。

这些工序信息维护在内表IT_OPERATION里

IT_SEQUENCE

该生产订单的前置文档信息,即我们说的文档流 - document flow

IT_ITEM

待生产的成品明细,比如物料主数据ID,待生产数量,单位等。

IT_HEADER

很好理解,生产订单抬头信息:

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

S/4HANA生产订单增强WORKORDER_UPDATE方法BEFORE_UPDATE参数分析的更多相关文章

  1. S/4HANA生产订单的标准状态和透明工厂原型状态的映射

    事务码CO03查看生产订单的状态: 从下面的界面能看出S/4HANA里生产订单在任意时刻可能存在多个状态: 生产订单的ID和状态ID的关系是1:N,维护在数据库表VSAUFK里: 如何把上述SAP系统 ...

  2. SAP S/4HANA生产订单的BAdI增强点之Initialize方法

    在S/4HANA里创建生产订单时,有一个增强点WORKORDER_UPDATE: 这个CAUFVDB里存放的是生产订单抬头级别的数据: 我们来观察下运行时这个结构里存放的数据. 请大家用我github ...

  3. SAP S/4HANA生产订单创建时使用的工厂数据是从什么地方带出来的

    大家如果使用我github上的这段代码创建S/4HANA的生产订单时,一定会发现,我在代码里并没有硬编码来指定生产订单的ID,然而运行时会发现我在系统里配置的这个2800被自动使用了,这是怎么做到的呢 ...

  4. 用ABAP代码读取S/4HANA生产订单工序明细

    在S/4HANA事务码CO03显示的Production Order里,我希望用ABAP代码显示出该订单的operation(工序)ID,描述和状态Status,如下图所示: 很简单的几行ABAP代码 ...

  5. PP生产订单的BADI增强 WORKORDER_UPDATE

    METHOD if_ex_workorder_update~before_update. *---------------------->增强1 开始* "当生产订单类型为PP01时, ...

  6. 为什么S/4HANA的销售订单创建会触发生产订单的创建

    调用S/4HANA销售订单创建函数SD_SALES_DOCU_MAINTAIN创建一个销售订单时,会触发生产订单的创建. 销售订单的每个行项目对应一个独立的生产订单,SD_SALES_DOCU_MAI ...

  7. 为什么S/4HANA的生产订单创建后会自动release

    在S/4HANA系统里我们观察到通过函数CO_61_ORDER_EDIT创建的生产订单会自动释放Release: 通过第86行的IF语句的条件检测不难找到原因. 变量PROFILE_TMP的类型为TC ...

  8. SAP S/4HANA使用ABAP获得生产订单的状态

    在S/4HANA里,我们如何根据一个销售订单的行项目,查看对应的生产订单状态? 双击行项目: 点击Schedule line: 这里就能看到生产订单的ID和状态了. 其中订单的状态存储在表vsaufk ...

  9. 增强篇4 CO01生产订单屏幕增强

    Step1. 结构 CO_AUFK 里增加自定义字段:ZZZ_TRIAL 然后激活结构 查看AUFK是激活状态, 字段增强完成: Step2. CMOD  使用客户增强:PPCO0012    生产订 ...

随机推荐

  1. HTML5学习笔记:HTML5基于本地存储SQLite的每日工作任务清单程序.[只支持chrome]

    使用环境:Chrome 36.0...+ 技术:HTML5 目的:习练HTML5 功能概述:记录管理每天工作内容,便签清单 HTML5+CSS3呈现UI,JavaScript操作数据库,SQLite存 ...

  2. [Mysql 查询语句]——查询指定记录

    #比较 等于; 大于; 小于; 小于或等于; 大于或等于; 不等于; 排除掉; #指定范围查询 BETWEEN IN ; ; #指定集合查询 IN ,); ,); 集合元素可以是字符串类型 selec ...

  3. Simotion 监控问题:Could not add self-signed certificate to certificate store.

    使用OPC UA 连接设备,在创建客户端证书时总是报这个错误:Could not add self-signed certificate to certificate store.. 解决方法,用管理 ...

  4. DataGridView 获取当前单元格

    获取DataGridview控件中的当前单元格,是通过DataGridview的Rows属性和Column属性的索引来取得的,他们的索引都是从0开始的. Private void datagridvi ...

  5. nodejs记录2——一行代码实现文件下载

    主要使用fs模块的pipe方法,简单粗暴: import fs from "fs"; import path from 'path'; import request from 'r ...

  6. 【SSH网上商城项目实战05】完成数据库的级联查询和分页

    转自:https://blog.csdn.net/eson_15/article/details/51320212 上一节我们完成了EasyUI菜单的实现.这一节我们主要来写一下CategorySer ...

  7. Windows 环境下 NodeJs 开发 Log

    安装 NodeJs, npm. 环境变量配置. 1, Grunt 安装 :  npm install -g grunt-clinpm install -g grunt package.json { & ...

  8. Angular入门教程三

    4.6指令(directive) 通过使用模板,我们可以把model和controller中的数据组装起来呈现给浏览器,还可以通过数据绑定,实时更新视图,让我们的页面变成动态的. 模板中可以使用的东西 ...

  9. win10命令控制符

    IP:ipconfigIP地址侦测器:Nslookup显卡:dxdiag控制面板:control电话拨号:dialer木马捆绑工具,系统自带:iexpress本地用户和组:lusrmgr.msc鼠标属 ...

  10. Androidpdf

    https://www.jb51.net/article/110238.htm https://blog.csdn.net/u010046908/article/details/53927157 &l ...