增、改生产订单组件BAPI BAPI_ALM_ORDER_MAINTAIN

USE BAPI_ALM_ORDER_MAINTAIN TO CREATE OR CHANGE PM WORK ORDER

最近做一个sap和外部程序的接口,外部应用程序需要创建PM订单,于是我找到了BAPI_ALM_ORDER_MAINTAIN,然后做了一些测试,这是个能够创建、修改PM订单的BAPI。它需要的一些参数如下:

IT_METHODS    LIKE    BAPI_ALM_ORDER_METHOD
处理方法,必选项,存储CREATE CREATETONOTIF CHANGE DELETE RELEASE TECHNICALCOMPLETE ATPCHECK CALCULATE SCHEDULE DELELTEDSEX ADD SAVE DIALOG TRACE这些处理动作。
IT_HEADER    LIKE    BAPI_ALM_ORDER_HEADERS_I
订单的header信息
IT_HEADER_UP    LIKE    BAPI_ALM_ORDER_HEADERS_UP
修改的订单的header信息,如果是对订单header的修改,需要将对应字段置X
IT_HEADER_SRV    LIKE    BAPI_ALM_ORDER_SRVDAT_E
对象服务信息
IT_HEADER_SRV_UP    LIKE    BAPI_ALM_ORDER_SRVDAT_UP
IT_USERSTATUS    LIKE    BAPI_ALM_ORDER_USRSTAT
用户状态信息
IT_PARTNER    LIKE    BAPI_ALM_ORDER_PARTN_MUL
合作伙伴信息
IT_PARTNER_UP    LIKE    BAPI_ALM_ORDER_PARTN_MUL_UP
IT_OPERATION    LIKE    BAPI_ALM_ORDER_OPERATION
工序信息
IT_OPERATION_UP    LIKE    BAPI_ALM_ORDER_OPERATION_UP
IT_RELATION    LIKE    BAPI_ALM_ORDER_RELATION
IT_RELATION_UP    LIKE    BAPI_ALM_ORDER_RELATION_UP
IT_COMPONENT    LIKE    BAPI_ALM_ORDER_COMPONENT
组件信息
IT_COMPONENT_UP    LIKE    BAPI_ALM_ORDER_COMPONENT_UP
IT_TEXT    LIKE    BAPI_ALM_TEXT
IT_TEXT_LINES    LIKE    BAPI_ALM_TEXT_LINES
EXTENSION_IN    LIKE    BAPIPAREX
RETURN    LIKE    BAPIRET2
返回消息
ET_NUMBERS    LIKE    BAPI_ALM_NUMBERS
返回订单编码信息

、创建一个带工序的订单
CLEAR IT_METHODS.
IT_METHODS-REFNUMBER = ''.”对应下面header表中相应行的数据
IT_METHODS-OBJECTTYPE = 'HEADER'.”需要操作的对象类型
IT_METHODS-METHOD = 'CREATE'.”相应动作
IT_METHODS-OBJECTKEY = '%00000000001'.”PM订单号,我们用的系统内部给号,此处使用临时编码'%00000000001',bapi结束时,会返回真正的订单号
APPEND IT_METHODS.
CLEAR IT_METHODS.
IT_METHODS-REFNUMBER = ''.”对应下面OPERATION表中相应行的数据
IT_METHODS-OBJECTTYPE = 'OPERATION'.”需要操作的对象类型
IT_METHODS-METHOD = 'CREATE'.”相应动作
IT_METHODS-OBJECTKEY = '%00000000001'.”PM订单号,我们用的系统内部给号,此处使用临时编码'%00000000001',bapi结束时,会返回真正的订单号
APPEND IT_METHODS.”多个工序时,要加入多条数据,REFNUMBER 对应OPERATION的行数
CLEAR IT_METHODS.
IT_METHODS-METHOD = 'SAVE'.”最后要插入一个save或dialog方法,否则bapi会报错
APPEND IT_METHODS.”IT_METHODS已经填充完毕 "填充header数据
IT_HEADER-ORDERID = '%00000000001'.”临时订单号
IT_HEADER-ORDER_TYPE = 'PM11'..”订单类型
IT_HEADER-EQUIPMENT = ‘JB200101’.
IT_HEADER-SHORT_TEXT= 'PM ORDER TEXT'.
.........
APPEND IT_HEADER "填充工序数据表
IT_OPERATION-ACTIVITY = ‘’.”operation num
IT_OPERATION-DESCRIPTION = ‘operation text’.
IT_OPERATION-CONTROL_KEY = 'PM01'.”control key
APPEND IT_OPERATION."多个工序加入多条,要和IT_method对应。 CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'
TABLES
IT_METHODS = IT_METHODS
IT_HEADER = IT_HEADER
* IT_HEADER_UP =
* IT_HEADER_SRV =
* IT_HEADER_SRV_UP =
* IT_USERSTATUS =
* IT_PARTNER =
* IT_PARTNER_UP =
IT_OPERATION = IT_OPERATION
* IT_OPERATION_UP =
* IT_RELATION =
* IT_RELATION_UP =
* IT_COMPONENT =
* IT_COMPONENT_UP =
* IT_TEXT =
* IT_TEXT_LINES =
* EXTENSION_IN =
RETURN = RETURN
ET_NUMBERS = ET_NUMBERS

PP篇11 增、改生产订单组件BAPI的更多相关文章

  1. PP篇7 生产替代料齐套后处理

    扫描可关注本人技术分享公众号,与您一起学习新知! 对于计划订单和生产订单, 当存在替代料的时候,完成齐套性检查后,按照可齐套量进行拆单,并删除不能齐套的替代料(有个删除规则).不能齐套就按照优先级最高 ...

  2. SAP PP 生产订单变更记录保存

    *&---------------------------------------------------------------------* *& 包括 ZXCO1U01 *&am ...

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

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

  4. PP生产订单创建、下达、报工、收货、投料

    转自http://blog.sina.com.cn/s/blog_69fb8eb60102vpjd.html SAP 物料订单创建.下达.报工.收货与投料(ABAP代码) (2015-06-03 22 ...

  5. PP生产订单成本的计划、控制和结算

    SAP系统成本分析功能关注订单的成本,通过对计划成本和实际成本的比较分析,可以发现成本控制上的问题,以便及时解决问题.1.订单成本计划在基础数据齐全的基础上,系统可以自动滚算生产订单的成本.生产订单计 ...

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

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

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

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

  8. 测试开发【提测平台】分享10-Element UI抽屉和表单校验&增改接口合并实现应用管理

    微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 开篇说个小讨论,一个群里聊天聊到关于更新篇章的长度,是小篇幅多次,还是每次按照一个小完整的功能,我个人的是按照后种来的,主要的思考就是希望 ...

  9. ABAP 生产订单的创建与修改函数

    ABAP 生产订单的创建与修改函数转自http://www.cnblogs.com/aBaoRong/archive/2012/04/11/2441946.html   如果生产订单过多,可以批量创建 ...

随机推荐

  1. Vue命名规范

    views 命名 views 文件夹下面是由 以页面为单位的vue文件 或者 模块文件夹 组成的,放在 src 目录之下,与 components.assets 同级. views 下的文件夹命名 v ...

  2. SVN (TortioseSVN) 版本控制之忽略路径(如:bin、obj)

    在SVN版本控制时,新手经常会遇到这样的问题: 1.整个项目一起提交时会把bin . gen . .project 一同提交至服务器 2.避免提交编译.本地配置等文件在项目中单独对src.res进行提 ...

  3. vue中引入.svg图标,使用iconfont图标库

    阿里巴巴的iconfont是一个很好的图标库,海量的素材可以快速满足开发人员日常对图标的诉求,我们采用symbol引用,官方介绍 创建SvgIcon组件 <template> <sv ...

  4. django-发送文件

    客户端授权密码”,勾选“开启”,弹出新窗口填写手机验证码. settings.py配置 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBac ...

  5. 解决Mac外接显示器字体模糊的问题

    Mac外接显示器时,除非接的是Apple自家的显示器“ACD”,不然一般会遇到字体模糊发虚的问题.在终端中执行命令: defaults -currentHost write -globalDomain ...

  6. 简易配置中心Confd入手

    改成动态更新配置文件,如下每五秒重新生成配置文件 confd与etcd的使用 Add keys This guide assumes you have a working etcd, or consu ...

  7. python -- 连接 orclae cx_Oracle的使用 二

    转:https://www.cnblogs.com/cyxiaer/p/9396861.html 必需的Oracle链接库的下载地址:https://www.oracle.com/technetwor ...

  8. 9-ESP8266 SDK开发基础入门篇--编写串口上位机软件

    https://www.cnblogs.com/yangfengwu/p/11087613.html 页面修改成这样子             现在看串口发送数据 点击点亮 发送0xaa 0x55 0 ...

  9. 洛谷 题解 P2731 【骑马修栅栏 Riding the Fences】

    简单的开始 完美の开始 这里数组什么的用来干什么后面标注的清楚了 #include<iostream> #include<cstdio> #include<cmath&g ...

  10. 【洛谷P5049】旅行(数据加强版)

    题目链接 m=n-1是直接按字典序dfs就行, m=n时是一棵基环树,我们发现当一个点在环上时,可以把它和它的一个在环上的儿子之间的边删掉,然后回溯,到达它的第一个有其他儿子的祖先的另一个儿子上,我们 ...