Activate Customer Exit
I have created a customer exit which appears to be working fine when I test it, however when I use the variable in a query, it appears as if it is not populating the variable correctly.
I have activated the code in the include ZXRSRU01, and the project.
Is there anything else I need to activate in order to get this to work??
Any guidance on the process required to create a BW Customer exit from start to stop would be appreciated, as I am sure that I am missing something simple.
thanks in advance for any assistance!
Hi Richard,
The <b>BREAK POINT</b> we mean when accessing background jobs such as <i>Query Selection</i> is not by simply putting a RED DOT using SE38 or SE80.
The technique is to put an <b>ENDLESS</b> loop inside your EXIT like this one:
<i>Data : iCtr Type i.
iCtr = 1.
Whle iCtr = 1.
EndWhile.
</i>
Now, when the code runs, you will notice a long running program using TCODE SM51. Select it and click menu <i>Program/Mode->Debugging</i>
You will see that the program could not get out of the unending loop. Just change the value of variable iCtr = 2 at run time and you will be able to debug your user exit.
Hope I have helped and if i did, please grant points...
--Jkyle
Similar Messages
-
Code to 2 DSO fields in 'Customer Exit'
Hello,
For my Customer Exit code, I want to read 2 fields (BEG_FORPER & END_INPER) from DSO 'ZHRPY_O50' & append them to 'Customer Exit' variable 'ZACTDATE'.
Could someone help me with this code?
Thanks!TABLES: /BIC/AZHRPY_O5000.
DATA: BEGIN OF INTERNAL_TABLE OCCURS 0,
BEG_FORPER TYPE /BIC/AZHRPY_O500-BEG_FORPER,
END_INPER TYPE /BIC/AZHRPY_O500-END_INPER,
END OF CRM_SALO00.
SELECT /BIC/ZBEG_FORPER /BIC/ZEND_INPER
INTO INTERNAL_TABLE
FROM /BIC/AZHRPY_O0500
ENDSELECT.
Make minor syntax check to the above code and that will read the data from the activate table and put it into internal table. Now you need the code to read from internal table and place it in customer exit variable.
DATA: L_S_RANGE LIKE RRRANGESID OCCURS 0 WITH HEADER LINE.
CLEAR l_s_range.
Look at INTERNAL_TABLE.
l_s_range-low = INTERNAL-TABLE-BEG_FORPER .
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
l_s_range-HIGH = INTERNAL-TABLE-BEG_END_INPER .
APPEND l_s_range TO e_t_range.
ENDLOOP.
Check the syntax and make the necessary changes.
thanks.
Wond -
Error Message : " No value could be determined for Customer Exit Variable "
Hello BI Experts ,
I have created a "ZYTD_PERIOD" Customer Exit Variable Interval Mandatory and ready for input check mark removed.
The reference character is '0FISCPER' .
I want to have YTD figures when the user enter single Fiscal Year Period for variable 0P_FPER.
So I have written below code in SE37 : EXIT_SAPLRRS0_001 and include program : ZXRSRU01
==================================================================
case i_vnam.
WHEN 'ZYTD_PERIOD'.
IF I_STEP = 2.
LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE WHERE VNAM = '0P_FPER'.
CLEAR L_S_RANGE.
L_S_RANGE-LOW0(4) = LOC_VAR_RANGE-LOW0(4).
L_S_RANGE-LOW+4(3) = '001'.
L_S_RANGE-HIGH = LOC_VAR_RANGE-LOW.
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'BT'.
APPEND L_S_RANGE TO E_T_RANGE.
EXIT.
ENDLOOP.
ENDIF.
===================================================================
After that I use this 'ZYTD_PERIOD' variable in the query .
Also I have used the variable 0P_FPER in another structure.
When I execute the query by entering the value of 0P_FPER as 010.2009 or any other value ,
I am getting below error message ,
*No value could be determined for variable ZYTDPERIOD*_
Below is details of this Error message ,
Note that I have proper Master and Text data for 0CO_AREA and 0COMP_CODE loaded into BI.
=======================================================================
Diagnosis
This error diagnosis is specific only to the variables 0P_FVAEX or 0P_CTPCA !
Termination message BRAIN 632 appears:
Could not determine value for variable 0P_FVAEX (or 0P_CTPCA).
System Response
1. Operation method of SAP-Exit-Variables 0P_FVAEX or 0P_CTPCA
With queries from the CO application, both SAP-Exit-Variables look for an entry for 'controlling area'. With this controlling area from the selection screen, the SAP-Exit-Variables program reads the attributes for InfoObject 0CO_AREA (controlling area).
With queries from the FI application, the SAP Exit Variable 0P_FVAEX looks for an entry for 'company code'. With this company code from the selection screen, the SAP Exit Variables program reads the attributes for InfoObject 0COMP_CODE (Company Code).
0P_FVAEX determines the fiscal year variant (attribute 0FISCVARNT) from the attributes for 0CO_AREA (CO queries) or 0COMP_CODE (FI queries). 0P_CTPCA determines the currency type of the profit center local currency (attribute 0CURTP_PCA) from the attributes for 0CO_AREA.
2. Cause of Error
The attributes for the controlling area (InfoObject 0CO_AREA) or company code (InfoObject 0COMP_CODE) were not loaded into the BW system, or the attributes for the controlling area are not active in the BW system.
Check whether this is the cause of the error in your BW system. Display the contents of table /bi0/mco_area or /bi0/mcomp_code using transaction se16.
Application CO:
Check whether the attributes 'fiscal year variant' (field FISCVARNT) and 'profit center local currency currency type' (field CURTP_PCA) are filled in the 'A' version (field OBJVERS) for the selected controlling area. If the fiscal year variant in the OBJVERS = 'A' is empty, then the error is with variable 0P_FVAEX. If the currency type of the profit center's local currency in OBJVERS = 'A' is empty, then the error is with variable 0P_CTPCA.
Application FI:
Check whether or not the attribute 'fiscal year variant' (field FISCVARNT) is filled in the 'A' version (field OBJVERS) for the selected controlling area. If the fiscal year variant is empty in OBJVERS= 'A', then the error is with variable 0P_FVAEX.
Procedure
Using InfoSource 0CO_AREA, load the attributes for the controlling area or company code into your BW system.
Afterwards, activate the attribute changes in your BW system. To do this, use transaction rsa1, path 'Tools > Hierarchy/Attribute changes', functions button 'InfoObject list'. Choose InfoObject 0CO_AREA or 0COMP_CODE from this list, and activate the attribute changes.
=====================================================================================
Is there any special settings needed before writing BEx Customer Exit ?
I have already created a project in CMOD and assinged a proper RSR00001
and EXIT_SAPLRRS0_001 and project is active.
Any help please ....
Regards ,
AmolMy Code is as below ,
case i_vnam.
WHEN 'ZYTD_PERIOD'.
IF I_STEP = 2.
LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE WHERE VNAM = '0P_FPER'.
CLEAR L_S_RANGE.
L_S_RANGE-LOW0(4) = LOC_VAR_RANGE-LOW0(4).
L_S_RANGE-LOW+4(3) = '001'.
L_S_RANGE-HIGH = LOC_VAR_RANGE-LOW.
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'BT'.
APPEND L_S_RANGE TO E_T_RANGE.
EXIT.
ENDLOOP.
ENDIF.
ENDCASE. -
Integration of customers and vendors- customer exit for renaming
We are planning to use customers for capacity reservation functionality and vendors for subcontracting in APO.
Due to this, we will need Vendors and Customers in APO.
Currently some plants are using same number range for customers and vendors.
So, we will have to rename either customer number or vendor number.
In such situation, do you recommend renaming customer number or Vendor number?
Do you see impact of renaming customer or vendor in above processes?
Can you please e-mail me which customer exit I should use and steps that should be followed for renaming?
Thanks,
SriniYour problem:
Different location types with the same name or number in the external system. For example, a customer and a supplier both have the number 1000. This problem occurs especially with vendor and customer numbers.
You can do the following:
described in SAP Note 458914.
Activate BAdI Implementation for Location Prefix
Procedure
1. Access the activity using one of the following navigation options:
SAP SCM Menu Tools Customizing IMG Execute Project SAP Reference IMG SAP Implementation Guide SCM Basis Integration BAdIs for Specific Applications Location and Business Partner BAdI: Inbound Processing for Location
Transaction Code SPRO
2. In the Business Add-Ins: All Implementations for Definition SMOD_APOCF001 dialog box, go to the Defined filters table and select the suitable implementation for your problem situation, for example:
Field Name Entry Value
Bus. add-in implementation name APOCF001_TYPEDIF
Implementation short text Locations of different type with similar names
3. Choose Change.
4. Confirm the warning message.
5. On the Business Add-In Builder: Change Implementation APOCF001_TYPEDIF screen, choose Activate business add-in implementation.
6. In the Prompt for transportable Workbench request dialog box, enter a workbench request and press ENTER.
7. Choose the Back pushbutton (F3) twice. -
Hi all,
can any one clearly explain me the diff between user exits & customer exits.....
points will b rewarded .....
Thank You.
Regards,
Prashanth.Hi Prashanth Polsani ,
Difference between user exits & customer exits:
User exit - A user exit is a three character code that instructs the system to access a program during system processing.
SXX: S is for standard exits that are delivered by SAP. XX represents the 2-digit exit number.
UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number
Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAPs standard business applications without having to modify the original applications. SAP creates customer exits for specific programs, screens, and menus within standard R/3 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.
The following document is about exits in SAP :-
The R/3 enhancement concept allows you to add your own functionality to SAPs standard business applications without having to modify the original applications.
SAP creates user exits for specific programs, screens, and menus within standard R/3 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.
Types of Exits
There are several different types of user exits. Each of these exits acts as hooks where you can attach or "hang" your own add-ons.
Menu Exits
Menu exits add items to the pulldown menus in standard SAP applications. You can use these menu items to call up your own screens or to trigger entire add-on applications.
SAP creates menu exits by defining special menu items in the Menu Painter. These special entries have function codes that begin with "+" (a plus sign). You specify the menu items text when activating the item in an add-on project.
Screen Exits
Screen exits add fields to screens in R/3 applications. SAP creates screen exits by placing special subscreen areas on a standard R/3 screen and calling a customer subscreen from the standard screens flow logic.
Function Module Exits
Function module exits add functions to R/3 applications. Function module exits play a role in both menu and screen exits.
When you add a new menu item to a standard pull down menu, you use a function module exit to define the actions that should take place once your menu is activated.
Function module exits also control the data flow between standard programs and screen exit fields. SAP application developers create function module exits by writing calls to customer functions into the source code of standard R/3 programs.
These calls have the following syntax:
CALL CUSTOMER-FUNCTION 001.
Field Exits
Field exits allow you to create your own programming logic for any data element in the Dictionary. You can use this logic to carry out checks, conversions, or business-related processing for any screen field. Example: The data element BBBNR identifies a companys international location number. You might want to set up your R/3 System so that all international location numbers are larger than 100.
The field exit concept lets you create a special function module that contains this logic.
You assign the special function module to the data element BBBNR. You then assign the module to any programs and screens in which users can add new international location numbers. When you activate your field exit, the system automatically triggers your special routine whenever a user enters a company location number.
In 4.6c, you can use "RSMODPRF" program to create field exits.
An example of a user exits :-
MODULE user_exit_0001 INPUT
CASE okcode.
WHEN 'BACK OR EXIT'.
CASE sy-dynnr.
WHEN '100'.
SET SCREEN 0.
LEAVE SCREEN.
WHEN '200'.
Note that you can write any code that satisfy your needs. ****
But in this case, this was wrote as a sample code for reference sake. ****
And you can test it. ****
SET SCREEN 100.
LEAVE SCREEN.
ENDCASE.
ENDCASE.
As with customer exits two different views are available:
In the definition view, an application programmer predefines exit points in a source that allow specific industry sectors, partners, and customers to attach additional software to standard SAP source code without having to modify the original object.
In the implementation view, the users of Business Add-Ins can customize the logic they need or use a standard logic if one is available.
USER-EXITS can be used only one time.
Ex:- if your assigning a USER-EXIT to a project in (CMOD), then you can not assign the same to other project.
These r the following web-sites which may find helpful to u :
http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec079f5db911d295ae0000e82de14a/frameset.htm
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec079f5db911d295ae0000e82de14a/frameset.htm
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sappoint.com/abap/userexit.pdfUser-Exit
http://www.planetsap.com/userexit_main_page.htm
http://www.easymarketplace.de/userexit.php
*****Pls reward points if u find this useful
cheers,
gyanaraj -
Hi experts ,
i am confusing user exit and customer exit plz give good diffrence and where we use these exits
thanks and advanceHi,
User exit - A user exit is a three character code that instructs the system to access a program during system processing.
SXX: S is for standard exits that are delivered by SAP. XX represents the 2-digit exit number.
UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number
Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAPs standard business applications without having to modify the original applications. SAP creates customer exits for specific programs, screens, and menus within standard R/3 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.
The program for transaction VA01 Create salesorder is SAPMV45A
If you search for CALL CUSTOMER-FUNCTION i program
SAPMV45A you will find ( Among other user exits):
CALL CUSTOMER-FUNCTION '003'
exporting
xvbak = vbak
xvbuk = vbuk
xkomk = tkomk
importing
lvf_subrc = lvf_subrc
tables
xvbfa = xvbfa
xvbap = xvbap
xvbup = xvbup.
The exit calls function module EXIT_SAPMV45A_003
Development
Creating a Project to include the enhancement
1. Go to transaction CMOD and create a project.
2. Enter a description for the project. Then, click on the pushbutton Enhancement Assignments in the Application Toolbar.
3. Enter the name of the enhancement and Save.
4. Go to Components.
Creating Custom Include for ANLU
The screen shown below will appear, showing all the enhancement components under the assignment AIST0002. Double-click on the name of the Include Structure to create it.
Create the include structure with three new fields, as required. Then, save and activate it.
Develop the subscreen and the program
Go to transaction SE80. For the function group XAIS, create a new subscreen 9000.
Create it as subscreen.
Then, go to the Layout of the screen and create three new fields from Database table ANLU.
Drag the fields in the screen body and place them.
Then, save and activate the screen and come back to screen flow editor.
Create the PAI module to add validation for field Location 2, as required .
Activate the whole function group and come out.
Write code in the Function Exits to synchronize the programs
Now, code has to be written in the function modules EXIT_SAPLAIST_002 and EXIT_SAPLAIST_003 so that data flows to and fro between the main SAP program and custom subscreen program. For that, go back to transaction CMOD and change the function exits.
Write code in the function module EXIT_SAPLAIST_002 called once at the beginning of the transaction:
Write code in EXIT_SAPLAIST_003 to pass the data from the subscreen to SAP main program.
Then, activate everything the whole project and come out.
Complete the configuration to link the subscreen
The development portion is complete. Now, linking of the subscreen has to be done with the subscreen area of the main program. In most of the cases, this linking can be done in the enhancement itself. But, here, requirement is a bit different. It is done by configuration using SPRO.
Assets are created under Asset class. And for each asset class, there is a layout assigned to it. For a layout, there are multiple tab pages assigned to it. And, for each tab page, there are multiple screen groups/field groups assigned.
Here, the requirement is to create these three custom fields in the tab page General of asset master screen ( AS01/AS02/AS03/AS91).
Determine the Layout
To achieve this, first of all, we need to find out which layout is assigned to asset class 1000.For that, go to transaction AOLK( information has to be obtained from functional consultant).Select the Asset Class 1000 and click on folder General Assignment of Layout.
Here, for Asset class 1000, for all the user groups, tab layout SAP is assigned. Since layout SAP cannot be changed, it has to be copied and manipulated to include our screen group. Later, the new layout has to be assigned over here.
Create new tab layout
Go to transaction AOLA. Copy the tab layout SAP to create another layout, say, YSUB.
System will copy all the settings and will inform you about that.
Select your newly created layout and double-click on the folder Tab page titles.
You want to put your custom fields in the tab page General. So, select this tab page entry and double-click on the folder "Position of Groups".
Here, all the field groups currently residing in the tab-page General are shown. Add an entry for your newly created fields.
Select the group box from the list. An entry will come with U padded with the custom subscreen prepared by you.
Then, save and come out.
Assign the new Layout to Asset Class
Now, go to tcode AOLK and assign tab layout YSUB for asset class 1000.
Save and come out.
Test the Exit
Everything is over. Now, go to transaction code AS01/02/03 or AS91 to deal with an asset of asset class 1000. You will see your new fields added to the screen. Add values to them save. Then, enter into the tcodes again to see whether the values entered by you are being displayed or not.
Please check these links for more information.
http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
http://www.sapdevelopment.co.uk/enhance/enhancehome.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
Customer exit and User Exit
User Exit Vs Customer Exit
Regards,
Priyanka. -
Hello All,
When user executes the report, BW throws variable screen. Now I wanted to set dynamic default value in the variable screen. Take an instance, if user execute report in Mar05, CALMONTH variable should be having default value Feb05 (Previous month). I know that it can be done using Customer exit. But I never wrote as of now. Could you please throw light on following .
1. Explain the complete procedure to create a customer exit?
I really appreciate if you send in sample code for similar functionality as well.
Thanks in advance,
Harsh.Hello
I am facing an issue on User exit usage. I am doing following steps.
1. Dragging Calander year/month characteristic.
2. Define a varaible (Technical Name: ZCALMONTH) with Customer exit as processing by and Single value with entry "Optional" field.
3. Go in CMOD and oepn EXIT_SAPLRRS0_001.
4. Open include "ZXRSRU01".
5. Write following code and activate it.
data: l_s_range type rsr_s_rangesid.
data: l_help(8) type c.
case 'i_vnam'.
when 'ZCALMONTH'.
clear: l_s_range.
l_help = sy-datum. "actual day
l_help+6(2) = '01'. "first of month
l_help = l_help - 1. "previous month
l_s_range-low = l_help(6).
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
append l_s_range to e_t_range.
endcase.
After doing all above steps, variable default value remains blank. Please let me know if i am wrong or missing any step.
Thanks -
User or customer exit for ME21N
Hi all,
I have to make a check before saving the Purchase order thru ME21N. Is there any user exit or customer exit available to do this check? Plz clarify.
Regards,
SteveHi
Use the BADI ME_PROCESS_PO_CUST
see the sample code and the doc for BADI
BAdI Name: ZCHECK_PO_LINE_ITEM (Implementation name) PO Account assignment
Definition Name: ME_PROCESS_PO_CUST
Interface Name : IF_EX_ME_PROCESS_PO_CUST
Implementing Class: ZCL_IM_BADIN_ACCOUNT_ASSGN
Method : PROCESS_HEADER
METHOD if_ex_me_process_po_cust~process_header .
DATA : re_data TYPE mepoheader.
*get the item data
CALL METHOD im_header->get_data
RECEIVING
re_data = re_data.
re_header = re_data.
IF ( re_data-bsart NE 'ZOC' AND re_data-bsart NE 'ZPC' ).
IF ( re_data-bsart <> 'ZIC' AND re_data-bsart <> 'UB' ).
IF re_data-bukrs NE '1001'.
MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'Use only Sipchem Company'
'Code for External Procurement'.
ENDIF.
ENDIF.
ENDIF.
ENDMETHOD.
Method : PROCESS_ITEM
METHOD if_ex_me_process_po_cust~process_item .
DATA: v_menge TYPE bamng, " PR Quantity
v_statu. " PR Status
DATA : re_data TYPE mepoitem,
re_data1 TYPE mepoaccounting,
re_accountings TYPE purchase_order_accountings ,
header TYPE purchase_order_accounting.
*get the item data
CALL METHOD im_item->get_data
RECEIVING
re_data = re_data.
IF ( re_header-bsart NE 'ZOC' AND re_header-bsart NE 'ZPC' ).
IF re_header-bsart EQ 'ZRL'.
IF re_data-konnr EQ space.
MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'You cant create a Release order'
'without a reference to Outline Agreeement'.
ENDIF.
ENDIF.
IF ( re_data-banfn EQ space AND re_data-anfnr EQ space ).
MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'You can create a Purchase order'
'only with reference to a PR or RFQ'.
ENDIF.
IF re_data-knttp NE 'K' AND re_data-pstyp NE '9' .
IF syst-cprog EQ 'RM_MEPO_GUI'.
IF re_data-uebto IS NOT INITIAL OR
re_data-uebtk IS NOT INITIAL OR
re_data-untto IS NOT INITIAL.
MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'You cant change delivery settings'.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDMETHOD.
DEFINING THE BADI
1) execute Tcode SE18.
2) Specify a definition Name : ZBADI_SPFLI
3) Press create
4) Choose the attribute tab. Specify short desc for badi.. and specify the type :
multiple use.
5) Choose the interface tab
6) Specify interface name: ZIF_EX_BADI_SPFLI and save.
7) Dbl clk on interface name to start class builder . specify a method name (name,
level, desc).
Method level desc
Linese;ection instance methos some desc
8) place the cursor on the method name desc its parameters to define the interface.
Parameter type refe field desc
I_carrid import spfli-carrid some
I_connid import spefi-connid some
9) save , check and activate adapter class proposed by system is
ZCL_IM_IM_LINESEL is genereated.
IMPLEMENTATION OF BADI DEFINITION
1) EXECUTE tcode se18.choose menuitem create from the implementation menubar.
2) Specify aname for implementation ZIM_LINESEL
3) Specify short desc.
4) Choose interface tab. System proposes a name fo the implementation class.
ZCL_IM_IMLINESEL which is already generarted.
5) Specify short desc for method
6) Dbl clk on method to insert code..(check the code in AAA).
7) Save , check and activate the code.
Some useful URL
http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf
http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm
http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm
Now write a sample program to use this badi method..
Look for BBB sample program.
AAA
data : wa_flights type sflight,
it_flights type table of sflight.
format color col_heading.
write:/ 'Flight info of:', i_carrid, i_connid.
format color col_normal.
select * from sflight
into corresponding fields of table it_flights
where carrid = i_carrid
and connid = i_connid.
loop at it_flights into wa_flights.
write:/ wa_flights-fldate,
wa_flights-planetype,
wa_flights-price currency wa_flights-currency,
wa_flights-seatsmax,
wa_flights-seatsocc.
endloop.
BBB
*& Report ZBADI_TEST *
REPORT ZBADI_TEST .
tables: spfli.
data: wa_spfli type spfli,
it_spfli type table of spfli with key carrid connid.
*Initialise the object of the interface.
data: exit_ref type ref to ZCL_IM_IM_LINESEL,
exit_ref1 type ref to ZIF_EX_BADISPFLI1.
selection-screen begin of block b1.
select-options: s_carr for spfli-carrid.
selection-screen end of block b1.
start-of-selection.
select * from spfli into corresponding fields of table it_spfli
where carrid in s_carr.
end-of-selection.
loop at it_spfli into wa_spfli.
write:/ wa_spfli-carrid,
wa_spfli-connid,
wa_spfli-cityfrom,
wa_spfli-deptime,
wa_spfli-arrtime.
hide: wa_spfli-carrid, wa_spfli-connid.
endloop.
at line-selection.
check not wa_spfli-carrid is initial.
create object exit_ref.
exit_ref1 = exit_ref.
call method exit_ref1->lineselection
EXPORTING
i_carrid = wa_spfli-carrid
i_connid = wa_spfli-connid.
clear wa_spfli.
<b>Reward points for useful Answers</b>
Regards
Anji -
Activate Customer data tab using ME_PROCESS_PO_CUST
Hi all,
how to activate the exit tab using BADI ME_PROCESS_PO_CUSTHi Ester,
Please check this thread. They also talked about alternative solution using user-exit MM06E005 for custom screen enhancement as well.
ME21N - PO Enhancement using BADI
Hope this will help.
Regards,
Ferry Lianto -
BW Customer Exit EXIT_SAPLRRS0_001
I am trying to limit the values in the selection screen for a BW report using the BW customer exit EXIT_SAPLRRS0_001. I have created a custom table to store values to limit the selection. Unfortunately when coding for i_step = 2 I can only populate the field in the selection screen but the user is still able to click the multiple values button and see all values and not just the ones the limited to their user ID. How can I limit this selection so the user cannot select any value but only the ones corresponding to their ID in the custom table ? Also how can I de-activate the second text box in the selection so no range can be input ? This is for setting up security for reporting. Any help would be very much appreciated.
to control the kind of input selection options displayed in the selection screen you have to configure and choose between different variables you create in the Bex.
look for options in the Bex variable creation for single value selection only.
in the customer exit.. stop at I_STEP = 3 and check if user input is correct .. else error out.
If you can predict the correct user entries the user should make.. then you rather make this variable "not available for selection" and fill it in user exit yourself so the security is not breached. This way user cannot tamper with the values you fill in background. But he can filter further later in the query navigation.
Thanks
Sharan -
Hello CATS Experts,
we are using TX CAPP to approve our timesheets based on WBS elements. Problem: Every user who has access to CAPP is able to approve all timesheets.
We like to activate a customer exit, which should check before approval if the user is allowed to approve the particular timesheet.
I have activated the BADI "BADI_CATS_APPROVAL" but it seems the badi is not triggered in TX CAPPS.
So can anybody help me to identifiy the correct BADI?
Thank you very much in advance.
Kind regards
AxelHi,<br>
CATS user exits are an important tool to customize the functionality of the cross application time sheet. There are 13 of them (release 46B). You can access them via IMG - Cross application components - Time sheet - Customer specific modifications - Create SAP enhancements for the time sheet. Here is a short overview on what they are called and what they do.
CATS0001 (Set up worklist): This one defines a worklist in the upper part of the CATS screen
CATS0002 (Supplement recorded data): Here you can add values to customer defined additional fields or even modify the data entered by the user
CATS0003 (Validate recorded data): This one is to check entries for whatsoever
CATS0004 (Deactivate functions on the interface): CATS got a lot of buttons. Here you can get rid of the ones you don't need.
CATS0005 (Customer field enhancements): You can add fields to CI_CATSDB here to later on use to display or enter additional data
CATS0006 (Validate entire time sheet): Mainly serves to validate the hours entered if you don't use HR
CATS0007 (Subscreen on Initial screen): Customer popup, defines data valid for the entire time sheet(row)
CATS0008 (Determine recipients for the approval workflow): You can connect CATS to a standard workflow so that superiors can approve times entered before they are transferred (HR, CO, PS...)
CATS0009 (User-Defined Text Fields in the Data Entry Section): You got two 40 character text fields in the data entry part you can fill with this exit - display only
CATS0010 (Display User-Defined Fields in the Worklist): Same as above for the worklist
CATS0011 (Customer-Defined Functions): Add your own functions to the menu
CATS0012 (Customer Subscreen): Define CATS header
CATP0001 (Determine Target Hours): Define your own target hours
[Check this blog|http://it.toolbox.com/wiki/index.php/Setup_the_CATS_-_Cross_Application_Time_Sheet]
[Other useful link|http://www.integratedcg.com/pdfs/FI2004_1.pdf]
Good luck<br><br>
Thanks,
Amosha
<br><br>"Known is a drop & unknown is an OCEAN!" -
Hi I need to implement one customer exit EXIT_SAPLWRPL_001 for replenishment program with t-code wrp1.Pls can any one tell me the step by step procedure how i need to implement and activate the exit.Is it mandatory to create project in cmod? If yes how can i fing the enhancement to where this exit belongs?I required detailed description.Pls help me
Moderator message: please don't ask for step by step guidance, do your own research for available information before asking.
Edited by: Thomas Zloch on Nov 17, 2010 1:00 PMYes, you need to create a project in CMOD.
To find the enhancement, go to transaction SMOD, and do a search (CtrlF). Open up All Selections (ShiftF9), paste EXIT_SAPLWRPL_001 into Component Name, which then returns WRPL0001, which is the exit/enhancement that you must implement.
When you create the project in CMOD, you must assign this enhancement to your project. In the function module, double-click on the include name to create it. Inside, you can include your code with references to the parameters of the function. -
Hierchies and hierchies node with customer exit?
hi friends,
what scenerio we use hierchies and hierchies node variable with customer exit ?
Thanking u
suneel.Hierarchy variables represent hierarchies. You can use them wherever
hierarchies can be selected.
Hierarchy node variables represent a node in a hierarchy. You can use them as
an alternative to hierarchy nodes as fixed values for restricting a characteristic.
If you use a hierarchy node variable, you can make selections by hierarchy
node when you use the query.
The Customer Exit processing type for variables enables you to determine
values for variables by means of a function module exit. The function
module used is EXIT_SAPLRRS0_001.
You create a project in transaction CMOD by selecting the SAP
enhancement RSR00001 and assigning this to the enhancement project.
Activate the project.
WHEN 'HIERARCHY'. " Hierarchy variable
CLEAR L_S_RANGE.
L_S_RANGE-LOW = 'MY HIERARCHY'. " hierarchy name
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE.
-> Only dependents of hierarchy 'MY HIERARCHY'
WHEN 'HNODE'. " Hierarchy node variable
CLEAR L_S_RANGE.
L_S_RANGE-LOW = 'DEPT1'. " Node name
L_S_RANGE-HIGH = '0HIER_NODE'. " InfoObject
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE.
-> Node 'DEPT1', that cannot be posted to
WHEN 'HNODEVAL'. " Hierarchy node variable
CLEAR L_S_RANGE.
L_S_RANGE-LOW = 'LEAVE1'. " node name (node is a leaf)
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
APPEND L_S_RANGE TO E_T_RANGE.
-> Node 'LEAVE1' (leaf)
Regards
Naga -
SAP Customer Exit - Customer Namespace (i.e. /ABC/)
Hi ABAP Experts,
The question I would like to ask is when taking advantage of a SAP customer exit, can you assign the work to a customer namespace (i.e. /ABC/) ?
The problem seems to be that we want the majority of our custom development in our customer reserved namespace i.e. /ABC/. Yet, to activate a customer exit, the ABAP code follows the old "Z" standard. For example, customer exit EXIT_RMMR01RS_003 has the include ZXM08U03. To activate this exit, one would create the include ZSM08U03 and include customer code. Unfortunately, the include ZSM08U03 can't be assigned to a package with /ABC/.
Any help would be greatly appreciated.
Thanks,
Jayi dont think so. the reserved name spaces are for specific vendor products, while exits are for all customers.so exits would not be able to use a reserved name space.. but within that exit ZXM08U03 you can create another include using /ABC/ name space
-
User Exit / Functional Exit / Screen Exit /Customer Exit
Dear all,
Can anybody explain me about the User Exit / Functional Exit / Screen Exit /Customer Exit and give me the step by step procedure.I want to know more plese reply me.Hi,
Exits are basically the hooks whcih SAP has provided to add your own code. There are two types of Exits:
1. Customer exits: Implemented as Function Modules within z includes. Anybody can change it and no access key is required.
2. User Exit: Implemented as subroutines within includes (any include except y or z includes). You need access for the specific include and then you can any subroutine (user exit) within that Include.
BADIs are the enhanced version of user exits where the same logic is implemented via classes and object (OOP)
Enchancement point is the latest once introduces with ECC6.0 . Not very sure about that but you can change it without any access key.
Please go through the following link which will help you understand the exits in a much better way:
http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec07a25db911d295ae0000e82de14a/content.htm
http://www.sap-img.com/abap/what-is-the-difference-between-smod-and-cmod.htm
http://sap.niraj.tripod.com/id21.html
http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/frameset.htm
http://www.sap-img.com/ab038.htm
User Exits.
http://www.erpgenie.com/sap/abap/code/abap26.htm
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sapgenie.com/abap/code/abap26.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
http://www.easymarketplace.de/userexit.php
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sappoint.com/abap/userexit.pdfUser-Exit
customer exits
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f1a7e790-0201-0010-0a8d-f08a4662562d
Menu Exit.
http://www.sappoint.com/abap/spmp.pdf
http://www.sappoint.com/abap/userexit.pdf
http://www.sapdevelopment.co.uk/enhance/mod_sapmenu.htm
http://www.sapdevelopment.co.uk/enhance/enhancehome.htm
USER EXIT
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sapgenie.com/abap/code/abap26.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
http://www.easymarketplace.de/userexit.php
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sappoint.com/abap/userexit.pdfUser-Exit
http://www.sap-img.com/ab038.htm
http://help.sap.com/saphelp_46c/helpdata/en/64/72369adc56d11195100060b03c6b76/frameset.htm
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci982756,00.html
Field Exit
If you are in 4.7 and up follow this
1. Run report RSMODPRF
2. Run on the selection screen
3. In list Field Exit > Create
4. Give your data element
5.System will generate the FM FIELD_EXIT_XXXXX
6. Activate it.
7. Select your field exit and assign to your program and screen
8. Select again .. Field exit > Activate
If you are in version below 4.7
1. CMOD
2. Go to >Text enhancment > Field exit
then follow the same step from 3 onwards as given above.
Menu Exit
Procedure for Creating MENU Exits.
1) To get into Area Menu Maintenance Screen Type SE43 T.Code in Command
Line.
2) In Area Menu Paramenter type 'S000' (S triple Zero)
3) Then Press Change Icon in Application Tool Bar. Then It may ask for
Access Key [or] it may display "Specify Processing mode" window. If it ask
for the Access Key Check for the availability of OSS Note and apply to open
Standard SAP Menu to include MENU Exits. Otherwise, if it display "Specify
Processing mode" window with Three Push Button. In which select "Change" and
proceed further.
4) Then it will display "Information" window with the following information
"Caution : The Original Language of the structure is German (editing lang. :
English) ". Then press "Enter Key to proceed further.
5) Then you will get into "Edit Area Menu S000".
6) for eg:- Expand Tools Menu.
7) Then Press ABAP Workbench <Icon>.
8) Then you will get into ABAP Workbench Menu Tree.
9) Then Expand Utilities Menu.
10) In the last line you will find one MENU EXIT Provision to include your
own menu. "Node Text Not Found" This text can be change by double Clicking
that. There you can find the T.Code. Here for Eg:- "+DW4".
11) for eg: - Here change the Text to "Sample Menu Exit" and then note down
the T.Code "+DW4".
12) Then Save with Change Request Number and come out of Transaction SE43.
13) Then Goto Transaction SE93.
14) Then type T.Code "+DW4" and press Create.
15) Then proceed further to create transaction called "+DW4".
I hope this could help you in Creating Menu Exit...
Creating menu exits
http://help.sap.com/saphelp_nw04/helpdata/en/c8/19762743b111d1896f0000e8322d00/content.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/83/7a18cbde6e11d195460000e82de14a/frameset.htm
Regards,
Satish
Maybe you are looking for
-
Building Site Collections in SharePoint Online
Hello all, Please forgive me for this very basic question, but I was not able to find the info online. Background info: I have a great deal of experience with SharePoint administration on-prem but not much experience with SharePoint Online. My curre
-
How to add multiple like/unlike buttons and users comments?
I want to create a horizontal scrolling website with a set of images, like a film strip. Under each image I want the user to input a comment and click like/unlike under each photo. I want that all users see others' comments and the like/unlike counte
-
One thing I do not like about the JavaFX EventHandler is all the anonymous classes that need to be created. This messes up the way the code looks and I heard that creating all these anonymous classes adds to the total number of classes that get loade
-
Program RCCLTRAN is locking the changes of the Production Orders
Hello, I am encountering an issue, the standard program RCCLTRAN which read production order and create idocs are locking the changes made in APO. The message specifies: "Changes to Order 1XXXX are not transferred". May I know if there is a User Exit
-
Movies to ipod and screen problem.
I gave my husband an Ipod touch for Christmas . Is there a way, legally, to put one of his DVD films onto it for use when travelling ? Does he need other software ? Also, after he has taken the ipod out of itunes his computer screen flashes on and of