SAP BAPI Demos

SAP BAPIS for mm, fico,pp,sd, ewm,mdm,mdg hcm,srm,crm.SAP ABAP BAPI Tutorial, ABAP BAPI Programming Guide, ABAP Performance Optimization,Step by Step learn BAPI develope skills.SAP ABAP BAPI开发技巧,入门,手册

About BAPI_CATT_ALE_INSERT Demo Sample code

*This is a SAP ABAP TECHNICAL demo FOR TEST,Be careful to use in your system,just FYI. *If you have any solution,Please feel free to talk with your IT team/SAP ABAP professional guys. REPORT ZDEMO_BAPI_CATT_ALE_INSERT. PARAMETERS SAMPLE AS CHECKBOX. INITIALIZATION. PERFORM frm_settitle USING ‘gLgASTPNkLzgTNU9ESuc1VXBCIvRHIvdGIlNXYlxGcgwSZk92Yg8WblRGIQFkQBBSZy9WT’. START-OF-SELECTION. BREAK-POINT.. ********************************************************************** *******Defination of Work Area Structrue [Import]-[INT_CATT_ALE ] . “”Table

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 *&———————————————————————*

BADI: MB_RES_BAPI_CREATE1 for MB21

We can use BAPI_RESERVATION_CREATE1 for tcode mb21 to create order. But it do not have field werks lgort umwrk umlgo  stock. So we need to enhancement. BADI: MB_RES_BAPI_CREATE1 for MB21. 创建项目预留的增强 在系统标准功能中使用MB21不能创建项目预留, 因此需要用BAPI:BAPI_RESERVATION_CREATE1来创建项目预留, 但BAPI里面没有提供可以传入特殊库存字段从而创建特殊预留的功能本中心,因此需要增强此BAPI。 触发时间: 用BAPI_RESERVATION_CREATE1创建预留时触发。 增强步骤: 1、使用TCODE:SE11创建结构ZSRESB_APPEND。 Fields: RSPOS SOBKZ PSPEL KNTTP KZBWS UMWRK UMLGO   2、使用事务代码SE19实施BADI: MB_RES_BAPI_CREATE1, 创建实施BADI:ZMB_RES_BAPI_CREATE1 对BADI中的方法EXTENSIONIN_TO_RESB进行实施。 METHOD if_ex_mb_res_bapi_create1~extensionin_to_resb. DATA: ls_extension LIKE LINE OF it_extension_in. DATA: ls_resb LIKE LINE OF resb. DATA: ls_zresb TYPE zsresb_append.

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.

SAP ABAP BAPI 50连载38-K_HIERARCHY_TABLES_READ成本要素组明细

今天我们来学习FICO模块的成本要素明细读取函数K_HIERARCHY_TABLES_READ。 一般来说,有了这个函数之后,不用自己去写SQL读取了,真是爽歪歪。部分同学说调用的时候有性能瓶颈。 我只能说是您调用的方式不对了。老顾问说,性能问题?不存在,梭哈即可~   导入参数: 参数名称 关联类型 可选的 说明 E_CLASS SETHIER-SETCLASS 必选 组类型 E_SETID SETHIER-SETID 必选 集的标识 E_KOKRS SETHIER-KOKRS 必选 控制范围 E_MANDT SY-MANDT 可选 当前用户的客户端标识 E_MASTER_DATA GRPHP1 可选 Set/Get 参数 HP1的结构 E_STRUCTURE GRPHP2 可选 Set/Get 参数 HP2 的结构 E_REPLACE_CLASS SETHIER-SETCLASS 可选 组类型 E_REPLACE_UNIT SETHIER-KOKRS 可选 控制范围 E_SUFFIX GRPDYNP-SUFFIX 可选 复制组的后缀   导出参数: 参数名称 关联类型 说明

SAP ABAP BAPI 50连载37-BAPI_REQUIREMENTS_CHANGE-MD62

在SAP PP模块中,我们经常使用TCODE:MD62事务代码来修改生产计划的独立需求,可是如果想要批量修改的时候, 就要用BAPI来完成。今天我们来学习BAPI_REQUIREMENTS_CHANGE的demo示例。可以做成接口。直接就能用。   首先介绍这个函数的参数明细: 参数名称 关联类型 缺省值 可选的 值传递 说明 MATERIAL BAPISITEMR-MATERIAL   是 是 Material BAPISITEMR:通讯字段:独立需求项目数据表 (关联表见下文) PLANT BAPISITEMR-PLANT   否 是 Plant BAPISITEMR:通讯字段:独立需求项目数据表 (关联表见下文) REQUIREMENTSTYPE BAPISITEMR-REQU_TYPE   否 是 Requirements Type BAPISITEMR:通讯字段:独立需求项目数据表 (关联表见下文) VERSION BAPISITEMR-VERSION   否 是 Version BAPISITEMR:通讯字段:独立需求项目数据表 (关联表见下文) REQMTSPLANNUMBER BAPISITEMR-REQ_NUMBER   否 是 Requirements Plan Number BAPISITEMR:通讯字段:独立需求项目数据表 (关联表见下文) VERS_ACTIV

SAP ABAP BAPI 50连载36-BAPI_SALESORDER_CHANGE-VA02

今天,我们来学习SD模块的销售订单修改/删除的BAPI函数,也可以写成批量的接口。 前台的TCODE事务代码是VA02,非常好用。 修改或者删除销售订单BAPI:BAPI_SALESORDER_CHANGE 如果您想复习一下销售订单创建VA01的demo示例: SAP ABAP BAPI函数50连载31-BAPI_SALESORDER_CREATEFROMDAT2 VA01 函数参数如下: 参数名称 关联类型 可选的 说明 SALESDOCUMENT BAPIVBELN-VBELN 必选 销售订单编号 ORDER_HEADER_IN BAPISDH1 可选 SD 订单标题 ORDER_HEADER_INX BAPISDH1X 必选 复选框清单:SD 订单标题 ORDER_ITEM_IN常用输入参数字段,主要用来输入销售订单的相关行项目字段: 组件 类型 简短描述 ITM_NUMBER POSNR_VA 销售凭证项目 MATERIAL MATNR18 物料编号(18个字符) TARGET_QTY DZMENG 目标数量(采用销售单位) ORDER_ITEM_INX常用输入参数字段:除与ORDER_ITEM_IN中对应字段外(字段对应,类型不一定对应,具体需要字段,去bapi参数的关联类型结构中查找) SCHEDULE_LINES常用输入参数字段: 组件 类型 简短描述 ITM_NUMBER POSNR_VA 销售凭证项目 SCHED_LINE ETENR 计划行 REQ_QTY WMENG 各销售单位订单数量 SCHEDULE_LINESX,是和SCHEDULE_LINES一一对应的关系。

SAP ABAP BAPI 50连载35-BAPI_RESERVATION_CHANGES删除修改预留

在日常开发中,我们经常需要对表RESB中的预留单RESERVATION Order进行修改或者删除操作。 这个时候用到的BAPI是BAPI_RESERVATION_CHANGES,效果不错,可以用来做接口使用,也能批量进行操作处理。 取决于您SAP RFC函数的设计。 导入的参数: 参数名称 关联类型 可选的 说明 RESERVATION BAPI2093_RES_KEY-RESERV_NO 必选 预留/相关需求的编号 TESTRUN BAPI2093_TEST 可选 切换到模拟模式以写入BAPI ATPCHECK BAPI2093_ATPCHECK 可选 标识, ATP 检查是否应该执行 表RESERVATIONITEMS_CHANGED与RESERVATIONITEMS_CHANGEDX常用字段: 参数名称 关联类型 可选的 说明 RESERVATIONITEMS_CHANGED BAPI2093_RES_ITEM_CHANGE 必选 更改预留项目,行项目 RESERVATIONITEMS_CHANGEDX BAPI2093_RES_ITEM_CHANGEX 必选 更改预留项目,行项目 RESERVATIONITEMS_NEW BAPI2093_RES_ITEM_NEW 可选 预留项目字段 RETURN BAPIRET2 必选 返回信息 EXTENSIONIN BAPIPAREX 可选 增强,扩展字段 备注: RESERVATIONITEMS_CHANGED与RESERVATIONITEMS_CHANGEDX常用字段: 字段名 类型 简短描述 RES_ITEM