Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

enhancement

Former Member
0 Kudos

dear all

wat is enhancement give me two examples?

thanks.

ratna prasad.p

4 REPLIES 4

Former Member
0 Kudos

Hi,

Enhancements represent potential customer requirements that have not been developed in the standard. Instead, the standard provides for further development of such exits at the customer site, using logic specific to the customer. Upward compatibility is assured since SAP guarantees that the call of an enhancement from the standard software and the calling interface will remain valid in future releases.

You can make enhancements to the standard using Text Enhancements and Customer Exits .

From Release 4.6A, you can implement enhancements for the system standard using a new technique called Business Add-Ins

check the below links for your questions

http://help.sap.com/saphelp_46c/helpdata/en/64/72369adc56d11195100060b03c6b76/frameset.htm

FAQ's

http://http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm

http://www.ficoexpertonline.com/downloads/User%20ExitsWPedit.doc

http://www.easymarketplace.de/userexit.php

http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction

1. what is the defference between enhancement and user-exits?

http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm

http://searchsap.techtarget.com/expert/KnowledgebaseAnswer/0,289625,sid21_gci1190924_tax299358,00.ht...

2. Difference between CMOD and SMOD?

http://www.sap-img.com/abap/what-is-the-difference-between-smod-and-cmod.htm

http://www.sap-img.com/abap.htm

http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/diff-between-cmod-and-smod-236095

http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/diff-between-cmod-and-smod-236107

check these links..

http://www.sapgenie.com/abap/tips_and_tricks.htm

http://www.sap-img.com/abap/field-exits-smod-cmod-questions-and-answers.htm

http://www.sap-img.com/abap/what-is-user-exits.htm

Regards,

Priyanka.

Former Member
0 Kudos

Refer to these related threads

Former Member
0 Kudos

hi

ENHANCEMENTS

Enhancements are “hooks” provided by SAP within many standard programs, screens and menus on which customers may “hang” custom functionality to meet business requirements.

• Types

• Customer Exits

• User Exits

• BADI

USEREXIT

User exits allow us to add our own functionality to SAP standard program without modifying it . These are implemented in the form of subroutines and hence are also known as FORM EXITs. The user exits are generally collected in includes and attached to the standard program by the SAP.

All User exits start with the word USEREXIT_...

FORM USEREXIT_...

<User defined code>

ENDFORM.

e.g. USEREXIT_SAVE_DOCUMENT_PREPARE

Example :

1) ADDING OF NEW FIELDS IN PRICING

In Pricing in SD the fields on the basis of which pricing is done are derived from the FIELD CATALOG which is a structure KOMG .This structure is used to transfer transaction data to the pricing procedure in SD and is also known as communication structure. This structure KOMG consists of two tables KOMK for Header related fields and KOMP for item related fields.

The fields which are not in either of the two tables KOMK and KOMP

cannot be used in pricing .Sometimes a need arises when the pricing

is to be based on some other criteria which is not present in the form of fields in either of the two tables.

This problem can be solved by using USEREXITS which are provided for pricing in SD.

Pricing takes place both when the SALES ORDER (Transaction VA01) is created as well as when INVOICING (Transaction VF01) is done. Hence SAP provides 2 user exits ,one for sales order processing which is

USEREXIT_PRICING_PREPARE_TKOMP or

USEREXIT_PRICING_PREPARE_TKOMK

Depending upon which table (KOMK or KOMP) the new fields were inserted we use either of the above two user exits. These user exits are found in include MV45AFZZ of the standard SAP sales order creation program SAPMV45A.

In the case of user exit which will be called when invoicing is done, these are provided in the include RY60AFZZ which is in the standard SAP program SAPMV45A. The names of the user exits are same. i.e.

USEREXIT_PRICING_PREPARE_TKOMP or

USEREXIT_PRICING_PREPARE_TKOMK

These user exits are used for passing the data from the communication structure to the pricing procedure, for this we have to fill the newly created field in the communication structure KOMG for this we fill the code in the above user exit using the MOVE statement after the data that

has to be passed is taken from the database table by using the SELECT statement. The actual structure which is visible in these user exits and which is to be filled for that particular field is TKOMP or TKOMK.

Before the coding for these user exits is done, it is necessary to create a new field in either of the two tables KOMK or KOMP .For this purpose includes are provided in each of them .

To create the field in header data (KOMK) the include provided is KOMKAZ and to create the field in item data(KOMP) the include provided is KOMPAZ.

Customer Exits

1) MENU EXITS

2) FUNCTION EXITS

3) TABLE EXITS

4) SCREEN EXITS

5) KEYWORD EXITS

6) FIELD EXITS

SUSR0001.This enhancement uses function exit EXIT_SAPLSUSF_001 .

Enhancement : SUSR0001 User Exit after logon to SAP system.

When the User logs in the system ,this exit is called each and every time for every user after logon to the R/3 system.

Function Exit : EXIT_SAPLSUSF_001 .

Every dialog user passes thrugh this function module after logon,It can be used to execute individual customer checks and send mesages to the user.

TABLE USR02 CONTAINS LOGON DATA and can be used in this exit to get the user logon data and take necessary actions as required by the customer requirement and even LOG_OFF (not recommended by SAP).

STEPS REQUIRED FOR IMPLEMETING THE EXIT

1) Open CMOD(Project maintenance) Transaction.Enter a project name starting with Z.Press enter.

2) Goto Enhancement window by clicking the enhancement button in the application tool bar.

3) Write SUSR0001 in the enhancement column and press enter.

4) Goto Components window(It will show al the exits included in this enhancement), in our case only one Function Exit will be shown.

5) Double click on the Function exit EXIT_SAPLSUSF_001.

The following function source code will be displayed in the function editor

FUNCTION EXIT_SAPLSUSF_001.

*"----


""Lokale Schnittstelle:

*"----


INCLUDE ZXUSRU01.

ENDFUNCTION.

6) Double click on the include ZXUSRU01 .If it will ask to create the include say yes .

7)Write the following code in the include.

DATA W_TEXT(30) TYPE C.

DATA W_DATE(10) TYPE C.

WRITE sy-datum TO W_DATE DD/MM/YYYY.

CONCATENATE ' Date is ' W_DATE INTO W_TEXT.

CALL FUNCTION 'POPUP_TO_INFORM'

EXPORTING

titel = 'Welcome to Paradise !'

txt1 = 'Have A Nice Day'

txt2 = W_TEXT

  • TXT3 = ' '

  • TXT4 = ' '

8)Save the include and activate it .Activate the Project also by going to the menu in CMOD transaction.Now The user exit SUSR0001 has been implemented and is ready to use.

9) Logon to the R/3 system . A dialog box will appear with the message

Welcome to Paradise ! with date .

NOTE: BAPIs like BAPI_USER_GET_DETAIL can also be used to get user info or directly read from tables USR02 etc.

PP User Exit .

This user exit is used in PP and is for u to try

MCP20020 User exit for reading info structure when transferring reqts

it contains function exit

EXIT_SAPMMCP6_020

When planned independent requirements are transferred from SOP to

program data, the data is read at material/plant level as standard. You

can use this user exit to have a greater or smaller number of

characteristics for data selection. In this case, the data is read on a

different level than that in the standard system.

The interface of this user exit corresponds to that of function module

'MC_PG_TRANSFER_PBED', but the info structure and the key fields table

(structure IKEYF) are also transferred. YF). The characteristic

attributes of the characteristics used for data must be transferred to

the user exit in field 'Value' of the key fields table.

For further information, see function module: 'MC_PG_TRANSFER_

Hope this helps

<b>if it helped, you can acknowledge the same by rewarding</b>

regards

dinesh

Former Member
0 Kudos

Hi Ratna,

Let me share my points with u.

Enahancements menas to extend the functionality with out ditrubing the existing functionlality.

Suppose functionality is existing for populate data for PO number only, client wants to populate one more field data then that will write in user exit nothing but enhancement.

Hope this helps you. Reply for queries, shall post the updates.

Regards.

Kumar.