【ABAP】MFBF过账到质量检验库存类型Demo
MFBF过账到质量检验库存类型
比如上图,现在要针对某个重复制造的品号生产入库时入到质量检验库存类型,通过现有BAPI“BAPI_REPMANCONF1_CREATE_MTS”貌似无法实现,为保险起见,这里我测试使用BDC的方式,若有BAPI能实现上述功能便再好不过了,希望做过的小伙伴留言告知一下。
1、生产实绩入库
[Code]
*&---------------------------------------------------------------------*
*& Report ZTEST_MFBF
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*REPORT ZTEST_MFBF.* Batchinputdata of single transaction
DATA: BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
* messages of call transaction
DATA: MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
DATA: T_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.
DATA : LV_MBLNR TYPE SYMSGV,L_ERFMG TYPE CHAR10,LV_MSG TYPE BAPI_MSG.START-OF-SELECTION.CLEAR L_ERFMG.L_ERFMG = 1."数量CONDENSE L_ERFMG NO-GAPS.PERFORM DYNPRO USING :'X' 'SAPLBARM' '0800',' ' 'BDC_OKCODE' '=PARA',' ' 'RM61B-RB_BAUGR' 'X', "装配反冲' ' 'RM61B-BUDAT' '20220501', "过账日期' ' 'RM61B-BLDAT' '20220501', "凭证日期' ' 'RM61B-MATNR' 'A-1X517-15000', "物料编号' ' 'RM61B-WERKS' 'CN31', "工厂' ' 'RM61B-VERID' '1000', "版本' ' 'RM61B-ERFMG' L_ERFMG, "数量'X' 'SAPLBARM' '0150',' ' 'BDC_OKCODE' '=GOON',' ' 'RM61B-RADIOQU' 'X', "质量检验'X' 'SAPLBARM' '0800',' ' 'BDC_OKCODE' '=ISTDA',
* ' ' 'RM61B-RB_BAUGR' 'X','X' 'SAPLCOWB' '0130',' ' 'BDC_OKCODE' '=WEIT','X' 'SAPLBARM' '0800',' ' 'BDC_OKCODE' '/EABRT'.* 'X' 'SAPLBARM' '0171',
* ' ' 'BDC_OKCODE' '=GOON'.CALL TRANSACTION 'MFBF' USING BDCDATA
* OPTIONS FROM CTU_PARAMSMODE 'N'UPDATE 'S'MESSAGES INTO MESSTAB.CALL FUNCTION 'CONVERT_BDCMSGCOLL_TO_BAPIRET2'TABLESIMT_BDCMSGCOLL = MESSTAB[]EXT_RETURN = T_RETURN.CLEAR LV_MSG.
*** 查找成功的物料凭证号LOOP AT T_RETURN WHERE TYPE EQ 'S'AND ID EQ 'RM'AND NUMBER NE ' 'AND MESSAGE_V1 NE ''."如果这个字段有数值就是物料凭证LV_MBLNR = T_RETURN-MESSAGE_V1.LV_MSG = T_RETURN-MESSAGE.ENDLOOP.*** 没有凭证号就报错并且把所有信息读取IF LV_MBLNR IS NOT INITIAL.WRITE : LV_MBLNR,LV_MSG.ELSE.DATA : GT_BAPIRET TYPE STANDARD TABLE OF BAPIRET2,GW_BAPIRET TYPE BAPIRET2.GT_BAPIRET[] = T_RETURN[].PERFORM DISPLAY_ERROR.ENDIF.*&---------------------------------------------------------------------*
*& Form DISPLAY_ERROR
*&---------------------------------------------------------------------*
* 显示错误
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM DISPLAY_ERROR .DATA: GR_TABLE TYPE REF TO CL_SALV_TABLE.DATA: LR_COLUMNS TYPE REF TO CL_SALV_COLUMNS.TRY.CL_SALV_TABLE=>FACTORY(IMPORTINGR_SALV_TABLE = GR_TABLECHANGINGT_TABLE = GT_BAPIRET ).CATCH CX_SALV_MSG. "#EC NO_HANDLERENDTRY.LR_COLUMNS = GR_TABLE->GET_COLUMNS( ).LR_COLUMNS->SET_OPTIMIZE( 'X' ).GR_TABLE->SET_SCREEN_POPUP(START_COLUMN = 1END_COLUMN = 100START_LINE = 1END_LINE = 20 ).GR_TABLE->DISPLAY( ).ENDFORM. "DISPLAY_ERROR
*&---------------------------------------------------------------------*
*& Form BDC_DYNPRO
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->PROGRAM text
* -->DYNPRO text
*----------------------------------------------------------------------*
FORM DYNPRO USING DYNBEGIN FNAM FVAL.CLEAR BDCDATA.IF DYNBEGIN = 'X'.BDCDATA-PROGRAM = FNAM.BDCDATA-DYNPRO = FVAL.BDCDATA-DYNBEGIN = 'X'.ELSE.BDCDATA-FNAM = FNAM.BDCDATA-FVAL = FVAL.ENDIF.APPEND BDCDATA.
ENDFORM. "BDC_DYNPRO
2、生产实绩取消
生产实绩取消只要多录频一个点击“中间凭证冲冲销”按钮的步骤即可。
3、注意点
要是后台IMG配置中对于REM参数文件的配置如下图所示(IMG→生产→重复制造→控制→定义重复制造参数文件),勾选了“反冲的错误修正”下面的“在对话模式中执行修正”复选框,那么一旦BOM组件缺料或者其他错误,BDC录频处理的方式就显示苍白了。
一旦有问题,就会自动弹出“提取错误”的屏幕。
所以,最后...
【ABAP】MFBF过账到质量检验库存类型Demo相关推荐
- abap-批量修改的对象类型
abap-批量修改的对象类型 muassfunc 表 对象类型 功能模块名称 名称 BUS0015 PCA_MASS_UPDATE_PROFIT_CENTER 利润中心 BUS1001 MASS_MA ...
- ABAP中接收.NET语言byte[]类型返回值问题
在公司自开发的一个项目中,使用了.NET编写的视频监控控件.控件提供了CutBytePicture接口函数用于截取视频图片,返回图片字节流..NET函数原型如下: public byte[] CutB ...
- 2019-05-21 Java学习日记之String类型Demo
String类的构造方法: public String():空构造 public String(byte[ ] bytes):把字节数组转成字符串 public String(byte[ ] byte ...
- SAP License:MM自动过账科目特殊库存杂谈
好久没写东西了,最近看了一下特殊库存,特殊库存 K E Q A 这些科目都有不同的TE码,此TE码在OME9进行配置.在OMJJ内看到的KBS只是控制记账码的,跟实际过账没关系. 另外 OMQ ...
- abap 交货单过账的增强点
首先,需要确定您所提到的 "增强点" 是什么,这样我才能给出合适的回答. 在 SAP 系统中,交货单是在销售订单的基础上产生的,用于记录产品的交付情况.在 ABAP 程序中,可以使 ...
- ABAP中常见的接口技术类型
下面总结一下ABAP中的各种接口技术,因为学习时间不是很长,肯定还不全(还有增强.出口等),以后再补上. 针对具体的情况,选择不同的接口方法,或几种方法并行使用. 一.CPI-C 是基础,但不是很常用 ...
- typescript基本类型demo
//常量定义 let isDone: boolean = false; let age:number = 30; let sex:string = 'man'; let list:number[] = ...
- SAP ABAP Netweaver系统的传输请求类型和原始系统的含义
Sent: Friday, May 10, 2013 11:27 AM Subject: [Knowledge share]task type and object original system A ...
- abap 会计凭证过账(BAPI_ACC_DOCUMENT_POST)非资产过账填写资产号写不进去
调用 BAPI_ACC_DOCUMENT_POST 时遇到了一个尴尬的问题,做了一个 预付凭证要求资产号要写到供应商的那条行项目. 但是通过查找BAPI_ACC_DOCUMENT_POST 后发现供应 ...
最新文章
- Pjax是什么以及为什么推荐大家用
- 究竟什么样的开发流程是规范的?
- 【Java】利用容器存储表格数据
- 基于pnpm + lerna + typescript的最佳项目实践 - 理论篇
- 你需要的git命令大全来了
- 【转】卷积的本质及物理意义(全面理解卷积)
- Activity和Service交互
- 同程Z世代红色旅游报告:《觉醒年代》带火上海
- 《AP音频分析仪的使用》
- AWGN信道条件下,基于16QAM+OFDM的误码率计算,并与理论值对比
- 史蒂夫·乔布斯谈生命中最重要的东西
- 端午小礼品:30 本技术书
- springboot启动时自动关闭问题 com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated...
- linux下4g拨号上网问题,解决 Ubuntu 18.04 下无法建立 4G 拨号的问题
- 这样去做信用贷款违约预测项目,效果提升明显
- 服务注册中心:Eureka
- 关于MTU最大传输单元的百科
- 《白鹿原》电视剧观后感
- linux系统用户和普通用户,适合普通Linux用户的五大Linux发行版
- [HDU1290]献给杭电五十周年校庆的礼物