Doubt on User Exit in ME22n
Hi Friends,
I want to create an User Exit to create a Change pointer.
When a change is made to TCode ME22N.
The Change pointer is used to Update EKES Table.
It would be helpfull. If any one can suggest an User Exit Specific to this issue.
Hi Sudhir,
I will suggest you check with this badi ME_PO_PROCESS_CUST .
Regards,
Madhu.
Similar Messages
-
Doubt in user exit for transaction MM03
Hi Friends,
I have a doubt in user-exits. I have to add a button in MM03 which when clicked should open a particular URL taking material no. as the parameter.I have got the function for opening the URL, I just want to know which user exit should I be calling and in what way?Can anyone please give me step by step procedure as I am new in user exits.Thanks in advance....VA01 is a dialog program. The use of WRITE statements in dialog program is really not done.
You will need output your values to existing screen fields or create new ones in SE51.
Sounds like you might want to review dialog prog in general.
Also - the TABLES statement is for database tables. It has nothing to do with internal tables. -
Hi,
I am looking for an user-exit in ME22N transaction. My actual requirement is when I change account assignment category ( EKPO-KNTTP), the confirmation control (EKPO-BSTAE) should be defaulted with some value say 002.
I have noticed user-exit Function modules EXIT_SAPMM06E_007 and EXIT_SAPMM06E_017. There is a table TEKPO in the tables parmater of this FM's. I can see the values in fields TEKPO-KNTTP and TEKPO-BSTAE also. But when I change the values, suppose I set TEKPO_BSTAE = 002, It is not getting reflected in the transaction ME22N.
Can you please guide me, if the user-exits I have chosen are right ones to achieve the functionality or any other values in the user-exits need to be updated. Are there any BADI's for this kind of requirement.
Thanks in advance.
Vishnu PriyaHi Vishnu Priya,
Inside the implementation for method 'IF_EX_ME_PROCESS_PO_CUST~PROCESS_ITEM', use the method im_item->get_header to get the header details, then use method im_item->get_data to get item details. Now, you can pass the new value to the required fields and finally use im_item->set_data to set the values to PO.
You can see the methods available for the associated type of parameter IM_ITEM by double clicking on IF_PURCHASE_ORDER_ITEM_MM.
Make use of available methods to get the required details and proceed accordingly.
Best Regards,
Kumar. -
User Exit for ME22N while saving of PO
Hi all,
i want a USER EXIT for ME22N while saving. i want EKET data.
After checking EKET data, i want to chage EKPO data.
Thanks
pabiHi,
Below Exit you can have access to EKET and EKPO data in the tables paramters before the SAVE
EXIT_SAPMM06E_012
TEKPO: EKPO data
TEKET: EKET data
Enhancement:MM06E005 (Check in SMOD transaction)
Check for one Paramter: I_TRTYP (This is for Create/Change/Display Modes) or You can check on Sy-Tcode = ME22N
Hope this helps
Regards
Shiva -
User Exit in ME22N with version management
Hi Experts,
I have implemented the userexit MM06E005 with FM - EXIT_SAPMM06E_012 . and in Include program i have given the code.
CASE sy-tcode.
when 'ME22N'.
IF SY-UCOMM = 'MECHECKDOC' or sy-ucomm = 'MESAVE'.
If i_ekko-PROCSTAT = '01'.
message 'Please tick the Version Completed in Version Tab' type 'E'.
endif.
ENDIF.
if the user changes in ME22n it will generate the version automatically that time before saving or checking the prog it will show the error message to check the version tab.
It is working fine using this Exit.But,Some of the fields in Item details tab Material data ,Invoice ,Quantity and all not at all generating the version.Some fields if user makes change it is generating version and error.but some fields it is not happening.
If anybody know the userexit to generate the version pl.tell me or tell me the alternate way.
Thanks in advance,
Regards,
NandhaHi Experts,
I have implemented the userexit MM06E005 with FM - EXIT_SAPMM06E_012 . and in Include program i have given the code.
CASE sy-tcode.
when 'ME22N'.
IF SY-UCOMM = 'MECHECKDOC' or sy-ucomm = 'MESAVE'.
If i_ekko-PROCSTAT = '01'.
message 'Please tick the Version Completed in Version Tab' type 'E'.
endif.
ENDIF.
if the user changes in ME22n it will generate the version automatically that time before saving or checking the prog it will show the error message to check the version tab.
It is working fine using this Exit.But,Some of the fields in Item details tab Material data ,Invoice ,Quantity and all not at all generating the version.Some fields if user makes change it is generating version and error.but some fields it is not happening.
If anybody know the userexit to generate the version pl.tell me or tell me the alternate way.
Thanks in advance,
Regards,
Nandha -
Urgent: User exit for ME22N and ME32K transactions
I need to know a user exit(s) for changing Purchase Order and Contract line item fields from EKPO table. Please let me know if you know any. BADIs are also fine if the user exit does not exits. Thanks
Dear AP,
I'm enlisting all the exits :-
Transaction Code - ME22N Change Purchase Order
Exit Name
Description
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
M06B0003
Number range and document number
M06B0004
Number range and document number
M06B0005
Changes to comm. structure for overall release of requisn.
M06E0004
Changes to communication structure for release purch. doc.
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., preview)
MEFLD004
Determine earliest delivery date f. check w. GR (only PO)
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
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
No of Exits: 35
Transaction Code - ME32K Change Contract
|Exit Name|Description |
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
M06B0003
Number range and document number
M06B0004
Number range and document number
M06B0005
Changes to comm. structure for overall release of requisn.
M06E0004
Changes to communication structure for release purch. doc.
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., preview)
MEFLD004
Determine earliest delivery date f. check w. GR (only PO)
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
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
No of Exits: 35
Regards,
Deva. -
Hi frnds doubt in user exit..
Hi frnds..
i hav to write an exit code as per the req can any pne hlp me regarding this...
User Exit assigned the number ranges for Purchase order ranges allotted for each business area whenever Purchase Department creates purchase order.
looking for ur reply.
with regards,
sahaklahi rajesh,
Please check this user exits EXIT_SAPMM06E_017 in enhancement MM06E005 (t/code <b>SMOD</b>).
List of <b>user exits</b> for
Transaction Code - <b>ME21</b> Create Purchase Order
<b>
Exit Name Description</b>
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
M06B0003 Number range and document number
M06B0004 Number range and document number
M06B0005 Changes to comm. structure for overall release of requisn.
M06E0004 Changes to communication structure for release purch. doc.
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., preview)
MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
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
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
LMEKO001 Extend communications structure KOMK for pricing
LMEKO002 Extend communications structure KOMP for pricing
MM06E011 Activation of PReq Lock
No of Exits: 38
Hope this will help.
Cheers
Alfred
Reward with poinst if it is helpful. -
hi experts,
i had google on this but i didnt get proper answer so m posting this so plz give gun shot answer.
what is the differece between USEREXIT_SAVE_DOCUMENT_PREPARE and USEREXIT_SAVE_DOCUMENT.Hello balaji,
The difference is that any check or change to the document can be done in the PREPARE but once you get to the user-exit SAVE should not change anything only record additional information in the process UPDATE.
I hope you help. -
Hi!
Here's our scenario: we wanted our PO to be non-editable when it comes to price when it has already a goods receipt. But right now, the system allows it and no available system messages can suffice the requirement. Is there an available user exit for this?
Thank you.Hi,
Do one thing use the BADI ME_PROCESS_PO_CUST .....in this you have one method PROCESS_ITEM use this and try to pass error message depending on your condition(whether goods reciept happend or not)....
Thanks,
Shailaja Ainala. -
Hi, Could someone help me out with :
1) Specific user exits in SD and MM?
2) What mainly should we know for using user exits while working on SD , MM and FICO modules'?
3)How to find or search for BADI's3) Goto SE18 and you will be able to get the available BADI's. or
You can debug the GET_CLASS_NAME_BY_INTERFACE method of CL_EXITHANDLER class at runtime.
1) The below program is obtained from some previous posts. You can get the list of exits for a particular transaction.
*& Report ZKB_USER_EXIT_LIST
REPORT zkb_user_exit_list NO STANDARD PAGE HEADING.
TABLES: tstc, tadir, modsapt, modact,
trdir, tfdir, enlfdir, tstct.
DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
DATA : hotspot(30).
PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
AT LINE-SELECTION.
GET CURSOR FIELD hotspot.
CHECK hotspot(4) EQ 'JTAB'.
SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
START-OF-SELECTION.
PERFORM get_data.
PERFORM write_list.
* FORM get_data *
FORM get_data.
SELECT SINGLE * FROM tstc
WHERE tcode EQ p_tcode.
CHECK sy-subrc EQ 0.
SELECT SINGLE * FROM tadir
WHERE pgmid = 'R3TR'
AND object = 'PROG'
AND obj_name = tstc-pgmna.
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.
ENDIF.
ENDIF.
SELECT * FROM tadir INTO TABLE jtab
WHERE pgmid = 'R3TR'
AND object = 'SMOD'
AND devclass = tadir-devclass.
SELECT SINGLE * FROM tstct
WHERE sprsl EQ sy-langu
AND tcode EQ p_tcode.
ENDFORM. "get_data
* FORM write_list *
FORM write_list.
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.
ENDFORM. "write_list
Regards
Kathirvel -
hi,
how will transfer data in user-exits?
thanku very much ........
surya.Hi,
Check this,
https://forums.sdn.sap.com/click.jspa?searchID=5794703&messageID=3302505
Thanks. -
User exit in ME22N to change standard fields
Dear all,
I'm trying to change the delivery date from exit EXIT_SAPMM06E_013 but the system doesn't keep my changes. I'm able to change the delivery date in exit EXIT_SAPMM06E_017 but I need to make it from exit 013 because I need know the confirmations from tables XEKES/YEKES.
I'm on release 4.6C and I don't have the chance to use the BADI ME_PROCESS_PO_CUST.
Is there a way to make this from exit 013?
Here is the code I'm trying to use:
DATA : wa_table(100) TYPE c,
t_ett TYPE STANDARD TABLE OF beket,
wa_ett TYPE beket.
FIELD-SYMBOLS: <fs_ett> TYPE ANY TABLE.
IF sy-tcode = 'ME22N'.
wa_table = '(SAPLMEPO)ETT[]'.
ELSEIF sy-tcode = 'ME22'.
wa_table = '(SAPMM06E)ETT[]'.
ELSE.
EXIT.
ENDIF.
ASSIGN (wa_table) TO <fs_ett>.
t_ett[] = <fs_ett>[].
LOOP AT t_ett INTO wa_ett.
IF sy-tcode(4) = 'ME21'.
wa_ett-eindt = sy-datum.
ELSEIF sy-tcode(4) = 'ME22'.
wa_ett-eindt = sy-datum.
wa_ett-updkz = 'U'.
ENDIF.
MODIFY t_ett FROM wa_ett.
ENDLOOP.
<fs_ett>[] = t_ett[].
UNASSIGN <fs_ett>.
Thanks for your help.
ElioHi,
I am facing the same pbm.
I am trying to change PO Order Qty (Menge) based on a formula.
I have tried writting the code at the exits :
EXIT_SAPMM06E_016 and EXIT_SAPMM06E_013
I am also working on REL 4.6c. facing the same pbm. The value does not stay...!!
By now, you must have resolved the pbm.
How did you?
Regards,
remi -
User exit for ME22N in throwing an error message.
Dear Experts,
I have a requirement here :
PO is created, and see it in ME22N ,we see line items. In a line item when we make changes in PO Quantity or value and save it, then Select the line item and Go to -> Environment-> Item changes. It takes to a screen where a new doc no is generated. Whenever we make changes in PO Quantity or value and save and navigate through Go to -> Environment-> Item changes, it generates a doc number.Similarly,it can generate any no.of doc nos for the changes we make.For each change in line item ( in PO Quantity or Value ) it generates each doc number.
My requirement is to restrict the user not to generate more than 3 doc numbers.After 3 doc numbers are generated and user tries to change line item PO or value for another doc no, an error message has to be thrown to stop the user.
Please guide me in this requirement.
Thanks in advance.
Anticipating your early reply.
Thanks,
ranisinHi,
Use change pointers
Function Modules :
1) CHANGE_POINTERS_CREATE
2) CHANGE_POINTERS_READ
3) CHANGE_POINTERS_STATUS_WRITE
4) CHANGE_POINTERS_READ_MODE_SET
5) CHANGE_POINTERS_READ_INFO_GET
Tables :
1) BDCP - Change pointer
2) BDCPS - Change pointer: Status
3) BDCP2 - Aggregated Change Pointers (BDCP, BDCPS)
4) CDPOS - Change document items
5) CDHDR - Change document header
Tcodes :
1) BD61 u2013 Activate change pointers.
2) BD50 u2013 Activate change pointer s for message types.
Hope this helps you.
Thanks and Regards,
Ranjith Nambiar -
BADI/user exit for me22n - disable/grey out field quantity (MEPO1211-MENGE)
Dear all SAP gurus,
When changing PO (ME22N), I need to disable (grey out) the quantity field on item (MEPO1211-MENGE), when all scheduled quantity is already received (EKET-MENGE = EKET-WEMNG).
Have tried using LMEIGICJI and Handle_event method in CL_SCREEN_VIEW_MM. But still doesn't go to the screen that wants to be disabled.
Tried using BADI ME_PROCESS_PO_CUST, but couldn't find how to disable the quantity field.
(IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_ITEM only works for custom field).
Please kindly advise
thanks in advanceHi Ahmad,
No need of ABAP, follow this IMG Path.
Material Management -> Purchasing - Purchase Order -> Define Screen Layout at Document Level
After Executing it . Choose ME22 from list and then choose display icon.
than double click Quantity and Price here uncheck opt. Entry and check display.
save your work.
Hope this works.
Regards
Ahsan -
Doubt on User Exits!!!
Hi,
Suppose if i create a project using CMOD transaction. how can i use that project and where i can use the same.
For ex: i will create a project with the name "ZTEST1" and select one enhancement name, further will implement some code in the respective area. Now i will activate each and every thing.
where and how can i use the project "ZTEST1" in our programs?
Kindly advice...
Thanks in advance.
Ramesh.Hi Ramesh,
The enhancement function modules are already called in standard transactions at some points. You need not and cannot insert them explicitly anywhere in the program.
If you want to call them in your programs then you can do it.
As a standard method, create an enhancement project through transaction CMOD. Select required enhancement. Select the suitable function and write the code in the specified include. Activate the include as well as Project.
Thats it. Nothing else is required.
Automatically your code will be executed whereever the function module is called in the standard transactions.
If your code is not executing at the place you expect, then the identification of exit may be not be correct. Then you have to find different exit to fulfill your requirement.
Reward if the answer is useful.
Regards,
Hema
Maybe you are looking for
-
Date Format is not Working in Cross tab Crystal report 2008
Hi, I have developed an application ASP.Net c# in Framework 3.5 with crystal report 2008 with service pack 5. in my crystal i used cross tab to show the grid records. one of the data having the data type as date time after launching the report, when
-
Hi All, We have a customer running UCCX 8 in HA mode. In the recent past we have been receiving the following syslog error once everyday : SYSLOG: %UC_LIB_DATABASE-1-DB_NOT_IN_SYNC: %[AppID=Cisco Unified CCX Cluster View Daemon We took the
-
I receive files from my boss and I need to edit them using my computer. The problem is that I use Numbers, and he uses Excel. Formulas and functions get lost and get miscontrued during the process, so it inevitably leaves me sending back the file wit
-
Voucher not found in local voucher store.
I am testing Flash Access 2.0. I have some error ouccured the falsh player masage is Starts to get video metadata at Mon Oct 25 18:04:44 GMT+0900 2010 DRMContentData received on Mon Oct 25 18:04:44 GMT+0900 2010 authenticationMethod = anonymous Serve
-
I have tried to print from my MacBook to my HP Photosmart 1215 without consistent success. I'm most likely to get the following error message "GenericClass: waiting for device." I downloaded the latest HPPhotosmart_Installer10.2-10.4.dmg, which event