User or customer exit for ME21N

Hi all,
I have to make a check before saving the Purchase order thru ME21N. Is there any user exit or customer exit available to do this check? Plz clarify.
Regards,
Steve

Hi
Use the BADI ME_PROCESS_PO_CUST
see the sample code and the doc for BADI
BAdI Name: ZCHECK_PO_LINE_ITEM (Implementation name) PO Account assignment
Definition Name: ME_PROCESS_PO_CUST
Interface Name : IF_EX_ME_PROCESS_PO_CUST
Implementing Class: ZCL_IM_BADIN_ACCOUNT_ASSGN
Method :            PROCESS_HEADER
METHOD if_ex_me_process_po_cust~process_header .
  DATA : re_data TYPE mepoheader.
*get the item data
  CALL METHOD im_header->get_data
    RECEIVING
      re_data = re_data.
  re_header = re_data.
  IF ( re_data-bsart NE 'ZOC' AND re_data-bsart NE 'ZPC' ).
    IF ( re_data-bsart <> 'ZIC' AND re_data-bsart <> 'UB' ).
      IF re_data-bukrs NE '1001'.
        MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'Use only Sipchem Company'
                                        'Code for External Procurement'.
      ENDIF.
    ENDIF.
  ENDIF.
ENDMETHOD.
Method :            PROCESS_ITEM
METHOD if_ex_me_process_po_cust~process_item .
  DATA: v_menge TYPE bamng,   " PR Quantity
        v_statu.              " PR Status
  DATA : re_data TYPE  mepoitem,
       re_data1 TYPE mepoaccounting,
re_accountings TYPE purchase_order_accountings ,
header TYPE purchase_order_accounting.
*get the item data
  CALL METHOD im_item->get_data
    RECEIVING
      re_data = re_data.
  IF ( re_header-bsart NE 'ZOC' AND re_header-bsart NE 'ZPC' ).
    IF re_header-bsart EQ 'ZRL'.
      IF re_data-konnr EQ space.
    MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'You cant create a Release order'
                                          'without a reference to Outline Agreeement'.
      ENDIF.
    ENDIF.
    IF ( re_data-banfn EQ space AND re_data-anfnr EQ space ).
      MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'You can create a Purchase order'
                                                     'only with reference to a PR or RFQ'.
    ENDIF.
    IF re_data-knttp NE 'K' AND re_data-pstyp NE '9' .
      IF syst-cprog EQ 'RM_MEPO_GUI'.
        IF re_data-uebto IS NOT INITIAL OR
           re_data-uebtk IS NOT INITIAL OR
           re_data-untto IS NOT INITIAL.
      MESSAGE ID 'ZM_MSG' TYPE 'E' NUMBER '000' WITH 'You cant change delivery settings'.
        ENDIF.
      ENDIF.
    ENDIF.
  ENDIF.
ENDMETHOD.
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.
<b>Reward points for useful Answers</b>
Regards
Anji

Similar Messages

  • User Exit for ME21n - Urgent

    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

  • 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.
    -- Umesh

    Hi,
    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

  • Exit for ME21N

    Hi,
    Need your help for solving an issue related to ME21N ( Purchase Order Creation)
    I am having ZVRL(say) condition type that is mandatory and is defined in pricing schema ZVVA01(say).ZVVA01 is further attached to purchase organisation 4000 (say).
    I am having a document type ZVVN . I want to save the purchase order without ZVRL (Defined as Mandatory condition)  for particular document type ZVVN. But as ZVRL is mandatory condition , So system does not allow me to save the purchase order.
    For solution following option have been ruled out by the client-
    1) Through a separate vendor schema with different purchase organization.
    2) Entering any value like .01 or .002 for the mandatory condition type that is for ZVRL.
    Other than above two, Can anyone please tell me if there is any exit/badi/ or pricing routine available through which we can avoid mandatory ZVRL condtion for particular document type ZVVN at the time of saving and changing the Purchase order.
    Thanks
    Deepak Gupta

    Hi,
    Check all user exit for ME21N
    Transaction Code - ME21N Create Purchase Order
    Exit Name Description
    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 processin
    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
    See which is suitable for your requirement.

  • Customer exit for Batch management

    Hi experts,
    I'm using customer exit for batch management for internal number assignment.
    I need the Batch number as i mentioned below 
    DDMMYYB01
    DD-Date
    MM-Month
    YY-Year
    B-Block
    01-Number
    For this i need to give logic. How to give i'm not getting. This batch number creation will come at the time of GR.
    Anybody help me?
    Naren

    Hi
    Please use the user exit SAPLV01Z as I mentioned in your other thread, please go to SMOD to read its documentstion.
    In SMOD, select the 'Documentation' and click 'Display', this will show the overview documentation.
    Select the 'Componnet', then ciick the 'Display'. select each component and click 'Documentation Ctrl+F4) this will show the detailed documentation of them.
    Best Regards.
    Leon.

  • Custom Exit for determining previous-year time range

    Dear all:
    I have a problem about custom exit:
    We have created a new object for combining Fiscal Year/Month and Period. So the format will be shown as " yyyymmp"
    now we have one requirement which is determining the same period but previous year based on user input. For Example, if user input start and end period as
    "2006041" and "2006111". There are should be 2 custom exit which are able to convert the user input to be "2005041" and "2005111". We created 2 custom exit for telling the previous-year period.
    Then based on this converted time range, we should be able to extract applicable data. But after testing, we cant get supposing result. The code is following:
    We will be very grateful for any input. thank you all so much
    Calculate (Start)previous year/month/period by current
    *year/month/period
    *user-entry calendar year/month/period
    WHEN 'ZFACLV19'.
          LOOP AT i_t_var_range INTO loc_var_range
          WHERE vnam = 'ZFACYMP1'.
            CLEAR l_s_range.
            LOC_YEAR = LOC_VAR_RANGE-LOW(4).
            LOC_MONTH = LOC_VAR_RANGE-LOW+4(2).
              LOC_YEAR = LOC_YEAR - 1.
            L_S_RANGE-LOW(4) = LOC_YEAR.
            L_S_RANGE-LOW+4(2) = LOC_MONTH.
            L_S_RANGE-LOW6(1) = LOC_VAR_RANGE-LOW6(1).
            l_s_range-sign = 'I'.
            l_s_range-opt = 'EQ'.
            APPEND l_s_range TO e_t_range.
            EXIT.
          ENDLOOP.
    Calculate (End)previous year/month/period by current
    *year/month/period
    *user-entry calendar year/month/period
    WHEN 'ZFACLV20'.
    break ab_william.
          LOOP AT i_t_var_range INTO loc_var_range
          WHERE vnam = 'ZFACYMP2'.
            CLEAR l_s_range.
            LOC_YEAR = LOC_VAR_RANGE-LOW(4).
            LOC_MONTH = LOC_VAR_RANGE-LOW+4(2).
              LOC_YEAR = LOC_YEAR - 1.
            L_S_RANGE-LOW(4) = LOC_YEAR.
            L_S_RANGE-LOW+4(2) = LOC_MONTH.
            L_S_RANGE-LOW6(1) = LOC_VAR_RANGE-LOW6(1).
            l_s_range-sign = 'I'.
            l_s_range-opt = 'EQ'.
            APPEND l_s_range TO e_t_range.
            EXIT.
          ENDLOOP.
    SzuFen

    Hi,
    Try with following modifications:
    ZYEAR1(4) = LOC_VAR_RANGE-LOW(4).
    ZYEAR1(4) = ZYEAR1(4)- 1.
    ZMONTH1(2) = LOC_VAR_RANGE-LOW+4(2).
    CONCATENATE ZYEAR1(4) ZMONTH1(2) INTO LOC_VAR_RANGE-LOW(6).
    With rgds,
    Anil Kumar Sharma .P

  • How to Write a CUstomer Exit for a variable in BEx

    Hi,
    How to write a customer exit variable in bex Query designer
    Do i need developers key for this (If so what type of key do i need so that i can ask basis tean to generate)
    Info Object: ZEXP_DTE (Expiry Date)
    Variable on ZEXP_DTE :
    ZEDTE
    Type: Customer Exit
    Can any one please tell me how to write a code in CMOD from this (Step-by Step)
    Expiry Date > Current Cal Day
    As arun said
    'l_s_range-low = SY-DATUM.
    l_s_range-opt = 'I'.
    l_s_range-sign = 'GT'.
    APPEND l_s_range TO e_t_range.'
    I want to insert the above code for the above customer exit but as i am new to BW as  ABAP please explain me what are the steps involved in CMOD
    Thanks

    Hi,
    To write customer exit for a variable, you require Access key.
    Contact your BASIS to get that.
    Access Key,BASIS?
    To write Customer exit,
    User Exits
    User Exit for Variable
    /thread/809285 [original link is broken]
    Hope these helps u...
    Regards,
    KK.

  • Customer Exit for Calendar Month based on the day (system Date)

    Hello,
    I need help in creating a customer exit for Calendar month without the user input. The logic is as follows:
    For the BEx variable created with customer exit option and no user input:
    If the day on the system date falls in between 1 to 14 take the calendar year/month value as previous month.
    If the day on the system date falls in between 15 through 31 then take the calendar year/month as current month.
    eg if report is run on March 24th2009 the calendar year/month variable should be calculated as 03/2009 (March 2009)
    if the report is run on March 1st2009 the calendar year/month should be calculated as 02/2009 (Feb 2009).
    The code should be effective when run in the first 15 days of Jan when the previous month would contain the previous year as well.
    Thank You
    Srishti

    Thanks Shanthi. I am trying to incorporate the logic when the query is run in beginning of Jan when the year should be the previous year.Following is the code.please let me know if it would work. Is there a way I can test it as well?
    CASE I_VNAM.
    WHEN 'ZCURCALMON'.
    IF i_step = 2.
    data: mm(2),
            dd(2),
            yy(4),
            FM(6).
    if sy-datum+4(2) EQ 1.
    sy-datum(4) = sy-datum(4) - 1.
    else.
    sy-datum(4) = sy-datum(4).
    endif.
    if sy-datum+6(2) LE 15.
      mm = sy-datum+4(2) - 1.
      concatenate sy-datum(4) mm into FM.
    else.
      concatenate sy-datum(4) sy-datum+4(2)  into FM.
    endif.
    l_s_range-low = FM.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    append l_s_range to e_t_range.
    Endif.
    ENDCASE.
    Thanks
    Srishti

  • Customer exit for IDOC_INPUT_SALESORDER_CREATEFR

    Hi All,
          I am doing the salesorder creation through IDOC_INPUT_SALESORDER_CREATEFR but i couldn't find any customer exit in this. I am in version 4.7.
    Can anyone tell me if you find any user exit for this
    Regards,

    Hi,
    There are no customer exits for this particular FM I suppose.
    If you require to modify you need to customize it and do the necessary changes.
    Regards,
    Sharath

  • User or SAP exit for Batch Status during Transfer Order creation

    Hi All,
    I would like to know if there's an user-exit or a SAP-exit available with which we could evaluate the status of a batch during the creation of a Transfer Order.
    When a production order is created, the system creates automatically a transfer requirement with all the components needed for the production. This TR (Transfer requirement) is then converted into a TO (transfer order) with transaction LT04. Here, we want to control that the status of the batches is not restricted. Otherwise, the user shall not be able to save the TO.
    Thanks in advance, I appreciate your feedback!
    SS

    Exit Name Description
    MWM2S001 Exit to Determine 2-Step Picking Characteristic
    MWMBAP01 Enhancement for BAPI WarehouseTransOrder.GetDetail
    MWMBAP02 Enhancement for BAPI WarehouseStock.GetDetail
    MWMD0001 Transfer order print via RLVSDR40
    MWMD0002 Transfer order print as multiple process with RLKOMM40
    MWMIDI07 Enhancement for Output WMPIHU (Create Pick-HU) Inbound
    MWMIDO11 Enhancement for message WMTORD: TO with several items
    MWMIDO12 Enhancement for Output WMPIHU (Pick-HUs) Outbound
    MWMIDO13 Extension for WMMBXY (subsequent tasks after goods movement)
    MWMPP001 Enhancement WM/PP Interface (automatic TR generation)
    MWMRF001 RF: Influence Display of material description
    MWMRF100 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0100)
    MWMRF101 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0101)
    MWMRF102 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0102)
    MWMRF104 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0104)
    MWMRF105 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0105)
    MWMRF106 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0106)
    MWMRF107 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0107)
    MWMRF108 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0108)
    MWMRF151 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0151)
    MWMRF152 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0152)
    MWMRF153 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0153)
    MWMRF170 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0170)
    MWMRF202 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0202)
    MWMRF203 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0203)
    MWMRF204 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0204)
    MWMRF205 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0205)
    MWMRF212 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0212)
    MWMRF213 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0213)
    MWMRF221 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0221)
    MWMRF302 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0302)
    MWMRF303 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0303)
    MWMRF304 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0304)
    MWMRF305 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0305)
    MWMRF312 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0312)
    MWMRF313 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0313)
    MWMRF321 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0321)
    MWMRF400 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0400)
    MWMRF402 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0402)
    MWMRF403 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0403)
    MWMRF404 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0404)
    MWMRF405 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0405)
    MWMRF406 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0406)
    MWMRF410 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0410)
    MWMRF411 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0411
    MWMRF412 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0412)
    MWMRF502 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0502)
    MWMRF503 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0503)
    MWMRF504 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0504)
    MWMRF505 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0505)
    MWMRF600 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0600)
    MWMRF601 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0601)
    MWMRF630 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0630)
    MWMRF631 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0631)
    MWMRF632 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0632)
    MWMRF633 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0633)
    MWMRF634 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0634)
    MWMRF650 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0650)
    MWMRF651 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0651)
    MWMRF700 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0700)
    MWMRF701 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0701)
    MWMRF702 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0700)
    MWMRF703 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0703)
    MWMRF704 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0704)
    MWMRF705 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0705)
    MWMRF760 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0760)
    MWMRF761 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0761)
    MWMRF762 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0762)
    MWMRF763 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0763)
    MWMRF764 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0764)
    MWMRF765 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0765)
    MWMRF766 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0766)
    MWMRF767 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0767)
    MWMRF768 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0768)
    MWMRF769 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0769)
    MWMRF777 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0777)
    MWMRF800 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0800)
    MWMRF801 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0801)
    MWMRF802 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0802)
    MWMRF803 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0803)
    MWMRF804 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0804)
    MWMRF805 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0805)
    MWMRF806 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0806)
    MWMRF807 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0807)
    MWMRF888 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0888)
    MWMRF889 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0202)
    MWMRF998 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0998)
    MWMRF999 ENHANCEMENT FOR USER SCREENS (LOGICAL SCREEN 0999)
    MWMRFCOD Enhancement for function codedisabling
    MWMRFDLV select delivery by user criteria
    MWMRFPRT Enhancement for printing
    MWMRFSSG user exit for sorting TOs in RF system-guided transaction
    MWMRFUP Customer defined general purpose pushbutton called from scr.
    MWMRP001 Cust. Exit for Fixed Bin Replenish.: Delivery Item Selection
    MWMRP002 Cust. Exit for Fixed Bin Replenishment: TR Quantity Distr.
    MWMRP003 Customer Exit for Replenishment using RLLNACH1
    MWMRP004 User Exit for Replenishment using RLLNACH4
    MWMTO001 Enhancements for end of transfer order generation
    MWMTO010 Exit: Calculation of Total Planned TO Processing Time
    MWMTO011 Correction of Planned Processing Time for TO Item
    Hi,
    MWMTO012 Correction of Sorting and Split Transfer Order
    MWMTO013 Stock Removal for Sev. Storage Types as in Stringent FIFO
    MWMTOAU3 Separate selection of posting changes for autom.TO creation
    MWMTR001 Exits at the end of transfer rqmnt creation (IM,PP interf.)
    No of Exits: 104
    USER EXIT
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sapgenie.com/abap/code/abap26.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
    http://www.easymarketplace.de/userexit.php
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sappoint.com/abap/userexit.pdfUser-Exit
    http://www.sap-img.com/ab038.htm
    http://help.sap.com/saphelp_46c/helpdata/en/64/72369adc56d11195100060b03c6b76/frameset.htm
    USER EXIT
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    http://www.sap-img.com/abap/what-is-user-exits.htm
    http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci982756,00.html
    Regards,
    Raj.

  • How to select data from an aggregate in a customer exit for a query?

    Hi,
    I have written a virtual key figure customer exit for a query. Earlier the selection was from the cube, where there was severe performance issue. So I have created an aggregate, activated and have loaded the data.
    Now when I select that data I find that the Key table is different in development and production. How do I resolve this.
    My code is attached below. The table in developemnt is KEY_100027 and in production is KEY_100004. This code is activated and running in BW development server.
    SELECT
        F~KEY_1000041 AS K____035
         F~KEY_1000271 AS K____035
         F~QUANT_B AS K____051
         F~VALUE_LC AS K____052
    INTO (xdoc_date, xval1, xqty1)
    UP TO 1 ROWS
    FROM
    FROM
    */BIC/E100004 AS F JOIN
    /BIC/E100027 AS F JOIN
    /BIC/DZMM_CGRNU AS DU
    ON FKEY_ZMM_CGRNU = DUDIMID
    JOIN /BI0/SUNIT AS S1
    ON  DUSID_0BASE_UOM = S1SID
    JOIN /BI0/SCURRENCY AS S2
    ON DUSID_0LOC_CURRCY = S2SID
    JOIN /BI0/SMATERIAL AS S3
    *ON FKEY_1000042 = S3SID
    ON FKEY_1000272 = S3SID
    JOIN /BI0/SMOVETYPE AS S4
    *ON FKEY_1000043 = S4SID
    ON FKEY_1000273 = S4SID
    JOIN /BI0/SPLANT AS S5
    *ON FKEY_1000044 = S5SID
    ON FKEY_1000274 = S5SID
    JOIN /BIC/D100004P AS DP
    *ON FKEY_100004P = DPDIMID
    ON FKEY_100027P = DPDIMID
    WHERE
    WHERE
    ( ( ( ( F~KEY_1000041 BETWEEN 20051230 AND 20060630  ) ) AND  ( (
    ( ( ( ( F~KEY_1000271 BETWEEN 20051230 AND 20060630  ) ) AND  ( (
             S3~MATERIAL = <l_0material> ) ) AND  ( (
                s2~movetype BETWEEN '101' AND '102' OR
             s4~movetype BETWEEN '921' AND '922' OR
             s4~movetype BETWEEN '105' AND '106' OR
             s4~movetype BETWEEN '701' AND '701' OR
             s4~movetype BETWEEN '632' AND '632' ) ) AND  ( (
             S5~PLANT = <l_0plant> ) ) AND  ( (
             DP~SID_0RECORDTP = 0  ) ) ) )
    GROUP BY
        ORDER BY F~KEY_1000271 DESCENDING.
          IF sy-subrc NE 0.
            EXIT.
          ENDIF.
        ENDSELECT.
    How do I transport the code and make it work?
    Whats the reason that the two key fields are different.
    I had transported the aggregate from development to production. Activated it and filled the data.
    What is the way out? Please help.
    Regards,
    Annie.

    Hi Sonu,
    The main task is to move the contents of the one internal table to another with some condition.
    First sort and delete the duplicate entries from the First Internal table like below : 
    sort it_tab by material ascending date_modified descending.
    delete adjacent duplicates from it_tab.
    Then move that Internal table contents to another internal table.
    Define another internal table with the same structure as you have first internal table and then
    Second Step :
    it_itab1 = it_itab.
    If you are using seperate Header line and Body then you can do like below :
           it_itab1[] = it_itab[].
    This will fix the issue.
    Please let me know if you need any further explonation.
    Regards,
    Kittu
    Edited by: Kittu on Apr 24, 2009 12:21 PM

  • Problem in creating include program for customer exit for BC425_01

    Hi,
         I want to write a customer exit for transaction BC425_01. For identifying the include program for exit , i go to System->Status.There I double click on the program name(GUI).Then I perform a 'FIND' in main program for 'customer-function' keyword. I get 3 search results with "CALL CUSTOMER-FUNCTION '001' " , "CALL CUSTOMER-FUNCTION '002' " , "CALL CUSTOMER-FUNCTION '003' ".
    Now i double click on CALL CUSTOMER-FUNCTION '001'  and i am taken to the code of program where this function is called in MODULE cust_check INPUT. I double click on CALL CUSTOMER-FUNCTION '001'  and then I am taken to the function module code which contains a single statement 'INCLUDE ZXBC425G01U01 .' .
    Now I double click on this include program so that I can write my own code. But when i double click on it , a message displayed 'Program names ZX.. are reserved for includes of exit function groups'. Hence I am not able to creates this include program and write my coding.
    Kindly Help
    THANKS

    Hi Amber,
    Then you click enter button.It is asking to create object with that include name ZXBC425G01U01 in a pop-up.You  should select YES option.It will ask package . Give the package name and save.Then include program is created and allowed you to write your own code.
    Thanks,
    Prasad GVK.

  • How to find out query name in customer exit for variables

    We use the same customer exit variable in different queries. In the customer exit we want to find out, which query has called the customer exit. With the technical query name we want to read a master data table entry.
    e.g. If we come from query ZG1_TEST1 we want to use selection sel1
    Query name  |  selection
    ZG1_TEST1   |  sel1
    ZG1_TEST2   |  sel2  
    How can we find out the query name in the customer exit for variables?
    Thanks for your help,
    Evi

    Hi Evi,
    check out the structure I_S_RKB1D in your exit. It contains the query.
    Siggi

  • How to find CUSTOMER EXIT for a Standard SAP program

    How to find CUSTOMER EXIT for a Standard SAP program

    Hi
    To introduce the techniques of enhancement in standard SAP system. SAP creates customer exits for specific programs, screens, and menus within standard R/3 applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.
    They do not affect standard SAP source code.
    When you add new functionality to your SAP System using SAP’s exits, you do not alter the source code of standard SAP programs in any way. The code and screens you create are encapsulated as separate objects. These customer objects are linked to standard applications, but exist separately from SAP’s standard software package.
    They do not affect software updates.
    When you add new functionality to your SAP System using SAP’s exits, your objects (called customer objects) must adhere to strict naming conventions. When it comes time to upgrade a to a new software release, customer objects’ names ensure that they will not be affected by any changes or new additions to the standard software package.
    Customer exits are not available for all programs and screens found in the SAP System.
    Any change made to an SAP object in a customer system is called a modification. Customers usually modify their systems for one of two reasons. Either they make changes to the SAP standard in order to adjust the R/3 System to their specific business needs (actual modifications), or they alter individual SAP objects in order to correct an error (as recommended in an SAP error note).
    You should only modify the SAP standard if the modifications you want to make are absolutely necessary for optimizing work flow in your company. Be aware that good background knowledge of application structure and flow are important prerequisites for deciding what kind of modifications to make and how these modifications should be designed.
    SAP application programmers create SAP enhancements in transaction SMOD using function module exits, menu exits, and screen exits.
    Customers are given a catalog containing an overview of existing SAP enhancements. They can then combine the SAP enhancements they want into an enhancement project using transaction CMOD.
    SAP enhancements are made up of component parts. These components include function module exits, menu exits, and screen exits. A specific component may be used only once in a single SAP enhancement (this guarantees the uniqueness of SAP enhancements).
    Customer enhancement projects consist of SAP enhancements. Each individual SAP enhancement may be used only once in a single customer enhancement program (this guarantees the uniqueness of a customer project).
    SAP application programmers preplan function module exits, menu exits, and screen exits for their applications and combine them to create useful enhancements for the R/3 System.
    Customers create their own enhancement projects for their systems using SAP enhancements. You can customize the individual components of an enhancement project by creating your own include programs (for function module exits), texts (for menu exits), and subscreens (for screen exits).

  • Customer Exit for 13 month from current month

    Hi Gurus,
    I need a customer exit for 13 months from current month. Based on the requirement I have written following code
    When 'VPI_13CALYRMON'.
        IF i_step = 1.
          l_s_range-sign = 'I'.
          l_s_range-opt = 'BT'.
          l_s_range-low = sy-datum+0(6).
          l_s_range-high = sy-datum+0(6) + 13.
          append l_s_range to e_t_range.
        endif.
    Please could you guide me the code.
    Thanks
    Ganesh Reddy.

    Hi,
    I think you can do it in below way.
    When 'VPI_13CALYRMON'.
    IF i_step = 1.
    temp1 = sy-datum+0(4).
    temp1 = temp1 +1. (because adding 13 months would take year to next year)
    temp2 = sy-datum+4(2).
    temp2 = temp2 + 1. (after adding 13 months, the month would be one more than of previous year)
    concatenate temp1 temp2 into temp3.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'BT'.
    l_s_range-low = sy-datum+0(6).
    l_s_range-high = temp3.
    append l_s_range to e_t_range.
    endif.
    Hope this helps.

Maybe you are looking for

  • Transaction Iview - SAP GUI for HTML

    Hi, In SAP transaction iviews - SAP GUI for HTML in portal there is a possibility to go to menu,other transactions from the transaction field.Is there any way to remove the Menu button and hide the transaction field from transaction iview. Please sug

  • Flashplayer 10.4-10.5 plug-in crashes Safari

    Hi there, I am used to Safari crashing periodically because of Flash but it's becoming more and more frequent. I get the following error message: "The application Safari quit unexpectedly. The problem may have been caused by the FlashPlayer 10.4-10.5

  • Electronic version of CD?

    Is there an electronic copy available of my already purchased CD?  My wife's CD-ROM drive crashed before we could install the program on her computer.  But we had already installed it on mine.  Any help / ideas?

  • Droplet depends on UI Language settings?

    Hi there. I'm creating a droplet on Photoshop CC (2014) with the UI Language set to English. On english Photoshops the droplet is doing it's job perfectly. The droplet stops working on my fellow's Photoshop CC (2014) with the UI language set to Germa

  • My iTunes is freezing up when I click to Podcast button on iTunes left Menu

    How can I get over this problem, every time I click to Podcast button on the left menu, iTunes is frozing up and a circular rainbow shows up... :S What can I do to fix it? Thank You for yout time and help.