Enhanced (enhancement)

Source: Internet
Author: User

Enhanced (enhancement)

The purpose of the enhancement is that standard SAP normal business systems do not meet the actual requirements.

But as developers say the enhancement is mainly the standard system beforehand reserved good interface, according to different business needs, to develop, we call the enhancement, also called the export.

For example: 1: In the business inspection, such as in a factory delivery, can be set in a location to ship only use a certain type of movement. 2: When the need for interface enhancement, such as the user to a field requirements, but the end user does not follow the specification, this can also be automatically converted in the export, some modules can even customize the database field, and can be added to the export field input. Other modules can check the input data, and even realize the function of automatic substitution. 3: When there is irregular business, such as the price of a certain condition, you can set the table from its own definition of the value of 4: Search Help export, you can search for SAP standards to help control permissions. Wait a minute.

There are four generations of SAP user export development today:

First generation (based on source code enhancement) is a sub-process that SAP provides an empty code, in which the user can add their own code to control their own needs. Such enhancements require modification of SAP's standard code, which is empty at the time of publication, and focused on the inclusion program with the second-to-last character Z in the file name, because in a standard program, all Programs ' global data can be used, but the system will be overwritten by the new version when it is upgraded. The description of this source code enhancement and screen enhancement can be found in the path of the relevant module in the SPRO background configuration of the transaction code, which is usually a sub-module with Userexit_. Locate the program you want to enhance, and look for the UserExit keyword. Such enhancements are required to request object keys (ACCESS key) in advance to the service marketplace before you can modify these subroutines.

Ways to find this type of exit:

1, in the enhancement program to find the second character of the inclusion program Z;

2, in the background to find the corresponding module enhancement;

3, in the program search Userexit_ the key word subroutine;

4, the Byte lists the object list "Display object Lists" button, under the subroutines list to find "UserExit" sub-program;

Second generation enhancement (based on Function module enhancement), maintenance with Smod and cmod; In the release of SAP, use call customer-function ' xxx ' calls the function module, so you can find the second generation enhancement by receiving customer-function in the program, the second generation of enhanced function name composition: Exit_ program name _ ' xxx (3 digital number) ', so you can find the corresponding enhancement function module. , they only have a code include ' xxxxxxx ' When they are released, no need to modify the same as the first generation of access key, directly double-click on the carriage return, but at the same time this enhancement and subsequent generations of the enhancements are not as easy as the first generation of the program's global data, Only parameters passed in the interface can be used.

There are 3 main types of second-generation enhancements:

1) E. Ehancement exits: These exits exit_ the beginning, you can view it in SE37, or you can query the Tfdir function in the data dictionary exit_ (function table).

2) C. GUI codes, (GUI enhanced)

3) S. Subscreens (screen boost).

4) T. Include Structure enhancements

Enhancement more important table MODSAP, this table important field enhancement name (name), component type (typ:e C S T), Component function Module name (Member): All enhancement enhancements are recorded inside. Tfdir all function tables, important fields funcname (function name), mand (functional module activation State if C represents this function module activation).

Ways to find enhancement:

1, in the program search customer-function find the back of 3 for digit suffix, and then the export function is Exit_ program name _3 digit suffix.

2, code for enhanced use the following code to find enhancement (some exit use it can not be found)

3, the use of system functions to find enhanced

Function:

[1]. Dynp_values_read

[2]. Modx_all_active_menuentries (Menu enhancement)

[3]. Modx_function_active_check (export function Enhancement)

[4]. Modx_menuentry_active_check (menu enhancement)

[5]. Modx_subscreen_active_check (screen boost)

We can set a breakpoint at the end of the function and then call the function by running the corresponding enhancer, so that you can find the corresponding enhancement in debug mode.

Third-generation enhancement (based on the object-oriented concept of enhanced Badi (business add-in)), the source code is published in an interface way, through the interface of the method call to achieve the use of. User enhancement is actually the implementation of one or more implementation classes based on this interface, because the interface class is actually an abstract class, so different source code for the same enhancement, these different sources of code through the filter (adapter) to distinguish between different business scenarios. This enhancement is achieved using SE18 SE19.

How to find Badi:

1. The information of the Badi object is stored in the four tables, Sxs_inter,sxc_exit,sxc_class and sxc_attr.

2, the SAP Badi program will call Cl_exithandler=>get_instance to determine whether the object exists, and return the instance, this method is actually the above 4 tables and views V_ext_imp and V_ext_act query and search. We can set breakpoints at this method to get the instance.

3, its call method is called method (instance), can be found by Exit_handler keywords.

4. ST05 Select "Table buffer trace" instead of the usual "SQL trace" and then find the corresponding Badi for several tables and views above.

5, Se18 find interface, SE19 implementation interface can realize user enhancement

The fourth generation is actually the third generation of strengthening the switch framework when SAP entered Newweaver 7.0 after the introduction of the new enhanced system, the Badi has been improved, called the new Badi. The concept of Enhancement spot and Enhancement section as well as the implicit enhancement point is also added, which can be implemented in object-oriented programs to achieve the highest level of enhancement everywhere.

1 Enhanced User exit

Customer Exits, as the name implies, is user-defined export.

There are 3 categories of such exports: Function Module Exits; Menu Exits; Screen Exits

There are two commonly used T-code:

CMOD: For enhanced project management

Smod: Concrete implementation of enhanced projects

function Module Exits: A call Function statement that is pre-provisioned in a standard program, such as called Customer-function ' NNN, to dynamically invoke the associated export program. ' NNN ' is a 3-digit number, and the actual exit function is named by: Exit_<program Name>_<exit number>. Look for such can use SMOD query function, also have a program can use T-code to help find. This export form is relatively simple, so we will not give an example.

Menu Exits: Individuals feel that it is used in a relatively small export, the project is rarely used, SAP reserved a few exports. Hold on to a few key points, Menu exits will have a reserved function code like +PGE or something.

Enhancement: Smod

Method one, using Tcode to find reinforcement (second generation enhancement)

Execute a program (attached to the source code), enter the program you need to enhance the tcode at the selection screen, and after execution, a list will appear, where there is a great majority of smod enhancements on how to enhance this.

Click inside to manually find the enhancements you need.

This is the second generation of enhanced

Method two, using the system function to find

Modx_function_active_check

Add a breakpoint at the end of this function's code. Perform tcode that need to be enhanced, and automatically jump into the debug interface if there is an enhancement. In the debug interface, look at the F_tab field, which shows the smod is a list of all the enhancements to this tcode. These enhancements are all part of the Exit_xxxxxx_xxx form.

As for how to see which smod this enhancement belongs to, you can check the MODSAP table (SAP enhancements) yourself.

This is the second generation of enhancements.

There are also some function for reference:

[1]. Dynp_values_read

[2]. Modx_all_active_menuentries (Menu enhancement)

[3]. Modx_function_active_check (export function Enhancement)

[4]. Modx_menuentry_active_check (menu enhancement)

[5]. Modx_subscreen_active_check (screen boost)

These are used in the same way as above, and can be enhanced for a variety of situations.

Method Three, from the program code to find

In the need for enhanced transactions, open system--status, double-click into program, view all the subroutines, focus on all the shape userexit_*******, by description to determine the appropriate need to enhance the form. This is the first generation of enhancements.

Method Four, for the enhancement of Badi

1. The information of the Badi object is stored in the four tables Sxs_inter, Sxc_exit, Sxc_class and sxc_attr.

2, the SAP program will call Cl_exithandler=>get_instance to determine whether the object exists, and return to the instance, in fact Get_instance is the above several tables and their views (V_ext_imp and V_ext_ ACT) for querying and searching.

3, based on this mechanism, I check with ST05 to monitor a tcode to track, and then choose to find out about the above several tables and views of the operation, you can get related badi.

4, Se18 find interface, SE19 implementation interface can realize user enhancement.

Enhanced (enhancement)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.