User Exit in ME21N Required
Hi,
Is there any user-exit for ME21N, thru which the below 3 values can be changed?
Goods-Receipt (EKPO-WEPOS)
Inv.Receipt (EKPO-REPOS)
GR-Based IV (EKPO-WEBRE)
Any pointers on this would be appreciated. Thanks in advance.
Rgds,
Bhargav.
Hi,
chk the following userexits..
AMPL0001 User subscreen for additional data on AMPL
LMEDR001 Enhancements to print program
LMELA002 Adopt batch no. from shipping notification when posting
LMELA010 Inbound shipping notification: Transfer item data from
LMEQR001 User exit for source determination
LMEXF001 Conditions in Purchasing Documents Without Invoice Rece
LWSUS001 Customer-Specific Source Determination in Retail
M06B0001 Role determination for purchase requisition release
M06B0002 Changes to comm. structure for purchase requisition rel
M06B0003 Number range and document number
M06B0004 Number range and document number
M06B0005 Changes to comm. structure for overall release of requi
M06E0004 Changes to communication structure for release purch. d
M06E0005 Role determination for release of purchasing documents
ME590001 Grouping of requsitions for PO split in ME59
MEETA001 Define schedule line type (backlog, immed. req., previe
MEFLD004 Determine earliest delivery date f. check w. GR (only P
MELAB001 Gen. forecast delivery schedules: Transfer schedule imp
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MEVME001 WE default quantity calc. and over/ underdelivery toler
MM06E001 User exits for EDI inbound and outbound purchasing docu
MM06E003 Number range and document number
MM06E004 Control import data screens in purchase order
MM06E005 Customer fields in purchasing document
MM06E007 Change document for requisitions upon conversion into P
MM06E008 Monitoring of contr. target value in case of release or
MM06E009 Relevant texts for "Texts exist" indicator
MM06E010 Field selection for vendor address
MMAL0001 ALE source list distribution: Outbound processing
MMAL0002 ALE source list distribution: Inbound processing
MMAL0003 ALE purcasing info record distribution: Outbound proces
MMAL0004 ALE purchasing info record distribution: Inbound proces
MMDA0001 Default delivery addresses
MMFAB001 User exit for generation of release order
MRFLB001
regards,
nagaraj
Similar Messages
-
How to find the exact user exit for our requirement?
Dear Mr. keerthi,
can you please explain me how to find the exact user exit for our requirement?Hi sandip
There is more than one method in which you can check for user-exits.The following method is used very often.
<b>How to find the exact user-exit for your requirement.</b>
1. You can check the user exists using transaction SE85.
2. Repository Information System -> Enhancements -> Customer exits
3. You can search the user-exits by package name.
4. Double click on each exit name to check the function module exits.
<b>The procedure to find the package name.</b>
Execute transaction SE93
Enter the tcode of the transaction for which you want to check the user exit.
Example: if you want to find the user-exit for purchase orders while changing, enter ME22n and press display.
You will get to see the package name
But you need to confirm that the user exit will get triggered at the appropriate event.
( example: you might want some validations to be done ON SAVE of a purchase order)
<b>Checking if the user-exit is getting triggered or not.</b>
1. Open the user exit function module (that you have got in step 4) in Tcode SE37.
2. Click on where used button. In the pop up that immediately appears choose only programs .
3. You will get a list of programs. Double click on the program name.
4. You will get the list of location where this function module user exit is used.
5. Place session break points at each of these location ( at each CALL FUNCTION statement)
6. Now go to your transaction ( say change purchase order tcode:Me22n) and check if the user exit is getting triggered on appropriate event.
regards,
Prasad -
What are the different methods to find the user-exit for any requirement?
Hi Everybody,
What are the different methods to follow to find the user-exit for any requirement?
Thanks & Regards,
Nagaraju MaddiThe following program search all the user exits involved with a T-code:
Selection Text: P_TCODE: Transaction Code to Search
Text Symbols: 001 - Enter the Transaction Code that you want to search through for a User Exit
REPORT z_find_userexit NO STANDARD PAGE HEADING.
*& Enter the transaction code that you want to search through in order
*& to find which Standard SAP® User Exits exists.
*& Tables
TABLES : tstc, "SAP® Transaction Codes
tadir, "Directory of Repository Objects
modsapt, "SAP® Enhancements - Short Texts
modact, "Modifications
trdir, "System table TRDIR
tfdir, "Function Module
enlfdir, "Additional Attributes for Function Modules
tstct. "Transaction Code Texts
*& Variables
DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
DATA : field1(30).
DATA : v_devclass LIKE tadir-devclass.
*& Selection Screen Parameters
SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
SELECTION-SCREEN SKIP.
PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN END OF BLOCK a01.
*& Start of main program
START-OF-SELECTION.
* Validate Transaction Code
SELECT SINGLE * FROM tstc
WHERE tcode EQ p_tcode.
* Find Repository Objects for transaction code
IF sy-subrc EQ 0.
SELECT SINGLE * FROM tadir
WHERE pgmid = 'R3TR'
AND object = 'PROG'
AND obj_name = tstc-pgmna.
MOVE : tadir-devclass TO v_devclass.
IF sy-subrc NE 0.
SELECT SINGLE * FROM trdir
WHERE name = tstc-pgmna.
IF trdir-subc EQ 'F'.
SELECT SINGLE * FROM tfdir
WHERE pname = tstc-pgmna.
SELECT SINGLE * FROM enlfdir
WHERE funcname = tfdir-funcname.
SELECT SINGLE * FROM tadir
WHERE pgmid = 'R3TR'
AND object = 'FUGR'
AND obj_name = enlfdir-area.
MOVE : tadir-devclass TO v_devclass.
ENDIF.
ENDIF.
* Find SAP® Modifications
SELECT * FROM tadir
INTO TABLE jtab
WHERE pgmid = 'R3TR'
AND object = 'SMOD'
AND devclass = v_devclass.
SELECT SINGLE * FROM tstct
WHERE sprsl EQ sy-langu
AND tcode EQ p_tcode.
FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
WRITE:/(19) 'Transaction Code - ',
20(20) p_tcode,
45(50) tstct-ttext.
SKIP.
IF NOT jtab[] IS INITIAL.
WRITE:/(95) sy-uline.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
WRITE:/1 sy-vline,
2 'Exit Name',
21 sy-vline ,
22 'Description',
95 sy-vline.
WRITE:/(95) sy-uline.
LOOP AT jtab.
SELECT SINGLE * FROM modsapt
WHERE sprsl = sy-langu AND
name = jtab-obj_name.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
WRITE:/1 sy-vline,
2 jtab-obj_name HOTSPOT ON,
21 sy-vline ,
22 modsapt-modtext,
95 sy-vline.
ENDLOOP.
WRITE:/(95) sy-uline.
DESCRIBE TABLE jtab.
SKIP.
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE:/ 'No of Exits:' , sy-tfill.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(95) 'No User Exit exists'.
ENDIF.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(95) 'Transaction Code Does Not Exist'.
ENDIF.
* Take the user to SMOD for the Exit that was selected.
AT LINE-SELECTION.
GET CURSOR FIELD field1.
CHECK field1(4) EQ 'JTAB'.
SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN. -
User exit - for ME21N, 22N, 23N - at line item level
Hi,
I want to add new text field to display the description of the MPM(material) in it.
That filed I want to add to the Account Assignment tab at item level.
How to add that field on the screen, I mean any screen exit for this?
and function module to pass the data to that field.
If anybody worked on such problem then pls. let me know.
Thanks in advance.
-- UmeshHi,
These are the user exits for me21n.
AMPL0001
LMEDR001
LMELA002
LMELA010
LMEQR001
M06B0001
M06B0002
M06B0003
M06B0004
M06B0005
M06E0004
M06E0005
ME590001
MEETA001
MEFLD004
MELAB001
MEVME001
MM06E001
MM06E003
MM06E004
MM06E005
MM06E007
MM06E008
MM06E009
MM06E010
MMAL0001
MMAL0002
MMAL0003
MMAL0004
MMDA0001
MMFAB001
Regards
praveen -
HI all,
I want to add a function module when a Purchase order is saved(ME21n), i want to know how to find user exit for ME21n & which user exit to be changed.
I want to call a function module when the user saves the purchase order, please help.
Please also let me know the step to find the user exits.
Thanxs in advance.Hi,
Please check enhancement MM06E005 (SMOD).
Here list of User exit and BADI for ME21N .
Transaction Code - ME21N Create Purchase Order
Enhancement/ Business Add-in Description
USER EXIT
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MEVME001 WE default quantity calc. and over/ underdelivery tolerance
MM06E001 User exits for EDI inbound and outbound purchasing documents
MM06E003 Number range and document number
MM06E004 Control import data screens in purchase order
MM06E005 Customer fields in purchasing document
MM06E007 Change document for requisitions upon conversion into PO
MM06E008 Monitoring of contr. target value in case of release orders
MM06E009 Relevant texts for "Texts exist" indicator
MM06E010 Field selection for vendor address
MM06E011 Activate PReq Block
MMAL0001 ALE source list distribution: Outbound processing
MMAL0002 ALE source list distribution: Inbound processing
MMAL0003 ALE purcasing info record distribution: Outbound processing
MMAL0004 ALE purchasing info record distribution: Inbound processing
MMDA0001 Default delivery addresses
MMFAB001 User exit for generation of release order
MRFLB001 Control Items for Contract Release Order
AMPL0001 User subscreen for additional data on AMPL
LMEDR001 Enhancements to print program
LMEKO001 Extend communications structure KOMK for pricing
LMEKO002 Extend communications structure KOMP for pricing
LMELA002 Adopt batch no. from shipping notification when posting a GR
LMELA010 Inbound shipping notification: Transfer item data from IDOC
LMEQR001 User exit for source determination
LMEXF001 Conditions in Purchasing Documents Without Invoice Receipt
LWSUS001 Customer-Specific Source Determination in Retail
M06B0001 Role determination for purchase requisition release
MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
MEETA001 Define schedule line type (backlog, immed. req., preview)
ME590001 Grouping of requsitions for PO split in ME59
M06E0005 Role determination for release of purchasing documents
M06E0004 Changes to communication structure for release purch. doc.
M06B0005 Changes to comm. structure for overall release of requisn.
M06B0004 Number range and document number
M06B0003 Number range and document number
M06B0002 Changes to comm. structure for purchase requisition release
Business Add-in - BADI
ME_PROCESS_REQ Enhancements for Processing Enjoy PReqs: Internal
ME_PROCESS_PO_CUST Enhancements for Processing Enjoy Purchase Order: Customer
ME_PROCESS_PO Enhancements for Processing Enjoy Purchase Order: Intern.
ME_PROCESS_COMP Processing of Component Default Data at Time of GR: Customer
ME_PO_SC_SRV BAdI: Service Tab Page for Subcontracting
ME_HOLD_PO Hold Enjoy Purchase Orders: Activation/Deactivation
ME_GUI_PO_CUST Customer's Own Screens in Enjoy Purchase Order
ME_DEFINE_CALCTYPE Control of Pricing Type: Additional Fields
ME_COMMTMNT_REQ_RE_C Check of Commitment Relevance of Purchase Requisitions
ME_COMMTMNT_REQ_RELE Check of Commitment Relevance of Purchase Requisitions
ME_PROCESS_REQ_CUST Enhancements for Processing Enjoy PReqs: Customer
ME_PURCHDOC_POSTED Purchasing Document Posted
ME_RELEASE_CREATE BAdI: Release Creation for Sched. Agreemnts with Rel. Docs
ME_REQ_OI_EXT Commitment Update in the Case of External Requisitions
ME_REQ_POSTED Purchase Requisition Posted
ME_TAX_FROM_ADDRESS Tax jurisdiction code taken from address
ME_TRIGGER_ATP Triggers New ATP for Changes in EKKO, EKPO, EKPV
MM_EDI_DELFOR_OUT Enhancements for IDoc Output of SA Releases: Internal
MM_EDI_DESADV_IN Supplementation of Delivery Interface from Purchase Order
MM_EDI_ORDERS_OUT Enhancements for IDoc Output of Purchase Order: Internal
SMOD_MRFLB001 Control Items for Contract Release Order
ME_COMMTMNT_PO_REL_C Check for Commitment-Relevance of Purchase Orders
EXTENSION_US_TAXES Extended Tax Calculation with Additional Data
MEGUI_LAYOUT BAdI for Enjoy Purchasing GUI
ME_ACTV_CANCEL_PO BAdI for Activating the Cancel Function at Header Level
ME_BAPI_PR_CHANGE_01 BAdI: Enjoy BAPIs for Purchase Requisitions (Method Change)
ME_BAPI_PR_CHANGE_02 BAdI: Enjoy BAPIs for Purchase Requisitions (Method Change)
ME_BAPI_PR_CREATE_01 BAdI: Enjoy BAPIs for Purchase Requisitions
ME_BAPI_PR_CREATE_02 BAdI: Enjoy BAPIs for Purchase Requisitions (Method Create)
ME_BSART_DET Change document type for automatically generated POs
ME_CCP_ACTIVE_CHECK BAdI to check whether CCP process is active
ME_CCP_BESWK_AUTH_CH BAdI for authorization checks for procuring plant
ME_CCP_DEL_DURATION Calc. of Delivery Duration in CCP Process (Not in Standard)
ME_CHANGE_CHARACTER Customer-Specific Characteristics for Product Allocation
ME_CHECK_ALL_ITEMS Run Through Items Again in the Event of Changes in EKKO
ME_CHECK_SOURCES Additional Checks in Source Determination/Checking
ME_CIN_LEINRF2R BADI for CIN India - Delivery charges
ME_CIN_LEINRF2V BADI for LEINRF03 excise_invoice_details
ME_CIN_MM06EFKO Copy PO data for use by Country version India
ME_CIP_ALLOW_CHANGE Configuration in Purchasing: Changeability Control
ME_CIP_REF_CHAR Facilitates Reference Characteristics in Purchasing
ME_COMMITMENT_STO_CH BadI for checking if commitments for STOs are active
ME_COMMTMNT_PO_RELEV Check for Commitment-Relevance of Purchase Orders
<b>Reward points</b>
Regards -
Badi & User Exit for ME21N & ME22N
Hi,
My requirement is when a Purchase order is created using ME21n or when a line is added or changed using ME22n, the system should copy the vendors tax jurisdiction to the purchase order line items jurisdiction code. I tried badi (ME_PROCESS_PO_CUST) but could not suceed. Can any one tell me if any badi or user exit available for the same???
Thanks in Advance.hi,
Enhancement/ Business Add-in Description
Enhancement
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MEVME001 WE default quantity calc. and over/ underdelivery tolerance
MM06E001 User exits for EDI inbound and outbound purchasing documents
MM06E003 Number range and document number
MM06E004 Control import data screens in purchase order
MM06E005 Customer fields in purchasing document
MM06E007 Change document for requisitions upon conversion into PO
MM06E008 Monitoring of contr. target value in case of release orders
MM06E009 Relevant texts for "Texts exist" indicator
MM06E010 Field selection for vendor address
MMAL0001 ALE source list distribution: Outbound processing
MMAL0002 ALE source list distribution: Inbound processing
MMAL0003 ALE purcasing info record distribution: Outbound processing
MMAL0004 ALE purchasing info record distribution: Inbound processing
MMDA0001 Default delivery addresses
MMFAB001 User exit for generation of release order
MRFLB001 Control Items for Contract Release Order
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
AMPL0001 User subscreen for additional data on AMPL
LMEDR001 Enhancements to print program
LMELA002 Adopt batch no. from shipping notification when posting a GR
LMELA010 Inbound shipping notification: Transfer item data from IDOC
LMEQR001 User exit for source determination
LMEXF001 Conditions in Purchasing Documents Without Invoice Receipt
LWSUS001 Customer-Specific Source Determination in Retail
M06B0001 Role determination for purchase requisition release
M06B0002 Changes to comm. structure for purchase requisition release
MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
MEETA001 Define schedule line type (backlog, immed. req., preview)
ME590001 Grouping of requsitions for PO split in ME59
M06E0005 Role determination for release of purchasing documents
M06E0004 Changes to communication structure for release purch. doc.
M06B0005 Changes to comm. structure for overall release of requisn.
M06B0004 Number range and document number
M06B0003 Number range and document number
Business Add-in
ME_PROCESS_PO Enhancements for Processing Enjoy Purchase Order: Intern.
ME_PROCESS_COMP Processing of Component Default Data at Time of GR: Customer
ME_PO_SC_SRV BAdI: Service Tab Page for Subcontracting
ME_PO_PRICING_CUST Enhancements to Price Determination: Customer
ME_PO_PRICING Enhancements to Price Determination: Internal
ME_INFOREC_SEND Capture/Send Purchase Info Record Changes - Internal Use
ME_HOLD_PO Hold Enjoy Purchase Orders: Activation/Deactivation
ME_GUI_PO_CUST Customer's Own Screens in Enjoy Purchase Order
ME_FIELDSTATUS_STOCK FM Account Assignment Behavior for Stock PR/PO
ME_DP_CLEARING Clearing (Offsetting) of Down Payments and Payment Requests
ME_DEFINE_CALCTYPE Control of Pricing Type: Additional Fields
ME_COMMTMNT_REQ_RE_C Check of Commitment Relevance of Purchase Requisitions
ME_COMMTMNT_REQ_RELE Check of Commitment Relevance of Purchase Requisitions
ME_PROCESS_PO_CUST Enhancements for Processing Enjoy Purchase Order: Customer
SMOD_MRFLB001 Control Items for Contract Release Order
MM_EDI_DESADV_IN Supplementation of Delivery Interface from Purchase Order
MM_DELIVERY_ADDR_SAP Determination of Delivery Address
ME_WRF_STD_DNG PO Controlling Reminder: Extension to Standard Reminder
ME_TRIGGER_ATP Triggers New ATP for Changes in EKKO, EKPO, EKPV
ME_TRF_RULE_CUST_OFF BADI for Deactivation of Field T161V-REVFE
ME_TAX_FROM_ADDRESS Tax jurisdiction code taken from address
ME_REQ_POSTED Purchase Requisition Posted
ME_REQ_OI_EXT Commitment Update in the Case of External Requisitions
ME_RELEASE_CREATE BAdI: Release Creation for Sched.Agrmts with Release Docu.
ME_PURCHDOC_POSTED Purchasing Document Posted
ME_PROCESS_REQ_CUST Enhancements for Processing Enjoy PReqs: Customer
ME_PROCESS_REQ Enhancements for Processing Enjoy PReqs: Internal
ME_COMMTMNT_PO_REL_C Check for Commitment-Relevance of Purchase Orders
ME_CCP_BESWK_AUTH_CH BAdI for authorization checks for procuring plant
ME_CCP_ACTIVE_CHECK BAdI to check whether CCP process is active
ME_BSART_DET Change document type for automatically generated POs
ME_BAPI_PR_CREATE_02
ME_BAPI_PR_CREATE_01
ME_BAPI_PO_CREATE_02
ME_BAPI_PO_CREATE_01
ME_BADI_DISPLAY_DOC BAdI for Internal Control of Transaction to be Invoked
ME_ACTV_CANCEL_PO BAdI for Activating the Cancel Function at Header Level
MEGUI_LAYOUT BAdI for Enjoy Purchasing GUI
EXTENSION_US_TAXES Extended Tax Calculation with Additional Data
ARC_MM_EKKO_WRITE BAdI: Enhancement of Scope of Archiving (MM_EKKO)
ARC_MM_EKKO_CHECK BAdI: Enhancement of Archivability Check (MM_EKKO)
ME_CCP_DEL_DURATION Calc. of Delivery Duration in CCP Process (Not in Standard)
ME_COMMTMNT_PO_RELEV Check for Commitment-Relevance of Purchase Orders
ME_COMMITMENT_STO_CH BadI for checking if commitments for STOs are active
ME_COMMITMENT_RETURN Commitment for return item
ME_CIP_REF_CHAR Enables Reference Characteristics in Purchasing
ME_CIP_ALLOW_CHANGE Configuration in Purchasing: Changeability Control
ME_CIN_MM06EFKO Copy PO data for use by Country version India
ME_CIN_LEINRF2V BADI for LEINRF03 excise_invoice_details
ME_CIN_LEINRF2R BADI for CIN India - Delivery charges
ME_CHECK_SOURCES Additional Checks in Source Determination/Checking
ME_CHECK_OA Check BAdI for Contracts
ME_CHECK_ALL_ITEMS Run Through Items Again in the Event of Changes in EKKO
ME_CHANGE_OUTTAB Enrich ALV Output Table in Purchasing
ME_CHANGE_CHARACTER Customer-Specific Characteristics for Product Allocation
No.of Exits: 35
No.of BADis: 55
Arunima -
User exit for ME21N for displaying the tax code from custom table
Hi,
I have a requirement, in our system, the inforecord is not maintain for all the material and vendor combination, we have a custom table in which we have maintain the
Compnay code, Pur. Org., Vendor code Tax code, juridiction code
now we want that when a Po is created with ME21 or ME21N the tax code and jurisdiction code should be come from this table and if entry not found in this table then it should search as per the regular process like from last Po or info record. then which user exit we can use for this.
regards,
zafarCLOSE
-
hi everybody
I have added 2 additional fields(zzqty, zzprice) at item level in PO, Ive also added the subscreen in me21N
My requirement is that these 2 fields should be copied from the fields menge and netpr for each line
I have coded the following in the user exit
EXIT_SAPMM06E_016
DATA: ekpo type ekpo.
ekpo = i_ekpo.
ekpo-zzqty = i_ekpo-netpr.
ekpo-zzprice = i_ekpo-netpr.
FREE MEMORY ID 'CUS_AKTYP'.
EXPORT aktyp FROM I_AKTYP TO MEMORY ID 'CUS_AKTYP'.
EXIT_SAPMM06E_018
data: ekpo type ekpo.
move-corresponding ekpo to e_ci_ekpo.
but its not working
can somebody tell me wat im missing?if you can tell me what you want to achieve , i can tell you what to code.
but as of now you can try with the below coding,
EXIT_SAPMM06E_016
DATA: ekpo type ekpo.
ekpo = i_ekpo.
ekpo-zzqty = i_ekpo-netpr.
ekpo-zzprice = i_ekpo-netpr.
EXPORT ekpo FROM ekpo TO MEMORY ID 'SOMEID'.
EXIT_SAPMM06E_018
data: ekpo type ekpo.
import ekpo to ekpo from memory id 'SOMEID'.
"this id is should be same as above
move-corresponding ekpo to e_ci_ekpo. -
User exit for ME21N (Not functional or customer exit)
Hi Guys,
I want to get a user exit for PO as my requirement is to call custom screen before the PO is getting saved.
I have the functional exits and badi's list which will not fulfill my requirement as because on my custom screen i have cancel button.
On clicking the control needs to come back to the me21n second screen with the data entered with out order getting created.
The screen number for the second screen in ME21N is 14.
if i call screen 14 it will work in a user exit where as in customer exit(functional exit) we have limitations with the exporting and importing as so the screen number will not be recognised.
I am able to do the same calling of cust screen in Sales order creation and is sucessfull, the same should happen with PO also.
Probably if the user exit triggers at the time of syntax check i can achive my requirement rather than at save as the call back to the screen will not harm and database commits will not take place.
I also tried with all most of the enahancement points but the call screen statement is not working at any point of time which worked with Sales order exits. So i tried with making the validation fail but still by that time the PO number is getting generated and so if i try to cancel the PO before save and trying to get PO in edit mode but the sequence number is getting missed by by 1.
Please help.
Regards,
Amar.
Edited by: amar srinivas on Feb 11, 2011 10:16 AM
Edited by: amar srinivas on Feb 14, 2011 4:56 PMHi,
You can try it this way.
Check badi ME_PROCESS_PO_CUST , method - CHECK.
This badi/method gets triggered when the "CHeck" button and "SAVE" button is pressed.
It consists of a changing parameter CH_FAILED . Pass X to it when cancel button is hit in your custom screen.
Donot use any commit in this method. Read the documentation before doing it. -
User Exit PO - ME21N/ME22N - Foreign Trade Item
Hi,
I need to change some values in the PO Item (Foreign Trade Item) -> Import tab -> declaration--> Import/Export
The way to do it is via user exit. I need to set Dispatch country (EIPO-SEGAL) = Import /Export).
I found the SAP Enhancement : V50EPROP which has 6 user exits. I tried
EXIT_SAPLV50E_004 but this is only called upon PO creation. Although I put the above logic in EXIT_SAPLV50E_004, it gets cleared off somewhere.
For change mode/create mode, it will hit EXIT_SAPLV50E_005 and EXIT_SAPLV50E_006. But I couldnt change any of the EIPO values.
Has anyone done this before?
Please advice.
SandeepHello Sandip,
I had a same kind of requirement in which i have to update the field "Preference code" from a custom "Z" table through an exit. The exit "XIT_SAPLV50E_004" works fine for Creation mode (me21n). But during change mode it's not getting into the code defined in the include of the component.(it's not triggered.)
I checked the exits suggested by Hinojosa but the first one "EXIT_SAPLV50G_001" doesn't have PO and line item as import criteria and hence that can't be used.
While checking the second exit "XIT_SAPLV50G_002" , I found that it doesn't have export parameter as EIPO table. Which can be used to overwrite the value of Preference code (EIPO-PREFPACOD).
So if your issue has been resolved, could you please suggest how to proceed?
Regards,
Sushanta -
User Exit transaction ME21N and ME22N in the save moment
Hi, all. I need one user exit to transaction ME21N and ME22N for SAVE.
I need name user exit please in the save moment.
Message was edited by:
Martínez Vásquez Rubén Dario
Message was edited by:
Martínez Vásquez Rubén DarioHi,
Please check this user exits.
EXIT_SAPMM06E_012 - Check Customer-Specific Data Before Saving
EXIT_SAPMM06E_013 - Update Customer's Own Data in Purchasing Document
EXIT_SAPMM06E_016 - Export Data to Customer Subscreen for Purchasing Document Item (PBO)
EXIT_SAPMM06E_017 - Export Data to Customer Subscreen for Purchasing Document Item (PAI)
EXIT_SAPMM06E_016 and EXIT_SAPMM06E_017 are the best place to change line item. I used in both places again it depends on your requirement for PBO or PAI.
By the way, what do you mean by actualization?
Regards,
Ferry Lianto
Please reward points if helpful. -
BADI/user exit for ME21N - Warning message for "our reference" field
Dear all,
I have a problem.
In ME21N, I need to show a warning message (message w... ) when user enter an already-used-before input in "Our reference' field (EKKO-UNSEZ).
I've tried in two methods.
1. Using fm EXIT_SAPMM06E_004. But it can only works for Error message. My warning message never shows up.
2. Tried to implement classic BADI ME_PROCESS_PO_CUST, using the PROCESS_HEADER method. Got the break-point spot on, but still didn't show the warning message.
Why is my warning message always got override?
Please advise.
Thanks in advance
AhmadHi Ahmad,
Check the below links:
Unable to put Warning messages in ME21N and ME22N in Exit / BAdI in ECC 6.0
Warning message in me22n check user-exit can't process?
Custome warning message in T. code me51n me52n & me21n , me22n
Regards,
Nisha Vengal. -
User-exit or BADI required for changing Plant-sp.matl status in MM02
Hi Folks,
Our user requirement is when standard price is 0, we should assign value 'Z4' to Plant-sp.matl status(in MRP1 and Costing1 tabsin MM02) . Could any one suggest me a user-exit name or a BADI name to change Plant-sp.matl status in MM02. <REMOVED BY MODERATOR - REQUEST OR OFFER POINTS ARE FORBIDDEN>
Regards,
Ramineni.
Edited by: Alvaro Tejada Galindo on Aug 22, 2008 5:59 PMhi,
u can use it.
u can use this exit also.
MGA00001
EXIT_SAPLMGMU_001
i hav done this coding in this exit and it is working.
not same of ur requirement but try somthing like this.
tables : mara,makt.
data : it_mara type mara occurs 0 with header line,
it_makt type makt occurs 0 with header line,
it_marc type marc occurs 0 with header line,
it_mbew type mbew occurs 0 with header line.
select * from mara into table it_mara .
if it_mara[] is not initial.
select * from makt into table it_makt for all entries
in it_mara where matnr = it_mara-matnr.
endif.
loop at it_makt.
if stext-maktx = it_makt-maktx.
if it_makt[] is not initial.
select * from marc into table it_marc for all entries
in it_makt where matnr = it_makt-matnr.
select * from mbew into table it_mbew for all entries
in it_makt where matnr = it_makt-matnr.
endif.
read table it_marc with key matnr = it_makt-matnr.
if wmarc-werks = it_marc-werks.
read table it_mbew with key matnr = it_makt-matnr.
if wmbew-bwtar = it_mbew-bwtar. " 'VAL_OPEX' or wmbew-bwtar = 'VAL_CAPEX'.
message e001(zgm_msg).
endif.
endif.
endif.
clear it_makt.
clear it_marc.
clear it_mbew.
endloop. -
know some BADI or User Exit for transaction ME21N.
I want to apply the exit of material with transaction MB1B after creating the transfer order.hi,
to find a badi in a perticular transation the following is the code
*& Report ZFINDBADI *
REPORT ZFINDBADI .
*REPORT ZNEGI16 .
TABLES : TSTC,
TADIR,
MODSAPT,
MODACT,
TRDIR,
TFDIR,
ENLFDIR,
SXS_ATTRT ,
TSTCT.
DATA : JTAB LIKE TADIR OCCURS 0 WITH HEADER LINE.
DATA : FIELD1(30).
DATA : V_DEVCLASS LIKE TADIR-DEVCLASS.
PARAMETERS : P_TCODE LIKE TSTC-TCODE,
P_PGMNA LIKE TSTC-PGMNA .
DATA wa_tadir type tadir.
START-OF-SELECTION.
IF NOT P_TCODE IS INITIAL.
SELECT SINGLE * FROM TSTC WHERE TCODE EQ P_TCODE.
ELSEIF NOT P_PGMNA IS INITIAL.
TSTC-PGMNA = P_PGMNA.
ENDIF.
IF SY-SUBRC EQ 0.
SELECT SINGLE * FROM TADIR
WHERE PGMID = 'R3TR'
AND OBJECT = 'PROG'
AND OBJ_NAME = TSTC-PGMNA.
MOVE : TADIR-DEVCLASS TO V_DEVCLASS.
IF SY-SUBRC NE 0.
SELECT SINGLE * FROM TRDIR
WHERE NAME = TSTC-PGMNA.
IF TRDIR-SUBC EQ 'F'.
SELECT SINGLE * FROM TFDIR
WHERE PNAME = TSTC-PGMNA.
SELECT SINGLE * FROM ENLFDIR
WHERE FUNCNAME = TFDIR-FUNCNAME.
SELECT SINGLE * FROM TADIR
WHERE PGMID = 'R3TR'
AND OBJECT = 'FUGR'
AND OBJ_NAME EQ ENLFDIR-AREA.
MOVE : TADIR-DEVCLASS TO V_DEVCLASS.
ENDIF.
ENDIF.
SELECT * FROM TADIR INTO TABLE JTAB
WHERE PGMID = 'R3TR'
AND OBJECT in ('SMOD', 'SXSD')
AND DEVCLASS = V_DEVCLASS.
SELECT SINGLE * FROM TSTCT
WHERE SPRSL EQ SY-LANGU
AND TCODE EQ P_TCODE.
FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
WRITE:/(19) 'Transaction Code - ',
20(20) P_TCODE,
45(50) TSTCT-TTEXT.
SKIP.
IF NOT JTAB[] IS INITIAL.
WRITE:/(105) SY-ULINE.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
Sorting the internal Table
sort jtab by OBJECT.
data : wf_txt(60) type c,
wf_smod type i ,
wf_badi type i ,
wf_object2(30) type C.
clear : wf_smod, wf_badi , wf_object2.
Get the total SMOD.
LOOP AT JTAB into wa_tadir.
at first.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
WRITE:/1 SY-VLINE,
2 'Enhancement/ Business Add-in',
41 SY-VLINE ,
42 'Description',
105 SY-VLINE.
WRITE:/(105) SY-ULINE.
endat.
clear wf_txt.
at new object.
if wa_tadir-object = 'SMOD'.
wf_object2 = 'Enhancement' .
elseif wa_tadir-object = 'SXSD'.
wf_object2 = ' Business Add-in'.
endif.
FORMAT COLOR COL_GROUP INTENSIFIED ON.
WRITE:/1 SY-VLINE,
2 wf_object2,
105 SY-VLINE.
endat.
case wa_tadir-object.
when 'SMOD'.
wf_smod = wf_smod + 1.
SELECT SINGLE MODTEXT into wf_txt
FROM MODSAPT
WHERE SPRSL = SY-LANGU
AND NAME = wa_tadir-OBJ_NAME.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
when 'SXSD'.
For BADis
wf_badi = wf_badi + 1 .
select single TEXT into wf_txt
from SXS_ATTRT
where sprsl = sy-langu
and EXIT_NAME = wa_tadir-OBJ_NAME.
FORMAT COLOR COL_NORMAL INTENSIFIED ON.
endcase.
WRITE:/1 SY-VLINE,
2 wa_tadir-OBJ_NAME hotspot on,
41 SY-VLINE ,
42 wf_txt,
105 SY-VLINE.
AT END OF object.
write : /(105) sy-ULINE.
ENDAT.
ENDLOOP.
WRITE:/(105) SY-ULINE.
SKIP.
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE:/ 'No.of Exits:' , wf_smod.
WRITE:/ 'No.of BADis:' , wf_badi.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'No userexits or BADis exist'.
ENDIF.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'Transaction does not exist'.
ENDIF.
AT LINE-SELECTION.
data : wf_object type tadir-object.
clear wf_object.
GET CURSOR FIELD FIELD1.
CHECK FIELD1(8) EQ 'WA_TADIR'.
read table jtab with key obj_name = sy-lisel+1(20).
move jtab-object to wf_object.
case wf_object.
when 'SMOD'.
SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).
CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
when 'SXSD'.
SET PARAMETER ID 'EXN' FIELD SY-LISEL+1(20).
CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN.
endcase.
to find exits in aperticular transaction run the program using the following code
*& Report ZUSEREXIT *
report zuserexit no standard page heading.
tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
tables : tstct.
data : jtab like tadir occurs 0 with header line.
data : field1(30).
data : v_devclass like tadir-devclass.
parameters : p_tcode like tstc-tcode obligatory.
select single * from tstc where tcode eq p_tcode.
if sy-subrc eq 0.
select single * from tadir where pgmid = 'R3TR'
and object = 'PROG'
and obj_name = tstc-pgmna.
move : tadir-devclass to v_devclass.
if sy-subrc ne 0.
select single * from trdir where name = tstc-pgmna.
if trdir-subc eq 'F'.
select single * from tfdir where pname = tstc-pgmna.
select single * from enlfdir where funcname =
tfdir-funcname.
select single * from tadir where pgmid = 'R3TR'
and object = 'FUGR'
and obj_name eq enlfdir-area.
move : tadir-devclass to v_devclass.
endif.
endif.
select * from tadir into table jtab
where pgmid = 'R3TR'
and object = 'SMOD'
and devclass = v_devclass.
select single * from tstct where sprsl eq sy-langu and
tcode eq p_tcode.
format color col_positive intensified off.
write:/(19) 'Transaction Code - ',
20(20) p_tcode,
45(50) tstct-ttext.
skip.
if not jtab[] is initial.
write:/(95) sy-uline.
format color col_heading intensified on.
write:/1 sy-vline,
2 'Exit Name',
21 sy-vline ,
22 'Description',
95 sy-vline.
write:/(95) sy-uline.
loop at jtab.
select single * from modsapt
where sprsl = sy-langu and
name = jtab-obj_name.
format color col_normal intensified off.
write:/1 sy-vline,
2 jtab-obj_name hotspot on,
21 sy-vline ,
22 modsapt-modtext,
95 sy-vline.
endloop.
write:/(95) sy-uline.
describe table jtab.
skip.
format color col_total intensified on.
write:/ 'No of Exits:' , sy-tfill.
else.
format color col_negative intensified on.
write:/(95) 'No User Exit exists'.
endif.
else.
format color col_negative intensified on.
write:/(95) 'Transaction Code Does Not Exist'.
endif.
at line-selection.
get cursor field field1.
check field1(4) eq 'JTAB'.
set parameter id 'MON' field sy-lisel+1(10).
call transaction 'SMOD' and skip first screen.
*---End of Program -
hi all,
i have to check something BEFORE click on Save button on this tx, so.. i'm looking for the u.exit/exit/badi/etc inside this tx by the program zuserexit..
This program show me a list of exits.. various of them are'nt created yet and some others have no code inside..
Question: to see which user exit i can use, there are another way to enter one by one and clicking on the break-point button?
I need something (userexit/exit/bapi/badi) that works when i click on SAVE button on me21n, but BEFORE all data will be saved..
sorry for my BAD english..
Regards and have a good week!hi fsimionatto !
with your code as a beginning, i made this code
DATA: l_aufnr TYPE aufnr.
FIELD-SYMBOLS: <f_field> TYPE cobl.
DATA: lw_var(18) TYPE c VALUE '(SAPLKACB)COBL'.
ASSIGN (lw_var) TO <f_field>.
l_aufnr = <f_field>-aufnr.
and it'w working fine!
THANKS!
Maybe you are looking for
-
Problems Receiving Emails and some data on WIFI since latest software update.
Problems Receiving Emails and some data on WIFI since latest software update. My blackberry torch will not receive emails on wifi since the latest software update, I've tried numerous wifi networks and several handsets, even had them replaced and r
-
XSQL: How to embed the XML document(s) instead of posting?
Dear all. I'm trying to use XSQL for a self-contained database schema setup. This setup should be able to handle DML (INSERT/UPDATE/DELETE), PL/SQL calls etc and I thought XSQL looks perfect for the job. As such, I wouldn't be using XSQL as a publish
-
"Can't lock iPod" and other problems!!
I'm trying to restore my iPod and on iPod Updater i click restore and it says "Can't lock iPod. Please check if any other applications are using iPod and try again". There are no other applications using the iPod. Please help me!
-
I want to know in which tables the data is saved when saving the expected receipts form. Navigation: Inventory:Transactions:Transaction Open Interface
-
LOV Problem - Top Urgent !!!!!
A table contains of 4 composite primary fields, one of the primary field is a date field. A record group created at design time with the help of above table. This record group is used for LOV, hence in record group query, the select statement has all