Application Development and Automation 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: 
Read only

CUSTOMER EXIT

Former Member
0 Likes
1,176

hELLO GURUS

I AM FOLLOWING THE BOOK OF VERSION ECC4.7 AND MY SYSTEM IS 6.0

PLEASE TEL ME STEP BY STEP PROCEDURE FOR CUSTOMER EXIT

hELLO GURUS

I AM FOLLOWING THE BOOK OF VERSION ECC4.7 AND MY SYSTEM IS 6.0

PLEASE TEL ME STEP BY STEP PROCEDURE FOR CUSTOMER EXIT

5 REPLIES 5
Read only

Former Member
Read only

Former Member
0 Likes
1,095
Read only

Former Member
0 Likes
1,095

Hi Rohan Katyare,

ustomer Exit is a hook and also we have to add our own functionality so we have to write the code in include file and activate that project in CMOD.

Whereas in User Exit ,we are writing the code in SAP namespace. So am thinking that its no need to create project and activating that project for user exit. Is it right? For User Exit also we have to create project please clarify me

User Exits:

-


User exits allow you to add additional functions to the SAP standard.

Programs with user exits contain subroutine calls at certain points in their syntax that are identified by the prefix USEREXIT. The actual user exits are located in an include that has been assigned to a module pool. This is where customers can include any changes (enhancements) that they want to make to the system. These includes are always processed during program flow.

Advantage: In principle, customers can modify anything they want that is found in the include (tables, structures, and so forth).

Disadvantage: SAP cannot check the individual enhancements themselves which often leads to errors in the enhancement process.

User exits (Function module exits) are exits developed by SAP. The exit is implemented as a call to a function module. The code for the function module is written by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.

Customer exits are not available for all programs and screens found in the SAP System. You can only use customer exits if they already exist in the SAP System.

Customer Exit

-


SAP creates customer exits for specific programs, screens, and menus within standard applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.

If you want to enhance the functionality of your SAP System, you should take advantage of the exits available in standard applications. There are two main reasons why you should use exits rather than modifying SAP software yourself. Add-ons attached to exits have the advantage that:

u2022 They do not affect standard SAP source code

When you add new functionality to your SAP System using SAPu2019s exits, you do not alter the source code of standard SAP programs in any way. The code and screens you create are encapsulated as separate objects. These customer objects are linked to standard applications, but exist separately from SAPu2019s standard software package.

u2022 They do not affect software updates

When you add new functionality to your SAP System using SAPu2019s exits, your objects (called customer objects) must adhere to strict naming conventions. When it comes time to upgrade a to a new software release, customer objectsu2019 names ensure that they will not be affected by any changes or new additions to the standard software package.

Customer exits are not available for all programs and screens found in the SAP System. You can only use customer exits if they already exist in the SAP System. You can find more information about locating applications with pre-defined exits in Locating Applications that have Exits

step by step procedure of creating a customer exit

1.Custom date variables greatly enhance BEx Reporting. Letu2019s assume you have an InfoProvider with a characteristic 0CALDAY (Calendar Day) and you want to restrict results of your query to u201Ccurrent month to dateu201D. Scenario: 1. Start by creating a variable for the 0CALDAY InfoObject.

2. Assign u201CProcessing byu201D type u201CCustomer Exitu201D, u201CVariable Representsu201D to u201CIntervalu201D and u201CVariable Entryu201D to u201CMandatoryu201D. Select u201CReady for Inputu201D checkbox if you want a request window for your variable to be presented at runtime (interval values will be filled from your Customer-Exit but a user can still change them).

3.Go to transaction CMOD to create a project for your enhancement (see ref.2). Give a name to the project (1), create (2) and save the project. Then assign an enhancement RSR00001 to your project and

save. (In this step an error message u201CSAP enhancement RSR00001 already belongs to project NAMEu201D may appear. That means an active project with the enhancement RSR00001 already exists. If this is the case, you do not need to create your own project and may terminate this step and go to the step 4). Activate the project.

4. Go to a transaction SE80, display a Function Group XRSR (1,2), open Function Modules (3) and double click on an EXIT_SAPLRRS0_001 (4). A source code for the EXIT_SAPLRRS0_001 function module opens. Double click on a word ZXRSRU01. You arrive to a source code for the Include ZXRSRU01.

5. In the source code for Include ZXRSRU01 insert your code (see sample code below). If some code like DATA: L_S_RANGE TYPE RSR_S_RANGESID. u2026 u2026 u2026 u2026 u2026 u2026 ENDCASE. Already exists in the Include just insert the part of the sample code from the first comment to the last at the end of the existing code but above the ENDCASE statement. Check and Activate.

Code Example: DATA: L_S_RANGE TYPE RSR_S_RANGESID. * Current month to date variable ZCMTD example. WHEN 'ZCMTD'. * you variable name data: ZCMTD_LOW like sy-datum. *defining variable for using as a starting date of the interval ZCMTD_LOW = sy-datum.

*initializing it with the current date ZCMTD_LOW+6(2) = '01'. *replacing last two symbols (day) in the current date with '01'(see ref.1) CLEAR L_S_RANGE. L_S_RANGE-LOW = ZCMTD_LOW. *initializing low interval limit L_S_RANGE-HIGH = SY-DATUM. *initializing high interval limit L_S_RANGE-SIGN = 'I'. *defining interval as inclusive L_S_RANGE-OPT = 'BT'. APPEND L_S_RANGE TO E_T_RANGE. * Current month to date variable ZCMTD example end. ENDCASE. The result of this will be an interval from the first day of the current month till the current system date.

With thanks and regards,

Sravani yendru.

Read only

Former Member
0 Likes
1,095

THANKS