2007 Jul 12 4:15 PM
Dear All,
When I create service PO with the following step:
1. Create a purchase request (PR) with an item which item category ('D' - Service)
2. Input a Service number / External service no. in item's details
3. Create a purchase order (PO) with ref to that PR
4. Input an outline agreement number into the PO item
5. Copy service line item(s) to PO<b> only if </b>service number / External service no. are covered by the Outline agreement number.
I want know how to make a checking by customer exit in ME21N at step 5?
Thanks,
Well
2007 Jul 12 5:21 PM
Hi
Check the following Exits and BADI's for the ME21N tcode
Enhancement
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
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
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
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
Business Add-in
ME_PROCESS_REQ_CUST Enhancements for Processing Enjoy PReqs: Customer
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: Custome
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_PURCHDOC_POSTED Purchasing Document Posted
SMOD_MRFLB001 Control Items for Contract Release Order
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)
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_DEFINE_CALCTYPE Control of Pricing Type: Additional Fields
ME_CHANGE_OUTTAB Enrich ALV Output Table in Purchasing
ME_CHANGE_CHARACTER Customer-Specific Characteristics for Product Allocation
ME_CCP_DEL_DURATION Calc. of Delivery Duration in CCP Process (Not in Standard)
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
ME_CHECK_ALL_ITEMS Run Through Items Again in the Event of Changes in EKKO
ME_COMMTMNT_REQ_RE_C Check of Commitment Relevance of Purchase Requisitions
ME_COMMTMNT_REQ_RELE Check of Commitment Relevance of Purchase Requisitions
ME_COMMTMNT_PO_REL_C Check for Commitment-Relevance of Purchase Orders
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
<b>Reward points for useful Answers</b>
Regards
Anji
2007 Jul 12 5:21 PM
Hi
Check the following Exits and BADI's for the ME21N tcode
Enhancement
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
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
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
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
Business Add-in
ME_PROCESS_REQ_CUST Enhancements for Processing Enjoy PReqs: Customer
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: Custome
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_PURCHDOC_POSTED Purchasing Document Posted
SMOD_MRFLB001 Control Items for Contract Release Order
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)
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_DEFINE_CALCTYPE Control of Pricing Type: Additional Fields
ME_CHANGE_OUTTAB Enrich ALV Output Table in Purchasing
ME_CHANGE_CHARACTER Customer-Specific Characteristics for Product Allocation
ME_CCP_DEL_DURATION Calc. of Delivery Duration in CCP Process (Not in Standard)
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
ME_CHECK_ALL_ITEMS Run Through Items Again in the Event of Changes in EKKO
ME_COMMTMNT_REQ_RE_C Check of Commitment Relevance of Purchase Requisitions
ME_COMMTMNT_REQ_RELE Check of Commitment Relevance of Purchase Requisitions
ME_COMMTMNT_PO_REL_C Check for Commitment-Relevance of Purchase Orders
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
<b>Reward points for useful Answers</b>
Regards
Anji
2007 Jul 13 2:57 AM
Hi Anji,
Can you suggest one for me to have checking at step 5?
BR,
Well
2007 Jul 13 3:16 AM
Hello Neil,
You can try enhancement - MM06E005 and this enhancement has mutiple FM ,
so you could try for Function module ending 17 or 12
Thanks
Seshu
2007 Jul 13 4:32 AM
Hi Seshu,
Your answer is very helpful! Thanks!
But I still cannot solve my problem, because I need to check:
Service number (ESLL-SRVPOS)
External service number (ESLL-EXTSRVNO)
when having outline agreement(EKPO-KONNR), both 17 and 12 cannot find table ESLL.
Did you know where can I get that table?
Thanks
Well
2007 Jul 13 4:49 AM
You can see the data in EKBE table
EKBE contains EBELN as well SRVPOS Fields..
but i am not sure how you are going to get the data,i have seen all user exits,but i did not find out both EKPO as well ESLL structure
See below are few user exits related ESLL ,but there is no EKPO or EKKO table
EXIT_SAPLMLSK_001 Set Account Assignment in Service Line
EXIT_SAPLMLSP_001 *** As of 4.0 in Standard SAP System *** Formula Calculati
EXIT_SAPLMLSP_030 User Exit: Fill ESLL Structure Before Checks (After Entry)
EXIT_SAPLMLSP_031 Check ESLL Datat After Checking
EXIT_SAPLMLSP_040 Transfer of Data to Detail User Screen
EXIT_SAPLMLSP_043 User Exits for Data Transfer in Mass Changes
Thanks
Seshu
2007 Jul 13 6:07 AM
hI,
Use SMOD transaction to maintain them -
1.MM06E005
2. MM06E007
3. MM06E008
You can try exit_sapmm06e_012
EXIT_SAPMM06E_013
<b>Reward points</b>
Regards
2007 Jul 16 7:16 AM
Hi Sechu,
I have try to use EXIT_SAPLMLSP_040:
Since it has I_ESLL and I_COMSRV which contains the outline agreement number (KONNR)
However, I get some error when activite the enhancement - SRVDET:
Screen SAPLXMLU 0299 must be an Include screen (screen error)
Do you know how to fix it?
BR,
Well
2007 Jul 16 7:23 AM
Hi Kiran,
Do you know which BAdi I can use to check the service line level input?
Thanks!
Well
2007 Jul 16 7:33 AM
hi well
try this ME_PROCESS_PO_CUST, it's good documented BADI.
2007 Jul 19 7:01 AM
Dear Seshu,
I am fixed the screen error by just change it to a subscreen...
However, this user exit (EXIT_SAPLMLSP_040) is just for create user screen on tabstrip of service detail screen.
I am trying to raise an Error message in that exit, it will terminate ME21N by the Error message. Do you know how to make it return to ME21N after an Error message...
I try to set screen to 500, 210...etc. but it seems make the program hung after leave screen. Any idea? Thanks a lot!
Cheers,
Well
2007 Sep 21 9:59 AM
Hi,
I am facing one problem which is similar to urs.If you have the answer please reply.
I am having three fields under customer data tab in PR. i want to copy these three fields to PO.When PR gets copied to PO.
2009 Jul 01 10:03 AM
Hi well,
i have same case,
can you tell us, what the solution is?
Thanks,
2009 Jul 01 10:18 AM
Hi,
You can use the exit EXIT_SAPMM06E_016 this can be used to fill Item level custom fields, the parameter I_REBAN contains PR data.
Regards,
Sai
2009 Jul 01 10:24 AM
Hi Sai,
i was use EXIT_SAPMM06E_016,
but its still not working to get PO Services line item, when creating PO
do you have another solution?
Thanks,
2009 Jul 01 10:26 AM
Hi,
You need to follow the below construct, in the exit EXIT_SAPMM06E_012:
mmpur_business_obj_id tekpo-id. " Item reference
mmpur_metafield mmmfd_cust_01.
mmpur_message 'E'
MSGCLASS
MSGNO
''
''
''
''.
Check the SAP Note 310154 for more info.
Also the BADI approach (ME_GUI_PO_CUST and ME_GUI_PO_CUST) is preferred instead of using function and screen exits.
Regards,
Sai
2009 Jul 01 11:08 AM
Hi Sai,
its still not working,
PO Services hierarchy :
1. PO Header
2. PO Line Item
3. Service LIne item for each PO Line Item.
what i need is to get service line item (no. 3), not PO line item.
do you have another solution ?
Thanks
2009 Jul 01 11:41 AM
Hi,
Ok, understood the issue. I dont know any way to access service information, if you find one I would be very intrested in the solution. BADI approach gives more Item details (delivery, history, etc) but not service lines.
Regards,
Sai
2009 Nov 02 7:39 AM
Hi Santosh,
I solved the issue within EXIT_SAPMM06E_012 (Enhnacement MM06E005) using FM MS_READ_SERVICES.
LOOP AT tekpo INTO wa_ekpo.
IF wa_ekpo-pstyp = '9'.
* Read PACKNO
CALL FUNCTION 'MS_READ_SERVICES'
EXPORTING
i_hpackno = wa_ekpo-packno
i_packno = wa_ekpo-packno
TABLES
t_esll = tb_eslh.
LOOP AT tb_eslh INTO wa_eslh.
REFRESH tb_esll.
CLEAR tb_esll.
CALL FUNCTION 'MS_READ_SERVICES'
EXPORTING
i_hpackno = wa_eslh-sub_packno
i_packno = wa_eslh-sub_packno
TABLES
t_esll = tb_esll.
* tb_esll has service lines ...
* here you can do all the checks ...
ENDLOOP.
ENDIF.
ENDLOOP.
Hope it helps
Bye
2010 Jul 20 9:54 PM
Hi Guys,
I am having the same problem, and try with FM MS_READ_SERVICES, but when you are creating PO on ME21N, you dont have data on ESLL withe package number ok TEKPO, because it is new. What can I do?
Thanks in advance.