Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Need help...

Former Member
0 Likes
734

Hi Experts,

Can any one tell me how to create a userexit for a purchase order.

Thanks

Raj

5 REPLIES 5
Read only

Former Member
0 Likes
683

hello,

i can give an overview.

1. u must first start with some requirement. u must know the application program name SAPMM06E (purchase order)

2. then u must search if there exists an enhancement for ur requirement. u can do global search to find it out. in <b>SMOD</b> u can know more about this exit.

3. then u must implement it in <b>CMOD</b> by creating a project.

reward if useful...

Read only

Former Member
0 Likes
683

COZF0001 Change purchase req. for externally processed operation

COZF0002 Change purchase req. for externally procured component

M06B0001 Role determination for purchase requisition release

M06B0002 Changes to comm. structure for purchase requisition release

MCP20010 OTB check in the purchase order

MM06E004 Control import data screens in purchase order

SAPLMEWP Customer exit for processing of purchase orders via BAPIs

SDALE001 Change vendor for purchase orders from sales order

V45E0001 Update the purchase order from the sales order

WVLB0010 Enhancements for FM for splitting purchase orders

regards

vivek

reward points if this helps

Read only

Former Member
0 Likes
683

Hello,

Go for BADI's

Follow the below steps to find out what all BADI's are called when you press any button in any transaction.

1) Goto se24 (Display class cl_exithandler)

2) Double click on the method GET_INSTANCE.

3) Put a break point at Line no.25 (CASE sy-subrc).

Now

4) Execute SAP standard transaction

5) Press the required button for which you need to write an exit logic, the execution will stop at the break point.

6) Check the values of variable 'exit_name', it will give you the BADI name called at that time.

7) This way you will find all the BADIs called on click of any button in any transaction.

Regs,

Venkat Ramanan N

Read only

former_member404244
Active Contributor
0 Likes
683

Hi raj,

u won't create any userexit but u will implement the userexit.SAP already provided the userexits.

to find out user exit for purchase orders.

path

goto tcodeME21->SYSTEM->STATUS->Double click on the program name->goto attributes of the program->Get the package(here it is ME).Now go to SMOD give the package name it will list all the available userexits.Now select the proper exit.Now goto CMOD create a project and assign the userexit in the components and activate the userexit.Now the userexit will work for u.

available userexits for ME package are

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

Read only

Former Member
0 Likes
683

hi raj,

u have to use the existing userexit, for this first u have to find out the user exit in the main programme of purchaseorder,

1.In se91 give the transaction codeof purchase order,

2.Know the programme and package from it.

3.Search the key word 'call-customer exit' in the main programme in se38.

4.In that exit there will be a function module with the import and export parameters.

5.Look at the parameters are they useful i mean, they fulfill ur requirements,

6.Then go into FM,there will be an include programme in side the function module.

7.Double click on the Include program, to create it, and code the requirement there.(check whether the parameters satisfy ur requirements.

8.Go to SMOD to atuvate the user exit, b4 activating u have to check with test data and activate.

9.Then u go for CMOD to transfer the user exit from developingsystem to the client system by grouping them

regards,

GANESH