Custom fields in ME21n ,step by step procedure/weblog ?
I need to add a custom field zz1 to ME21N transaction at header level and make it available for input in the screen. Is there any step by step proceurec/approach which is generic for adding this functionality to any standard transaction?
Rgds,
Ajay
Hi,
Try this..
In ZXM06TOP
DATA: gl_ekko_ci LIKE ekko_ci.
In the FM EXIT_SAPMM06E_006
ekko_ci = i_ci_ekko.
In the FM EXIT_SAPMM06E_007
*transfer values in own structures
move-corresponding i_ekko to gl_ekko_ci.
In the FM EXIT_SAPMM06E_008
E_CI_EKkO = gl_ekko_ci.
if gl_ekko_ci-ZZ ne ekko_ci-ZZ.
e_ci_ekko-ZZ = ekko_ci-ZZ.
e_ci_update = 'X'.
ENDIF.
Please let me know if it works..
Thanks
Naren
Similar Messages
-
Dear Gurus ,
I have added some custom fields in me21n in header & item level through badi . some fields are in standard table (CI_EKPODB )
and other are in Ztable . Every thing is working fine .
Problam is that when i am making a new purchase order through me21n by Copying another purchase order . Custom fields are not copying .
Example: i have a po no : 101 .
two custom field zabc = 123 .
zdef = 345 .
when i am making a new po by adopt(Through Document overview on) this po 101 these custom fields are not coping .
is there any Customizing , exit , Enhaancement . That can Resolve this issue ?
Thanks in advance .
Hemant Gulati(A1).Hi
In BADI 'ME_PROCESS_PO_CUST', try with method PROCESS_ITEM to populate them with the right filters. Check if in MEPOITEM for fields REFBS and REFPS is the PO that you are copying.
I hope this helps you
Regards
Eduardo -
Add customized fields in ME21N item overview.
Hi experts,
Can we insert our own customized fields into ME21N item overview section.
Pls advise.
Thanks and regards,
Simonksh.hi,
Yes, you can do it with the help of ABAP consultant...
Pls check whether you are providing all links to the tables for that customised field...For this all coding is required to be done...
Also check:
MM06E005 - Customer fields in purchasing documents
Its an intensive work...
Hope it helps..
Regards
Priyanka.P -
Custom Fields in ME21N transaction
Hi all,
I have added custom fields on the transaction ME21N using the screen exit in enhancement MM06E005.
Now i need to do validations on these fields even if the user does not come to the screen. So i am using the BADI ME_PROCESS_PO_CUST for the validations.
But this BADI gets triggered only when there is a change in a standard SAP field. If i change the value of the Custom field then the BADI does not get triggered.
So the problem is that once i issue an error message for the custom field in the BADI .. and then change the value in the custom field, the BADI does not get called and hence the error message stays as it is...
Any solutions for this?
thanks,
Ashiq Ali Ratnanieven when we create a custom screen, the user-exits which are getting called from other screens should also get called from custom one. If this is not happeing, then you need to check in configurations where you have created this screen, that whether you have done assignment of screen at right place, not at the header level but at tab level.
-
Maping custom field for Freignt to ECC Pricing Procedure
Hi,
We have a custom field in SRM to store FREIGHT which is to be mapped to a condition type in ECC pricing procedure.
Can anyone help in giving a solution to the same?
Regards,Hi Brian,
Thanks for your help. I have resolved this, and the information that you provided was helpfutul.
I had to create a function module in ECC, modeled after the SAP provided sample FM SAMPLE_INTERFACE_DE_BALE. In addition to this, I had to configure entries in the standard SAP tables TBE24 and TBE34 (event DE_BALE), so that my new function module would be called.
Duane. -
Triggering BAdI on change of customer field in ME21N
Hello,
How can I tell transaction ME21N that relevant field values have been changed?
I'm using BAdI ME_PROCESS_PO_CUST to change several field values in ME21N and ME22N. The BAdI (method PROCESS_ITEM) is called whenever a field changes, which is good.
However, the BAdI is NOT called when a customer field changes.
Of course, I can create a PAI module to catch changes in the customer fields, but how can I notify ME21N that the BAdI has to be called?
Thanks in advance
RolandHi!
Apparently this does not work. However, I implemented BAdI ME_GUI_PO_CUST to create a new customer subscreen and this one works.
Unfortunately the "old" user exit and the "new" BAdI don't work together very well...
best regards
Roland -
Displaying Custom field in shopping cart header
Hi all, I know how to add a field to header and item levels of the shopping cart.
- In the note 672960 it says 'Note that the header fields cannot be displayed for the shopping cart. If you define fields on the header, they can only be filled in BADIs.'
However,
We are able to fill in the name of the shopping cart on the third step, which is also a part of header information. Is there a possibility to add a custom field(the user must be able to fill it) and display it in that screen???Hi
<u>To add custom fields to the shopping cart, please try this process -></u>
<b>Please refer to these links for details -></b>
Re: SC header CUF ?
Re: MAP USer SRM defined fields in backend for PO
Re: HI SRM experts...
Custom fields to a Bid Invitation
Addition of custom fields in Contract and mapping it with the fields in SRM
urgent help request - How to add custom fields to header BID.
Re: Add custom fields to Contract Transaction in SRM 4.0
Custom Fields
custom fields in Carry out sourcing screen..
Custom Fields Not Display In Basic Data In SRM 5.5 Server..
SC : Extended Search on Header Customer field
Re: customer field in 3rd step of shopping cart
Adding fields in shopping cart
Custom Field in the header of Shopping Cart
<b>Please refer to these SAP OSS notes -></b>
<u>Note 458591 - User-defined fields: Preparation and use
Note 672960 - User-defined fields 2
Note 822424 - CUF. Customer fields cannot be changed in the bid
Note 809630 - Customer field in bid invitation and bid - How does it work?
Note 809628 - Table like customer fields from bid invitation in bid
Note 798731 - Bid: Bid Inv. Customer fields not visible
Note 762984 - SRM40-SUS: Implementation of customer enhancement fields</u>
<b>Please go through the documentation of following 3 Business Add-Ins using SE18 transaction.</b>
BBP_BUPA_GET_CUF Customer Fields for Vendor Master Data
BBP_CUF_BADI-Customer Fields. Call-up of User-Defined Screen
BBP_CUF_BADI_2-Customer Fields. Use of Standard Table Control
Hope this definitely help.
Regards
- Atul -
Custom field is needed in the Shopping cart Additional Specifications
Hi Folks,
A Custom field is needed in the Shopping cart Additional Specifications just below 'Notes for Approval'. Any suggestions on this.
Thanks,
GhaneshHi
<b>Please go through the following links, which will definitely help -></b>
Re: Displaying Custom field in shopping cart header
Re: customer field in 3rd step of shopping cart
Re: Custom Screen in Shopping cart
Re: Custom Field in the header of Shopping Cart
Custom field in shopping cart Item Overview - items in Shopping Cart tab
SC : Extended Search on Header Customer field
Regards
- Atul -
Steps for extraction of Custom Fields from the SRM 5.0 to the SAP BI system
Hi Experts,
I am new to the SAP BI. I was asked to publish all the custom fields from table (BBP_PDISC) of the SRM system to the BI System.
Please provide some guidiance (or) provide me with step-by-step procedure for doing the same.
There are around 14 fields in this table and i need to move them to the BI system and later inlcude them in reports.
Let me know if this information is sufficient.
Thanks in advance.
SAPBWIWe are working on the Shopping cart DSO
-
Steps for replicating GR custom field values from EBP to SAP R/3
Dear SRM Gurus,
We wre using SRM 5.0 extended classic scenario..
We are having 3 custom fields for GR in SRM, we want to replicate these values to 3 other standard fields in SAP R/3..
Can you pls tell us the Procedure, Steps and standard objects that has to be changed for replicating the GR field values from SRM to SAP R/3(4.6C).
Thanks in advance,
Chandra Sekhar.Hi
<b>Please go through the following links -></b>
Re: Confirmation screen field to be mapped to backend field
Re: Creating Confirmations in SRM - What is the preferred method
Re: GRN IDOC Transfer to ERP - MBGMCR01 ( 2 IDOCS created)
Re: Problem to send idoc for a Good Receipt created
GR IDOC Number
Re: Idoc error in Goods confirmation - urgent
Re: Delete goods confirmation in SRM3.0
Re: SRM / MM integratuion: goods receipt
IDOC MBGMCR01: CO Ctd-pedido exceeded by 1 UN:
<b>Some useful SAP OSS Notes to refer -></b>
Note 521488 - FAQ: MB_CREATE_GOODS_MOVEMENT
Note 521427 - FAQ: IDocs for goods movements
Note 521488 - FAQ: MB_CREATE_GOODS_MOVEMENT
Hope this will definitely help.
Regards
- Atul -
What are the steps to send sales order custom field from CRM to ECC
Hi Xperts,
We have created a custom field in sales order [ VBAK] and successfully replicate its value from ECC to CRM. But while doing the enhancement to replicate the field value from CRM to ECC [ When the SO is created in CRM ] we are not able to do so.
We used a FM in CRM0_300, but while replicating the SO from CRM to R/3 it is not getting called.
Please help us by providing the steps to do the full enhancement to replicate the custom field of SO from CRM to ECC.
Thanks in Advance.Hi Anjaneyulu,
We are faced with a similar situation as you.
Here is our scenario with the steps that we performed so far:
1. We have added a few custom fields in CRM 7.0 (Ehp1) using AET.
The BDoc BUS_TRANS_MSG has been automatically extended with these custom fields.
2. On ECC side also, same custom fields have been added to VBAK and VBAP, using APPEND STRUCTURE. Fields were added to ADDITIONAL DATA TAB B in VA01 / VA02 transactions.
3. Extended BAPI structures BAPISDITM and BAPISDITMX in both CRM and R/3 Side.
4. As mentioned in the note 1053817, we have implemented BADI CRM_DATAEXCHG_BADI -> Method CRM_DATAEXCH_AFTER_BAPI_FILL in CRM (mapped fields from BDOC to BAPI structures)
5. In the above note, for R/3 BAPI to R/3 API they have given to implement user exit USEREXIT_MOVE_FIELD_TO_VBAP which we found in MV45AFZZ. But in this we are unable to find BAPI Structure to map.
Our issue is, when a sales order is created in CRM, it is getting replicated on ECC. But, only standard fields are getting replicated. The custom fields that we have added are remaining empty on ECC side.
In CRM --> txn SMW01, we can see that the BDOC is populated with custom fields also.
Could you let us know if your issue is solved completely. Are you able to see the value of custom field, in ECC? Did you use AET to add fields in CRM.
Could you please give us the steps that you have done. -
Kindly let me the Know Step by Step Procedure of Table Exits. & Field Exits
Dear Members,
Kindly let me the Know Step by Step Procedure of Table Exits. & Field Exits.
it would be better if u explain by Example....
Hoping for your Response...
Thanks & Warm Regards,
Nitin ChandrawanshiSome examples:
1. Extending Business Content - EXIT_SAPLRSAP_001
data: l_s_icctrcst like icctrcst,
l_s_icctract like icctract,
l_s_icctrsta like icctrsta,
l_tabix like sy-tabix.
case i_isource.
when '0CO_OM_CCA_1'.
loop at c_t_data into l_s_icctrcst.
l_tabix = sy-tabix.
select single * from z0001 where kokrs = l_s_icctrcst-kokrs
and kostl = l_s_icctrcst-kostl.
if sy-subrc = 0.
l_s_icctrcst-zfield1 = z0001-zfield1.
l_s_icctrcst-zfield2 = z0001-zfield2.
modify c_t_data from l_s_icctrcst index l_tabix.
endif.
endloop.
when '0CO_OM_CCA_2'.
when '0CO_OM_CCA_3'.
when others.
exit.
endcase.
2. User Exit after Data loading
(a) Delete old request
REPORT Z_RSSM_START_SECOND_PROCESS_1 .
TABLES: RSREQDONE, " Request-Data
RSSELDONE, " Selection for current Request
RSICCONT. " Request posted to which InfoCube
DATA: L_T_SELDONE LIKE RSSELDONE OCCURS 0 WITH HEADER LINE.
DATA: L_T_ICUBE LIKE RSICCONT OCCURS 0 WITH HEADER LINE.
DATA: L_LOGSYS LIKE RSSELDONE-LOGSYS.
DATA: L_SOURCE LIKE RSSELDONE-SOURCE.
DATA: L_SELDATE LIKE RSSELDONE-SELDATE.
DATA: L_SELTIME LIKE RSSELDONE-SELTIME.
DATA: BEGIN OF L_T_RNR_DEL OCCURS 0,
ICUBE LIKE RSICCONT-ICUBE,
RNR LIKE RSSELDONE-RNR,
END OF L_T_RNR_DEL.
PARAMETER I_RNR LIKE RSREQDONE-RNR.
SELECT SINGLE * FROM RSSELDONE WHERE
RNR = I_RNR.
IF SY-SUBRC <> 0. "new rquest does not exist, wrong rnr !!!
EXIT.
ENDIF.
SELECT * FROM RSICCONT INTO TABLE L_T_ICUBE WHERE
RNR = I_RNR.
IF SY-SUBRC <> 0. "New request is not posted to any IC
EXIT. "nothing will be deleted
ENDIF.
L_SOURCE = RSSELDONE-SOURCE.
L_LOGSYS = RSSELDONE-LOGSYS.
L_SELDATE = RSSELDONE-SELDATE.
L_SELTIME = RSSELDONE-SELTIME.
SELECT * FROM RSSELDONE INTO TABLE L_T_SELDONE WHERE
SOURCE = L_SOURCE AND
LOGSYS = L_LOGSYS.
DELETE L_T_SELDONE WHERE
RNR = I_RNR. "new request will be deleted
DELETE L_T_SELDONE WHERE "delete younger requests
SELDATE > L_SELDATE OR
( SELTIME > L_SELTIME AND
SELDATE = L_SELDATE ).
*Sort
SORT L_T_SELDONE BY SELDATE DESCENDING SELTIME DESCENDING.
REFRESH L_T_RNR_DEL.
LOOP AT L_T_SELDONE. " Requests to be deleted
LOOP AT L_T_ICUBE. " Request existing in InfoCubes
SELECT SINGLE * FROM RSICCONT WHERE
ICUBE = L_T_ICUBE-ICUBE AND
RNR = L_T_SELDONE-RNR. "check if posted to IC's
IF SY-SUBRC = 0.
L_T_RNR_DEL-ICUBE = L_T_ICUBE-ICUBE.
L_T_RNR_DEL-RNR = L_T_SELDONE-RNR.
APPEND L_T_RNR_DEL.
ENDIF.
ENDLOOP.
IF NOT L_T_RNR_DEL[] IS INITIAL. " something found for rnr
EXIT.
ENDIF.
ENDLOOP.
LOOP AT L_T_RNR_DEL.
CALL FUNCTION 'RSSM_DELETE_REQUEST'
EXPORTING
REQUEST = L_T_RNR_DEL-RNR
INFOCUBE = L_T_RNR_DEL-ICUBE
EXCEPTIONS
REQUEST_NOT_IN_CUBE = 1
INFOCUBE_NOT_FOUND = 2
REQUEST_ALREADY_AGGREGATED = 3
REQUEST_ALREADY_COMDENSED = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
open for error-handling
ENDIF.
ENDLOOP.
if it helpful reward point are appreciated -
What is Field Exit--Step By Step procedure..
Hi,
What is Field Exit.
And How to validate a field on any screen using field exit.
what is the Procedure.
Please give me Step by Step Procedure.
Points will be given for straight answers..
Regards,
KiranPlease find below the step by step procedure for field exit :-
There are eight steps to creating a field exit:
Step 1: Determine Data Element
Step 2: Go To Field Exit Transaction
Step 3: Create Field Exit
Step 4: Create Function Module
Step 5: Code Function Module
Step 6: Activate Function Module
Step 7: Assign Program/Screen
Step 8: Activate Field Exit
Step 1: Determine Data Element
Before you can begin adding the functionality for a field exit, you must know the corresponding data element.
An easy way to determine the data element associated to a particular screen field is to:
Go the appropriate screen.
Position the cursor in the appropriate field.
Press F1 for field-level help.
Click on the Technical info pushbutton (or press F9) on the help dialog box.
On this Technical Information dialog box, the data element will be specified if the field is 'painted' from the ABAP/4 Dictionary.
Step 2: Go To Field Exit Transaction
The transaction to create field exits is CMOD.
You can use the menu path Tools -> ABAP/4 Workbench -> Utilities -> Enhancements -> Project management.
From the initial screen of transaction CMOD, choose the Text enhancements -> Field exits menu path.
After choosing this menu path, you will be taken to the field exits screen. From here, you can create a field exit.
NOTE : Even though you use transaction CMOD to maintain field exits, you do not need to create a project to activate field exits.
Step 3: Create Field Exit
From the field exit screen of transaction CMOD, choose the Field exit -> Create menu path.
After choosing this menu path, a dialog box will prompt you for the appropriate data element .
Enter the data element name and click the Continue pushbutton.
Now, you will be able to create the function module associated to the data elements field exit.
Step 4: Create Function Module
You will automatically be taken to the Function Library (SE37) after entering a data element name and clicking the Continue pushbutton.
In the Function module field, a function module name will be defaulted by the system based on the data element specified. This name will have the following convention:
FIELD_EXIT_<data element>
You can add an identifier (an underscore followed by a single character ).
The first function module for a data elements field exit must be created without an identifier.
To create the function module, click on the Create pushbutton, choose menu path Function module -> Create, or press F5.
After choosing to create the function module, you will get the warning: "Function module name is reserved for SAP". This message is just a warning so a developer does not accidentally create a function module in the field exit name range. By pressing Enter, you will be able to go ahead and create the function module.
Before coding the function module, you will have to specify the function modules attributes -- function group, application, and short text.
Step 5: Code Function Module
From the function modules attributes screen, click on the Source code pushbutton or choose the Goto -> Function module menu path to the code of the function module.
Here you will add your desired functionality for the field exit.
Remember that field exits function module will have two parameters -- one importing parameter called "INPUT" and one exporting parameter called "OUTPUT". These parameters will be set up automatically by the system.
You must remember to assign a value to the OUTPUT field. Even if the value does not change, it must be moved from the INPUT field to the OUTPUT field.
Step 6: Activate Function Module
After coding the function module, you must remember to activate it.
Use the Function module -> Activate menu path to activate the function module.
At this point, you can return to the field exit transaction.
You should be able to 'green arrow' back to this transaction.
When you return to the field exit transaction, you will see an entry for the newly created field exit.
At this point, the field exit is global. That is, it applies to all screens that use a particular data element. On any screen that uses the data element, the corresponding field exit function module will be triggered, once it is active.
Also, the field exit will not be triggered yet because it is inactive.
Step 7: Assign Program/Screen
This step is only needed if you want to make a field exit local.
To make a field exit local, select the field exit and click on the Assign prog./screen pushbutton.
In the dialog box , indicate the appropriate program name and screen number.
This information indicates that the field exit is local to the specified screen in the specified program.
In the dialog box, you determine which function module gets executed for the field exit by specifying the identifier in the Fld. Exit field.
If this field is left blank, the function module triggered will be 'FIELD_EXIT_<data element>'.
If a single-character identifier is entered into the field, the function module triggered will be 'FIELD_EXIT_<data element>_<identifier>'.
Step 8: Activate Field Exit
The field exit must be active for it to be triggered by the system.
Activate the field exit by choosing the Field exit -> Activate menu path.
After assigning the field exit to a change request, its status will change to Active and it will be triggered automatically on the appropriate screen(s).
NOTE : In order to activate the field exit the profile parameter abap/fieldexit = YES must be set on all application servers
Regards
Kiran -
Pls send step by step procedure to create generated idoc type in ECC 6.0
Hi
pls send me the step by step procedure In ECC 6.0 Version
1) To create generated idoc type
2) To extended idoc type
3) How we can add structure to custom segments
thanks in advancehi,
check these likns...
ALE/ IDOC
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
ALE/ IDOC/ XML
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://www.thespot4sap.com/Articles/SAP_XML_Business_Integration.asp
http://help.sap.com/saphelp_srm30/helpdata/en/72/0fe1385bed2815e10000000a114084/content.htm
IDOC Convertion
/people/kevin.wilson2/blog/2005/12/07/changing-fields-in-an-idoc-segment
regds,
paras -
Can anyone explain me step by step procedure for creating badi?
hi all,,
Can anyone explain me about badi with step by step procedure with an example like trsn code mm01, xd01 etc.
And what is the significance of badi?
regs
hariHi
Business Add-Ins
Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.
As with customer exits (SMOD/CMOD [Page 40]), 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.
In contrast to customer exits, Business Add-Ins no longer assume a two-system infrastructure (SAP and customers), but instead allow for multiple levels of software development (by SAP, partners, and customers, and as country versions, industry solutions, and the like). Definitions and implementations of Business Add-Ins can be created at each level within such a system infrastructure.
SAP guarantees the upward compatibility of all Business Add-In interfaces. Release upgrades do not affect enhancement calls from within the standard software nor do they affect the validity of call interfaces. You do not have to register Business Add-Ins in SSCR.
The Business Add-In enhancement technique differentiates between enhancements that can only be implemented once and enhancements that can be used actively by any number of customers at the same time.
In addition, Business Add-Ins can be defined according to filter values. This allows you to control add-in implementation and make it dependent on specific criteria (on a specific Country value, for example). All ABAP sources, screens, GUIs, and table interfaces created using this enhancement technique are defined in a manner that allows customers to include their own enhancements in the standard.
A single Business Add-In contains all of the interfaces necessary to implement a specific task. In Release 4.6A, program and menu enhancements can be made with Business Add-Ins. The actual program code is enhanced using ABAP Objects. In order to better understand the programming techniques behind the Business Add-In enhancement concept, SAP recommends reading the section on ABAP Objects
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.
u can find BADI's in different ways...
1>First go to any transaction->iN THE menu bar SYSTEM->STATUS->Get the program name ->double click->u will go to the program attached to the tcode.Now search term will be CALL CL_EXITHANDLER.Now u will get list of BADI'S available..
2>Goto SE24->Give class name as CL_EXITHANDLER->Display->double click on get_instance mathod->Now u will go inside the method->Now put break point on the cl_exithandler.Now go to any transaction code and pass dat..U will see that it will be stopped on the break point which u set on the cl_exithandler...In the exit name u can find list of badi's attached to the tcode..
There are multiple ways of searching for BADI.
Finding BADI Using CL_EXITHANDLER=>GET_INSTANCE
Finding BADI Using SQL Trace (TCODE-ST05).
Finding BADI Using Repository Information System (TCODE- SE84).
1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System->Status. Double click on the program name. Once inside the program search for CL_EXITHANDLER=>GET_INSTANCE.
Make sure the radio button In main program is checked. A list of all the programs with call to the BADIs will be listed.
The export parameter EXIT_NAME for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter INSTANCE will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name.
2. Start transaction ST05 (Performance Analysis).
Set flag field "Buffer trace"
Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)
Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session.
Push the button "Deactivate Trace".
Push the button "Display Trace".
The popup screen "Set Restrictions for Displaying Trace" appears.
Now, filter the trace on Objects:
V_EXT_IMP
V_EXT_ACT
Push button "Multiple selections" button behind field Objects
Fill: V_EXT_IMP and V_EXT_ACT
All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.
So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA
3. Go to Maintain Transaction (TCODE- SE93).
Enter the Transaction VD02 for which you want to find BADI.
Click on the Display push buttons.
Get the Package Name. (Package VS in this case)
Go to TCode: SE84->Enhancements->Business Add-inns->Definition
Enter the Package Name and Execute.
Here you get a list of all the Enhancement BADIs for the given package MB.
The simplese way for finding BADI is
1. chooes Tcode Program & package for that Tcode.
2. Go to Tcode se18
3. Press F4
4. search by package or by program.
http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm
and
http://help.sap.com/saphelp_nw04/helpdata/en/eb/3e7cf7940e11d295df0000e82de14a/frameset.htm
Badihttp://help.sap.com/saphelp_erp2005/helpdata/en/73/7e7941601b1d09e10000000a155106/frameset.htm
http://support.sas.com/rnd/papers/sugi30/SAP.ppt
http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/abapindx.htm
http://members.aol.com/_ht_a/skarkada/sap/
http://www.ct-software.com/reportpool_frame.htm
http://www.saphelp.com/SAP_Technical.htm
http://www.kabai.com/abaps/q.htm
http://www.guidancetech.com/people/holland/sap/abap/
http://www.planetsap.com/download_abap_programs.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
/people/thomas.weiss/blog/2006/04/03/how-to-define-a-new-badi-within-the-enhancement-framework--part-3-of-the-series
/people/thomas.weiss/blog/2006/04/18/how-to-implement-a-badi-and-how-to-use-a-filter--part-4-of-the-series-on-the-new-enhancement-framework
http://esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
http://esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
http://esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
http://esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
http://esnips.com/doc/365d4c4d-9fcb-4189-85fd-866b7bf25257/customer-exits--badi.zip
http://esnips.com/doc/3b7bbc09-c095-45a0-9e89-91f2f86ee8e9/BADI-Introduction.ppt
http://help.sap.com//saphelp_470/helpdata/EN/eb/3e7cee940e11d295df0000e82de14a/frameset.htm
sample code for Purchase requisition
BAdI Name: ZPUR_RFQ (Implementation name) Purchase Requisitions
Definition Name: ME_REQ_POSTED
Interface Name : IF_EX_ME_REQ_POSTED
Implementing Class: ZCL_IM_PUR_REQ
Method : POSTED
METHOD if_ex_me_req_posted~posted .
DATA : v_mtart TYPE mtart.
DATA l_s_eban TYPE ueban.
LOOP AT im_eban INTO l_s_eban.
IF l_s_eban-estkz NE 'B'.
CLEAR v_mtart.
SELECT SINGLE mtart INTO v_mtart FROM mara WHERE matnr = l_s_eban-matnr.
IF v_mtart EQ 'ZERS' OR v_mtart EQ 'FHMI' OR v_mtart EQ 'UNBW'.
MESSAGE e000(zm_msg) WITH 'You are not allowed' 'to create PR for stock items'.
ENDIF.
ENDIF.
IF l_s_eban-knttp NE 'F' OR l_s_eban-pstyp NE '9'.
IF l_s_eban-knttp NE 'A'.
IF ( l_s_eban-pstyp NE '9' AND l_s_eban-pstyp NE 'D' ) AND l_s_eban-matnr EQ
space.
MESSAGE e000(zm_msg) WITH 'You cannot create' 'a PR without material number'.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
ENDMETHOD.
<b>Reward points for useful Answers</b>
Regards
Anji
Maybe you are looking for
-
Can you now have multiple Itunes accounts sharing content on one computer?
Hi - I was trying to find this information on line but cannot. The last "big" Itunes update (11.2?) prevented multiple Itunes accounts from sharing content on one computer. Well, you can, but with consequences. For example, my husband purchased a mo
-
Best Practice for Handling Timeout
Hi all, What is the best practice for handling timeout in a web container? By the way, we have been using weblogic 10.3 thanks
-
IPhoto '11 Crash-Please Help!
I've been trying all the tips from the various fora for the last week and nothing is working. Can someone please help??? Here's my crash report: Process: iPhoto [51601] Path: /Applications/iPhoto.app/Contents/MacOS/iPhoto Identifie
-
Doc reversed, Clear FI doc manually_MR8M
Dear All, I have posted the invoice to diff vendor, So i cancelled the inv in mr8m & when i saved the doc its giving the mas as ** doc reversed,clear FI doc manually** What exactly it means ? Now again i need to post the invoice to diff vendor, Pls l
-
Firstly, I really like the new reminders in iOS 7. However, I noticed that apple reminders do not disappear from "all" and "missed" view when dismissed from "today" view of notification center by marking the circle by the reminder. it requires me to