Implementing BADI for the transactions VL02 & MM02
来源:互联网 发布:蓝宇原型知乎 编辑:程序博客网 时间:2024/05/20 09:11
Introduction to BADI
- Based on OOPS concept.
- No access key required.
- All BADI’s can be seen in a class ‘CL_EXITHANDLER’.
Step 1:
Run the transaction SE24. Under object type put the class name ‘CL_EXITHANDLER’.
Click on display button.
Under this class ‘CL_EXITHANDLER’ select the method ‘GET_INSTANCE’ and double click.
Under the method ‘GET_INSTANCE’ put break point on a function module called
‘CALL METHOD CL_EXITHANDLER=>GET_CLASS_NAME_BY_INTERFACE’
Step 2:
Then according to the requirement run the transaction. In this example transaction code is VL02.
Run the transaction VL02. As in 1st step we have putted a break point, that function module will give all BADI used by the transaction in each screen and activity on the application (VL02).
Under the parameter EXIT_NAME this debugger screen will give all BADI name for each screen.
Each time press F8, you will get all BADI used for the screen. After that system will go for next screen.
BADI NAME: EHS_DG_001
LE_SHP_DELIVERY_PROC
LE_SHP_PRICING
BADI_LAYER
CU_CONFIG_DELEGATION
1st screen of transaction VL02.
Step 3:
Choose your BADI name and you can see the detail in transaction SE18. Lets take a BADI ‘BADI_LAYER’. Click on display button.
Press F8 to get the details of the corresponding BADI.
Here we can get the attribute and interface details of the BADI. As this one is screen BADI sub-screen tab also is there.
Step 4:
To implement the BADI, we have transaction SE19.
To create new BADI to implement the put your BADI name here. If the BADI is an enhancement-point then put the BADI name in option NEW BADI and if only BADI then put the name in CLASSIC BADI.
Give the BADI name and click on create button.
Press F8.
Again press F8. Give an implementation name. Let it be ZTTTTT
Give the description and select a suitable method double click to get into the method to put the ABAP code.
To edit an implemented BADI the below portion is used. Click on the change button to edit the BADI.
EXAMPLE: To change the description of a material in transaction MM02.
Step 1:
Run the transaction SE24. Under object type put the class name ‘CL_EXITHANDLER’.
Click on display button.
Under this class ‘CL_EXITHANDLER’ select the method ‘GET_INSTANCE’ and double click.
Under the method ‘GET_INSTANCE’ put break point on a function module called
CALL METHOD CL_EXITHANDLER=>GET_CLASS_NAME_BY_INTERFACE’
Step 2:
Then according to the requirement run the transaction. In this example transaction code is MM02.
Run the transaction MM02. As in 1st step we have putted a break point, that function module will give all BADI used by the transaction in each screen and activity on the application (MM02).
Press F8 to get the BADI used.
BADI name before calling the main screen of MM02.
BADI_SCREEN_LOGIC_RT
W_RETAILSYSTEM_IDENT
Press enter to get into the details.
BADI name after calling the main screen of MM02.
BADI_MATERIAL_OD
Press enter to proceed.
BADI used.
BADI_MATERIAL_OD
ECM_EXIT
BADI_LAYER
GOS_SRV_SELECT
BADI_MATERIAL_OD
ECM_EXIT
Change the description line and click on SAVE icon.
BADI name:
BADI_GTIN_VARIANT
BADI_MATERIAL_CHECK
EHSS_SPEC_CHECKS
Step 3:
Run the transaction SE18 to see the details of BADI.
Click on display button to see the methods declared in that.
Choose the method where the material description is defined.
Step 4:
Run the transaction SE19 and create an implementation for the corresponding BADI. Click on create button to create an implementation.
Give a name for the implementation.
Give the description. Click on save icon and double click on the method chosen.
On a double clicking system will provide you the editor to write the code.
Code is
DATA:WA1 TYPE SHORT_DESC.
DATA: WA TYPE SHORT_DESC.
WA-MAKTX = 'HELLO'.
LOOP AT STEXT INTO WA1.
CONCATENATE WA1-MAKTX WA-MAKTX INTO WA1-MAKTX.
MODIFY STEXT FROM WA1.
ENDLOOP.
- Implementing BADI for the transactions VL02 & MM02
- Implementing Screen Exit for the transaction CO01
- 23.Examine the structure proposed for the TRANSACTIONS table:
- 24.Examine the structure proposed for the TRANSACTIONS table:
- Implementing Backup and Recovery: The Readiness Guide for the Enterprise
- BADI For MIGO
- Table for BAdI Implementation
- BADI for UDM_DISPUTE
- Implementing NSFetchedResultsController for UICollectionView
- The JSR-133 Cookbook for Compiler Writers(an unofficial guide to implementing the new JMM)
- 188.You receive complaints from users regarding the high waiting time for their transactions. On inv
- 1.What are the prerequisites for performing flashback transactions? (Choose all that apply)
- how to find the badi?
- illustrates the use of transactions
- Implementing operator->* for Smart Pointers
- BADI
- badi
- Transactions
- 使用 Tuscany 域管理器部署 SCA 应用程序
- 如何进行IT项目的需求调研?
- jsp连接数据库时,对rs.next()抛出NullPointerException
- 一个感人至深的爱情故事---蜘蛛与甘露
- 加个正则库
- Implementing BADI for the transactions VL02 & MM02
- WCF+EF 实战四:UI层MVP模式处理
- 中学数学教材教法试题
- SQLServer和Oracle常用函数对比
- sap中子屏幕的创建
- Flex连接javaEE后台的可用技术
- 在线网上书店(HTML+JSTL+JSP指令+Struts+SQL Server)
- C# 接口(一 接口概述)
- map,set,list,等JAVA中集合解析(了解)