在S/4HANA里创建生产订单时,有一个增强点WORKORDER_UPDATE: 这个CAUFVDB里存放的是生产订单抬头级别的数据: 我们来观察下运行时这个结构里存放的数据. 请大家用我github上这个简单的报表创建一个生产订单: https://github.com/i042416/KnowlegeRepository/blob/master/ABAP/SmallApp/209_create_S4_SalesOrder.abap 断点触发后,结构体CAUFVDB里的字段,我们一个一个分析:…
大家如果使用我github上的这段代码创建S/4HANA的生产订单时,一定会发现,我在代码里并没有硬编码来指定生产订单的ID,然而运行时会发现我在系统里配置的这个2800被自动使用了,这是怎么做到的呢? https://github.com/i042416/KnowlegeRepository/blob/master/ABAP/SmallApp/209_create_S4_SalesOrder.abap 通过阅读SAP S/4HANA有关生产订单的标准代码发现,生产订单使用的plant工厂数据来…
事务码CO03查看生产订单的状态: 从下面的界面能看出S/4HANA里生产订单在任意时刻可能存在多个状态: 生产订单的ID和状态ID的关系是1:N,维护在数据库表VSAUFK里: 如何把上述SAP系统标准状态映射到透明工厂原型的5个状态去呢? 目前的映射实现采取的是"关键状态法": 只要生产订单的状态里包含I0048 - distributed to MES, 就认为该订单处于组装状态 只要生产订单的状态里包含I0012 - distributed to MES, 就认为该订单处于已交…
题目这个增强的输入参数很恐怖,长长的一串: 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_ALLOCATIO…
METHOD if_ex_workorder_update~before_update. *---------------------->增强1 开始* "当生产订单类型为PP01时,如果该生产订单有参考相关的销售订单,* "那么在此生产订单存盘时,就需要判断该生产订单是否已经维护了相关的长文本数据,如果没有长文本数据,就需要查看* "所对应的销售订单行项目上是否有长文本数据,如果有则将销售订单行项目的长文本带到该生产订单长文本中.* "反之,如果此生产订单已…
这个自动触发的过程是怎么实现的? 使用下面的代码创建一个销售订单: DATA: ls_header TYPE bapisdhd1, ls_headerx TYPE bapisdhd1x, lt_bapiret2 LIKE bapiret2 OCCURS 0 WITH HEADER LINE, po_order_number TYPE bapivbeln-vbeln, lt_partners TYPE TABLE OF bapiparnr, lt_order_items_in TYPE TABLE…
在S/4HANA事务码CO03显示的Production Order里,我希望用ABAP代码显示出该订单的operation(工序)ID,描述和状态Status,如下图所示: 很简单的几行ABAP代码: DATA: lt_operation TYPE TABLE OF afvgd. CALL FUNCTION 'PM_ORDER_DATA_READ' EXPORTING order_number = '000001000381' TABLES iafvgd = lt_operation EXCE…
需找BADI方法有很多,据公司的牛人说,他知道的就不止5种 现在给出一些比较简单的方法 首先,大家要知道,一个程序的出口不会太多,需找出口,很多的时候都是在尝试 第二,方法:首先会给出事务码,然后通过SE93找出对应的程序Y 第三,se16里面,找到MODSAP这个表,在MENBER里面输入:*Y*查,会给出一些出口的NAME 第四,开一个新的窗口,运行smod,把这些NAME拷贝进去一个一个试试,应该可以找出. 第二种方法: 有时候第一种办法不行的时候,可以试试: 有时候,查到程序Y的时候拷贝…
SAP系统成本分析功能关注订单的成本,通过对计划成本和实际成本的比较分析,可以发现成本控制上的问题,以便及时解决问题.1.订单成本计划在基础数据齐全的基础上,系统可以自动滚算生产订单的成本.生产订单计划成本是在生产订单在下达时,根据当时生产订单的BOM组件结构和工艺路线,计算出订单的计划成本,该计划成本可以按照产品的构成进行细分,例如区分料.工.费.折等.计划成本形成了和实际成本进行比较分析的基准,通过对比分析,可以发现生产过程中哪个阶段出现了异常操作. 2.生产订单状态管理SAP系统内对生产订…
在S/4HANA里,我们如何根据一个销售订单的行项目,查看对应的生产订单状态? 双击行项目: 点击Schedule line: 这里就能看到生产订单的ID和状态了. 其中订单的状态存储在表vsaufk里,注意订单和状态可以是1对多的关系. 状态的ID和描述信息存储在表tj02t里,所以有了下面的代码: METHOD get_prod_order_status. DATA: lt_status TYPE TABLE OF j_status, lt_text TYPE TABLE OF tj02t,…