- 浏览: 405802 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
yiming163:
thank you!
eCATT, LSMW in detail -
泡泡蓝:
把WITH INCLUDES.改成 WITH ANALYSI ...
User Exits,Customer Exits,BAdI and BTE -
泡泡蓝:
王弈争 写道泡泡蓝 写道SCAN ABAP-SOURCE SO ...
User Exits,Customer Exits,BAdI and BTE -
王弈争:
泡泡蓝 写道SCAN ABAP-SOURCE SOURCETA ...
User Exits,Customer Exits,BAdI and BTE -
jgtang82:
泡泡,我没遇到你所说的问题呀
User Exits,Customer Exits,BAdI and BTE
Basic Concepts:
1. User Exits: 是系统中预留的一些空的Form/Subroutine, 获得Access key后可以在Form中写入自己的逻辑.
2. Customer Exits :
a. FM Exits: 在FM中include 保留的 Z 程序来提供功能扩展点
b. Menu Exits: 在GUI status中预留+Fcode menu item, 在程序中预留对应的Handling FM Exits
c. Screen Exits: 在Screen 中预留 Subscreen, 在程序中预留transport data to subscreen & return / retrieve data from subscreen 的 FM Exits
3. Enhancement & Enhancement Project :
a. Enhancement: 把系统程序中的相关Customer Exits收集起来成为一个Enhancement, 一般情况是按功能和类型来收集的, 比方说几个相关的FM eixts组成一个enhancemnet, 或就一个 screen 或 menu exits 形成一个enhancement. 查看/修改 Enhancement的t-code为: SMOD
b. Enhancement Project: 在使用Enhacement时, 要先建立一个Enhancement Project, 可以将多个Enhancement assign给一个enhancement project去管理, 对应t-code: CMOD.
4. BADI (Business Add-in), 通过面向对象的方式来提供扩展点,它支持Customer Exits所有的enhancement 类型,因目前Class中不能包含subscreen所以在用BADI enhance screen时比用Customer Exits要复杂些.相关机制请参考我以前的blog.
这里要提下的是非Multiple Case的BADI同时只能有一个Active Implementation, 即要Active新生成的需先inactive旧的. 若是Multiple Case的BADI则可同时有多个Active Implementation,且所有的Implementation在没有Filter的情况下都会被遍历执行.
5. Other
User Exits与Customer Exits的区别在于User Exits的使用需要Access Key但Customer Exits不要.
FM exits在关联的Function Group中的命名规则为: EXIT_program name_nnn
Customer exits的调用方式为:
a. FM Exits: CALL CUSTOMER-FUNCTION 'xxx' EXPORTING ... IMPORTING ...
b. Subscreen: Call CUSTOMER-SUBSCREEN
INCLUDING
How to find user exits?
Using t-code: SE93 and specify the transaction code. from here goto the main program and click on the FIND button. Specify USEREXIT and select find in main program radio button and click search... if any user exit is used, it will list all the places as in SAP if any user exit is used, a comment is been written above the user exit.
How to find customer exits?
1. 通过一些专门的程序,见附件
2. Search string “call customer” in the main program source code;
3. SE80 -> Repository Infomation System -> Enhancements -> Customer Exits -> Input search condition -> Execute
4. SE11 -> Database table: MODSAPVIEW -> Display Contents -> Input "*program name*" into Enhancement field -> Execute -> 得到的SAP extension name 即为 Customer Exits Enhancement Name
How to find BADIs?
1. 通过一些专门的程序,见附件
2. Search string “type ref to” in the main program source code, then check if there is BAdi used in the program;
3. Set break-point in the method CL_EXITHANDLER=>GET_INSTANCE.
4. SE80 -> Repository Infomation System -> Enhancements -> Business Add-ins
Customer Exits and BADI implementation.
1. Customer Exits: SMOD, CMOD
2. BADI: SE18, SE19.
Attachment is an ABAP program which can find customer exits and BADIs conveniently.
- Z_USEREXIT.zip (8.5 KB)
- 描述: 一个非常强的查找Customer Exit, User exit, BADI和BTE的程序
- 下载次数: 143
评论
STATEMENTS INTO I_SSTMNT
KEYWORDS FROM KEYWORDS
OVERFLOW INTO C_OVERFLOW
WITH INCLUDES.
这里提示错误:
直到声明 "WITH ANALYSIS" 之前,记号表的 偏移和长度字段都不会被填写。出于空间 原因,记号表应 STOKEN 做为行类型。
同问,我也是这样问题 你怎么处理的啊?
一直没解决呢 后来找到了另一个程序,不过感觉还是这个全,但是不能用,也不知道怎么改,可惜。。。。
STATEMENTS INTO I_SSTMNT
KEYWORDS FROM KEYWORDS
OVERFLOW INTO C_OVERFLOW
WITH INCLUDES.
这里提示错误:
直到声明 "WITH ANALYSIS" 之前,记号表的 偏移和长度字段都不会被填写。出于空间 原因,记号表应 STOKEN 做为行类型。
同问,我也是这样问题 你怎么处理的啊?
STATEMENTS INTO I_SSTMNT
KEYWORDS FROM KEYWORDS
OVERFLOW INTO C_OVERFLOW
WITH INCLUDES.
这里提示错误:
直到声明 "WITH ANALYSIS" 之前,记号表的 偏移和长度字段都不会被填写。出于空间 原因,记号表应 STOKEN 做为行类型。
1. Go to the TCode SE24 and enter CL_EXITHANDLER as object type.
2. In 'Display' mode, go to 'Methods' tab.
3. Double click the method 'Get Instance' to display it source code.
4. Set a breakpoint on 'CALL METHOD cl_exithandler => get_class_name_by_interface'.
5. Then run your transaction.
6. The screen will stop at this method.
7. Check the value of parameter 'EXIT_NAME'. It will show you the BADI for that transaction.
1. 如何能过customer exit name 找 enhancement?
通过表 MODSAP
2. 如果知道你要做的customer exit是否已经有Project实现过了?
CMOD -> input customer name to "Enhancement component" field like "EXIT_SAPLRSAP_002" -> execute
发表评论
-
Sap Number Range Object (SNRO)
2010-12-21 16:11 1823Brief Example http://www.sapte ... -
SAP R/3 Security Tables
2010-12-09 15:27 1615Below the list of SAP R/3 Sec ... -
Class def & impl, Inherit & overwriting, interface & using it, event & handler
2010-12-08 10:05 1147Below codes is a simply and rou ... -
IDOC_INPUT_ORDERS with error msg RV45A-VBAP_SELKZ (2) is not input field
2010-11-08 14:51 2401[Issue] Hi I am creating a mul ... -
SAP ALV Trees
2010-11-05 14:07 2148BCALV_GRID_DND_TREE ALV Grid: D ... -
Creating a SAP shortcut for any transaction and sending it by mail
2010-11-02 11:12 2000Refer to SAP wiki: http://wiki. ... -
Note 573128 - Debugging programs in the background
2010-11-01 20:13 1175Note 573128 - Debugging program ... -
Function Module related on Date calculations (ZT)
2010-07-20 17:00 1689http://wiki.sdn.sap.com/wiki/di ... -
SAP SDN Interesting Topics
2010-06-29 09:48 983Web Dynpro ABAP Performance Too ... -
SE16N &SAP_EDIT, ICON at Selection Screen
2010-06-12 17:35 1731摘录From blog of 翱翔云天 1. SE16N & ... -
Debug background processes, update/system code,model dialog...
2009-12-18 13:55 1196How do I debug running backgrou ... -
ABAP character variables vs. string variables
2009-11-16 11:23 2946Chinese Version: http://blog.cs ... -
ECC6 ALV Dump
2009-10-21 15:20 1030[Dump] 1. Use system reserved ... -
Simple Transfermation Program
2009-08-07 23:42 1993Have you been requested to gene ... -
eCATT, LSMW in detail
2009-02-15 10:14 3449eCATT : http://sap.iteye.com/bl ... -
Trigger ABAP program using UNIX script
2009-01-09 13:27 22421. Create a batch job in SM37 f ... -
How to cancel active job, del/change schedule job
2008-12-26 09:56 2304if the job is active and you wa ... -
How to Run UNIX script from ABAP?
2008-12-19 12:52 2524Look at SM69, SM49 and Functio ... -
REUSE_ALV_GRID_DISPLAY事件子过程和cl_gui_grid类的事件对应关系
2008-12-04 18:46 3854一、SLIS定义的ALV的事件名称* Eventsslis_e ... -
DDIC info related tables
2008-12-03 09:58 1941Data elementsDD04L Data elem ...
相关推荐
这种机制分为三种类型:User Exits、Customer Exits和BADI。 User Exits User Exits是系统中预留的一些空的Form/Subroutine,获得Access key后可以在Form中写入自己的逻辑。这种机制可以让开发者在系统中添加自己...
在SAP BW(Business Warehouse)系统中,用户退出(User Exits)是一种关键的自定义和扩展机制,它允许客户根据自身业务需求对标准SAP交易进行调整和优化,而无需直接修改原始代码。这样做可以降低维护成本,因为当...
它首先提示用户输入想要搜索的事务代码,然后通过查询系统表来确定该事务代码下哪些标准SAP UserExits和BADI可用。程序还提供了选项来区分搜索结果,即选择查找UserExit还是BADI。 #### 结论 理解和掌握BADI与User...
User exits(Function module exits)是sap提供的出口,它的命名规则如下:EXIT_<program name><3 digit suffix>。例如,SD的事务VA01,对应的程序是SAPMV45A,你会在程序里查到(用CALL CUSTOMER-FUNCTION字符串)...
#### 一、理解SAP中的BADI与User Exits 在SAP系统中,为了提供高度的定制化能力,开发了许多扩展点,即所谓的BADI(Business Add-Ins)和User Exits。这两种机制允许客户在不修改标准代码的前提下,对SAP的应用程序...
标题:“PM USER EXITS” 描述:此文档详细介绍了在SAP PM(Plant Maintenance)模块中的用户出口(User Exits),并特别关注了ABAP语言的使用。用户出口是SAP系统提供的一种定制化机制,允许企业在标准流程中插入...
### SAP用户出口(User-Exits)与BADI增强机制详解 #### 概述 本文档旨在帮助SAP用户和技术人员了解如何寻找与SAP标准事务代码相关的用户出口(User-Exits)或BADI(Business Add-Ins)。通过这些方法,用户可以在不修改...
用户退出(User exits)的命名规则通常遵循EXIT_<programname><3digit suffix>的格式,这种命名规则帮助开发者识别特定的退出点。 在实现SAP SD相关的增强时,开发者需要深刻理解业务需求,并对SAP SD模块的架构有...
在 SAP ABAP 开发中,用户出口(User Exits)和增强型接口(Badis,Business Add-Ins)是两种常见的扩展机制,用于定制和优化标准 SAP 功能以满足特定业务需求。本教程将深入讲解如何查找 SAP 标准程序中的用户出口...
这些增强功能包括用户退出(User Exits)、客户退出(Customer Exits)、菜单/屏幕/字段退出(Menu/Screen/Field Exits)以及BAdI等。每种类型的增强功能都有其特定的实现方式。本教程关注的是用户退出和客户退出。 #### ...
### 完全退出机制在Android应用中的实现 #### 背景介绍 在Android应用程序开发过程中,有时我们需要实现一个“完全退出”的功能,即当用户选择退出应用时,不仅仅关闭当前活动(Activity),而是将应用的所有活动...
标题中的"Z_FIND_USEREXIT_SAP增强查找Z_USEREXIT_" 提到的是一个专门用于寻找和管理SAP用户出口(User Exits)的工具。用户出口是SAP提供的一种预定义的扩展点,允许开发人员在不修改标准代码的情况下插入自定义...
本篇文章将详细探讨ABAP中的增强技术,包括透明表及结构的增强、字典文档的增强以及用户出口(User Exits)等内容。 #### 二、透明表及结构的增强 ##### 1. Append Structure - **定义**: Append Structure 是一种...
Sentaurus TCAD Device User Guide 本文档是 Sentaurus TCAD Device 的用户指南,旨在帮助用户了解该软件的使用方法和基本概念。 Sentaurus TCAD Device 是一款专业的集成电路设计和仿真软件,能够帮助用户设计、...
例如,`Z_FOUND_BADI`可能是指这个程序的名字,而`Z_USEREXIT(V9)`则可能代表了一个具体的用户出口或者说是程序的版本号。此外,报告中还提到了一系列的选择文本,如`P_ALVALV`格式、权限检查搜索(`P_AUTH`)、显示...
这些User Exits自SAP的早期版本起就已存在,虽然它们不属于Enhancements或Business Transaction Events,也没有专门的信息系统用于搜索,但在配置用户退出(Older)部分有列出所有这些FI/CO User Exits。 利用User ...
6. **User Exits**: 用户出口与函数模块出口类似,也是在标准程序中预定义的扩展点。用户可以通过实现这些出口来添加自己的代码段,而不会影响标准程序的其他部分。 7. **ABAP Enhancements(Enhancement Spot, ...
SAP USER EXITS FOR DEVELOPER
第三代用户出口引入了基于对象的方式,以Business Add-Ins(BADI)的形式提供,这种更灵活且易于维护。 在具体应用中,功能出口(Function Exits)常用于在标准事务执行过程中添加业务逻辑,例如验证字段值。屏幕...