SAP MM

SAP MM module material management and procurement, managing purchase requisitions, orders, inventory, and supplier relationships to improve supply chain efficiency. SAP MM模块物料管理与采购,管理采购申请、订单、库存与供应商关系,提升供应链效率。

BADI增强:MIGO物料凭证过账保存前的各种检查MB_CHECK_LINE_BADI

SAP系统中,最初很重要的是会计凭证。而在后勤模块中,息息相关的就是物料凭证。 为了定制各种规则,我们可以对物料凭证进行增强处理。 Tcode MIGO SE19, badi ENHANCEMENT MB_CHECK_LINE_BADI, Method:CHECK_LINE. Purpose:在使用migo收货过账的时候,检查物料无标准成本不允许过账 SE19写入BADI MB_CHECK_LINE_BADI的方法CHECK_LINE。 详细的代码如下: METHOD if_ex_mb_check_line_badi~check_line. TYPES: BEGIN OF ty_ckmlpr, pprdl TYPE ckmlpr-pprdl, kalkl’ TYPE ckmlpr-kalkl. lplpr TYPE ckmlpr-lplpr, END OF ty_ckmlpr. DATA: wa_ckmlpr TYPE ty_ckmlpr.   SELECT SINGLE pprdl kalkl lplpr INTO wa_ckmlpr FROM ckmlpr WHERE kalnr IN ( SELECT kaln1 FROM mbew WHERE matnr=is_mseg-matr

MD04库存需求清单增加批次和采购订单编号字段,增强M61X0002

Today we learn how to add customer fields column to tcode MD04. Tcode md04 enhancement add fields ebeln, charg. Po number, batch number. Enhancement exit M61X0002. Step1:Cmod Crete Project ZMM_001 Step2:Add enhancement component M61X0002 Active EXIT_SAPLM61R_001[PAI after click Push Button] and EXIT_SAPMM61R_001[PBO add push button] Step3:Write Souce Code. 3. 功能模块EXIT_SAPMM61R_001 *&———————————————————————* *& 包括 ZXM61U04 *&———————————————————————*

Enhancement for BAPI_PR_CREATE ME_BAPI_PR_CUST

Purpose: When create purchase request. None numbmic type process. 在使用BAPI:BAPI_PR_CREATE创建采购申请时, 如果在EBAN中的增强字段中存在非UNICODE类型的字段(如数值型), 则需要使用增强才能传值到BAPI的extensionin参数。   Trigger Time: 调用BAPI:BAPI_PR_CREATE时触发   How to Enhancement: 使用TCODE:SE18进入下面界面,输入ME_BAPI_PR_CUST 双击增强实施类ZDQ_ME_BAPI_PR_CUST进入以下界面, 对方法if_ex_me_bapi_pr_create_02~map2i_extensionin进行实施。 双击方法if_ex_me_bapi_pr_create_02~map2i_extensionin。   对其进行实施的代码如下: METHOD if_ex_me_bapi_pr_create_02~map2i_extensionin. *define local data DATA: lr_struct TYPE REF TO cl_abap_structdescr, lt_comp   TYPE cl_abap_structdescr=>component, lf_done   TYPE mmpur_bool.  “conversion done DATA: l_perc(13) TYPE n, l_cieban_conv TYPE bapi_te_mereqitem.    FIELD-SYMBOLS: <comp> LIKE LINE OF cl_abap_structdescr=>components.   CHECK im_error EQ cl_mmpur_constants=>yes. * get type for name lr_struct ?= cl_abap_typedescr=>describe_by_name( im_name ).   Active enhancement 激活增强。使用BAPI:BAPI_PR_CREATE创建采购订单时,可以进行测试   More enhancement post. 我的微信公众号【 hot583 】 或者在这个链接联系我 本文链接 :http://www.hot583.com/2022/06/30/me_bapi_pr_cust/ 本文为作者原创,如果这篇文章对您有用,欢迎转载, 转载请务必注明来源《今日热点在看》http://www.hot583.com/

ME21N/ME22N/ME23Ncustomer Screen Enhancement

Enhancement for ME21N/ME22N/ME23N customer Screen Enhancement. Purpose:SAP 中使用ME21N/ME22N/ME23N创建/修改/查看采购订单时, 需要在屏幕的头信息中增加以下字段以及相关按钮。 因此利用屏幕增强增加字段,以便用户输入内容并保存至自定义中。   触发时间: ME21N/ME22N/ME23N点击‘客户数据’标签页时触发 选中“创建”按钮进入界面以后,为新建的增强项目分配增强出口MM06E005并回车。   对出口中的相关组件进行实施。 首先向数据表中增加需要新建的字段, 具体操作为在包含表CI_EKKODB上双击,然后新增增强字段。 新增字段最好以ZZ_开头(如果要增强行项目,双击CI_EKPODB)。   双击“CI_EKKODB”进行新增字段。   使增强屏幕显示,在Screen exit中,双击要增强的SAPMM06(头信息增强屏幕编号为0101,行信息增强屏幕为0111), 进入以后即可绘制屏幕显示,查找要显示的CI_EKKODB中的字段显示到屏幕上。 查找字段(f6),输入表或字段名(ekko_ci),找到显示的字段。 在定义屏幕的PBO和PAI中分别增加如下代码:   PROCESS BEFORE OUTPUT. MODULE CHANGE_CUSTOM_TAB. PROCESS AFTER INPUT. MODULE USER_COMMAND_0101.     ========================== MODULE CHANGE_CUSTOM_TAB OUTPUT. IF BUKRS+0(2) = ’83’ OR BUKRS = ‘5140’ OR  BUKRS+0(2) = ’81’ OR BUKRS+0(2) = ’82’. IF GV_STATUS = CV_SHOW. LOOP AT SCREEN. IF SCREEN-NAME <> ‘HTWB’ AND SCREEN-NAME <> ‘HTMB’ AND SCREEN-NAME <> ‘PRVW’ . SCREEN-INPUT = 0. MODIFY SCREEN. ENDIF. ENDLOOP. ========================== MODULE USER_COMMAND_0101 INPUT. DATA: ACT TYPE SYUCOMM. DATA: Z001_HEAD LIKE THEAD. RANGES: LR_EBELN  FOR EKKO-EBELN. ACT = SY-UCOMM. CLEAR SY-UCOMM.

Enhancement for BAPI_OBJCL_CREATE CLFM0002

Today we learn CMOD enhancement for bapi BAPI_OBJCL_CREATE. Enhancement project is CLFM0002, user exit function module EXIT_SAPLCLFM_002. Purpose: split AUSP-ATWRT to lines. 在使用自定义函数ZDQ_MDM_MATNR_CREATE批导物料主数据到SAP系统中的时候,某些特性值由于字符串过长, 需要将字符串分割以后显示。根据客户的需求,需要将分割后的字符串按照计数器有序显示。 因此,可以在调用BAPI:BAPI_OBJCL_CREATE批导物料主数据的过程中, 利用二代增强去根据计数器有序地显示某些特性值。 运行导入物料主数据的程序后,可以在数据表中看到相关特性值的排序显示   Sample code:调用BAP I: BAPI_OBJCL_CREATE时触发 T-code: CMOD 项目:ZDQ_CHAR 增强:CLFM0002 Function:EXIT_SAPLCLFM_002   功能出口“EXIT_SAPLCLFM_002”中的包含文件“ZXCLFU02”,实施代码如下: DATA: VALUESCHAR TYPE STANDARD TABLE OF BAPI1003_ALLOC_VALUES_CHAR WITH HEADER LINE. IMPORT VALUESCHAR FROM MEMORY ID ‘ZDQ_MDM_MATNR_CREATE’. FREE MEMORY ID ‘ZDQ_MDM_MATNR_CREATE’. IF VALUESCHAR[] IS NOT INITIAL. LOOP AT T_ALLAUSP. READ TABLE VALUESCHAR WITH KEY VALUE_CHAR = T_ALLAUSP-ATWRT . IF SY-SUBRC = 0. T_ALLAUSP-ATZHL = VALUESCHAR-INSTANCE. MODIFY T_ALLAUSP TRANSPORTING ATZHL. ENDIF. ENDLOOP. E_ACTIVE = ‘X’. ENDIF.

BADI-CUSTOMER_ADD_DATA-XD01_XD02 Enhancement

Today we will learn BADI-CUSTOMER_ADD_DATA- TCODE: XD01  XD02 Customer Master Screen Enhancement . Step by step to Add customer fields to XD01 XD02 XD03 SCREEN. 客户主数据屏幕增强.   Purpose: Add customer fiedls to tr-code XD01\XD02\XD03 add append structure in tcode se11 to table KNA1 find SPRO   SPRO->后勤-常规->业务伙伴->客户->控制->客户所有的主数据字段的采用进行配置 维护客户屏幕组ZA:added customer data附加数据 choose ZA,function code ZA01, icon=icon*add* Create

增强:BADI-MB_MIGO_BADI_MIGO-采购订单收货交货单必输

SAP ABAP Enhancement Purpose:For Migo,When it is Purchase Order (PO), Delevey Nunmber is Must key in (Requred) MIGO 对采购订单收获时候,交货单字段必须是必填的. Steps: 1、T-code SE19 创建MB_MIGO_BADI的实现 2、新增G_CECHK属性(Attribute) 3、Write Sample abap code in   MODE_SET POST_DOCUMENT CHECK_HEADER   3 method. METHOD:MODE_SET ************************************************************************ *                                                                                  *  检查标识 ************************************************************************ IF i_action = ‘A01’ AND i_refdoc = ‘R01’.“ g_check = ‘X’. ELSEIF i_action = ‘A01’ AND i_refdoc = ‘R08’.“.生产订单入库 g_check = ‘P’. ELSE. g_check = ”. ENDIF.     METHOD:POST_DOCUMENT *&——————————————————————————–* *&      收货时检查抬头交货字段是否为空                                                                             * *&——————————————————————————–* DATA:lt_marc TYPE TABLE OF marc, ls_marc TYPE marc.