User Exit or BADI to control GUI/Toolbar of TP04

Hi All,
I need to know any user exit or BADI enhancement for changing the toolbar of TP04. As of now, if we open TP04, we get two pushbuttons (Overview and Approve). We have a requirement like, only Overview should be displayed. Users should not Approve it and hence we need to take that pushbutton off. Kindly suggest me if anybody is aware of any exit or BADI enhancement to control GUI or Toolbar of TP04.
Thanks a lot!!

Thanks for the reply. However, we have a scenario because of which we are going for this disabling of the button. We have workflow for the travel management . The t-code TP04 will be given to SAP portal directly. And in workflow we have made Approval available for Save button, because of the event being triggered. So we do not again want this Approve button explicitly. And hence are thinking of disabling it. Is there any way to get this?
Thanks a lot!!

Similar Messages

  • Exit or Badi for controlling the change of user status in notification

    Hi,
    I want to check the current user status of notification while saving the notificaton. If the current user status satisifies particular situation, then the notification should be save else not.
    Is there any user exit or Badi which can be used to control the change of user status in notification.
    Thanks
    SUMIT

    Hi Pushpa,
    Thanks for the reply.
    the problem over here is that the BADi IQS0_STATUS_MAINTAIN only allows to disable the user status.
    the other function module STATUS_READ only fetches the data from JEST.
    whereas my problem is that i want to check on the changed status on the screen(which is not saved also).
    Appreciate your reply on the same.
    Thanks
    SUMIT

  • User Exit or BADI for ME21N

    Hi All,
    We are in a situation where in we need to Change the Distribution Channel in the Shipping tab of ME21N transaction.
    Previously, the distribution channel is being picked up form the config (SPRO - Shipping data for plant) but before it picks up from the config we need to change it and update the other distribution channel in the PO.
    We have tried with most of the User exits and BADIs but all of those are of no use for our requirement, as these user exits and badis are triggered after we click on save button. But we need to change the Distribution channel at the point of determination of Shipping data by the system i.e. before save.
    Can any one please help me out with this situation with some User exits or BADIs that are triggered before save button.
    Note: The Shipping data is in EKPV table. We need to change the VTWEG field in EKPV.
    Thanks in Advance,
    Asif Ali Khan

    Asif,
    see these are Exits and BADI for ME21n,
    Enhancement/ Business Add-in            Description                                                                               
    Enhancement                                                                               
    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                                Activate PReq Block                                            
    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             
    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  
    M06B0001                                Role determination for purchase requisition release                                                                               
    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
    Amit.

  • User exits vs badi

    hi all, one of my friends who is working in real time said to me , whenever a need for enhancement arises, its always better to use badi over user exit. he said , if v add our code in BADI , and in future if any problem arises with BADI , SAP wil take care, but same cant be done if v use userexits.
    am quite confused.plz give the basic differences about badi and user eixt, and which of the two is preferred in REAL TIME and why?
    thanx all.

    Hi Shiva,
    <b>Difference Between BADI and User Exits</b>
    Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.
    As with customer exits two different views are available:
    In the definition view, an application programmer predefines exit points in a source that allow specific industry sectors, partners, and customers to attach additional software to standard SAP source code without having to modify the original object.
    In the implementation view, the users of Business Add-Ins can customize the logic they need or use a standard logic if one is available.
    In contrast to customer exits, Business Add-Ins no longer assume a two-level infrastructure (SAP and customer solutions), but instead allow for a multi-level system landscape (SAP, partner, and customer solutions, as well as country versions, industry solutions, and the like). Definitions and implementations of Business Add-Ins can be created at each level within such a system infrastructure.
    SAP guarantees the upward compatibility of all Business Add-In interfaces. Release upgrades do not affect enhancement calls from within the standard software nor do they affect the validity of call interfaces. You do not have to register Business Add-Ins in SSCR.
    The Business Add-In enhancement technique differentiates between enhancements that can only be implemented once and enhancements that can be used actively by any number of customers at the same time. In addition, Business Add-Ins can be defined according to filter values. This allows you to control add-in implementation and make it dependent on specific criteria (on a specific Country value, for example).
    All ABAP sources, screens, GUIs, and table interfaces created using this enhancement technique are defined in a manner that allows customers to include their own enhancements in the standard. A single Business Add-In contains all of the interfaces necessary to implement a specific task.
    The actual program code is enhanced using ABAP Objects. In order to better understand the programming techniques behind the Business Add-In enhancement concept, SAP recommends reading the section on ABAP Objects.
    What is the system landscape?
    1) Difference between BADI and USER-EXIT.
    i) BADI's can be used any number of times, where as USER-EXITS can be used only one time.
    Ex:- if your assigning a USER-EXIT to a project in (CMOD), then you can not assign the same to other project.
    ii) BADI's are oops based.
    2) About 'BDCMSGCOLL' it is a structure. Used for finding error records.
    3) Full form of BADI 'Business addins'.
    3) System land scape will be depends on your project
    Ex:- 'Development server'>'Quality server'-> 'Production server'......
    Check the below links:
    http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/badi-vs-user-exit-405324
    http://www.sapfans.com/forums/viewtopic.php?t=172792
    Difference between BADI's & User-Exit.
    1. Check the replies for your question which asked by another person.
    http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/569786
    2. Similar thread.
    http://www.sapfans.com/forums/viewtopic.php?p=559472&sid=99caa729618b18a8f7c46cc2f047af52
    3. Same question explained
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    Badi Tutorials
    1. Sample program.
    http://www.sap-img.com/abap/business-add-in-you-need-to-understand-abap-oo-interface-concept.htm
    2. Implementing BADI.
    http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm
    Hope it helps.
    3. From help.sap.com
    http://help.sap.com/saphelp_nw04/helpdata/en/5f/071eed117c11d5b37d0050dadef62b/frameset.htm
    http://www.sap-img.com/abap/difference-between-badi-and-user-exits.htm
    http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/badi-vs-user-exit-405324
    Differences between BADI and User Exits
    Re: Differences between BADI and User Exits
    diff between BADI and USER EXITs
    Difference between BADI and User Exits..
    https://forums.sdn.sap.com/click.jspa?searchID=519283&messageID=2515351
    https://forums.sdn.sap.com/click.jspa?searchID=519283&messageID=2627911
    https://forums.sdn.sap.com/click.jspa?searchID=519283&messageID=2847358
    https://forums.sdn.sap.com/click.jspa?searchID=519283&messageID=2584155
    https://forums.sdn.sap.com/click.jspa?searchID=519283&messageID=2826338
    https://forums.sdn.sap.com/click.jspa?searchID=519283&messageID=2859102
    <b>Rewards Points if Useful</b>
    Regards
    Gokul
    Message was edited by:
            Gokul

  • User Exit or BADI FOR ME59N

    Hi All,
       My requirement is in ME59N if Document Type is ZCD or ZSD it should not consider the Rounding Value (MARC-BSTRF) which is coming from Materrial Master (MRP1 View) and Purchase Info Record (EINE-RDPRF) which is coming from Purchase Info Record(ME12 or ME13), Can any one suggest me the right User Exit or BADI for this, Please go through the requirement.
    Regards,
    Sudhakar .A
    Edited by: Sudhakar Allam on Feb 5, 2010 4:31 AM

    HI Sudhakar ,
                              These are the list of enhancements and Badi's available for ME59N ,
    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
    AMPL0001                                User subscreen for additional data on AMPL
    MRFLB001                                Control Items for Contract Release Order
    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
    The list of Badi are
    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: 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_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_BADI_DISPLAY_DOC                     BAdI for Internal Control of Transaction to be Invoked
    ME_ACTV_CANCEL_PO                       BAdI for Activating the Cancel Function at Header Leve
    MEGUI_LAYOUT                            BAdI for Enjoy Purchasing GUI
    ME_CHECK_ALL_ITEMS                      Run Through Items Again in the Event of Changes in EKK
    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
    regards.

  • How to find the user exits and BADIS from SPRO

    Hi all,
    please let us know how to find the User exits or BADIS for an application from SPRO.
    Regards,
    Madhavi

    Hi Varisetty,
    Finding user exits and BAdis from SPRO can be cumbsersome. In most instances you know the standard SAP program and want to check (find) an exit called in the flow of the transaction. You can do this as follows:
    For User Exit:
    Put "/h" in the command box (to start debugging)
    Execute your transaction
    When you enter debugging - put a breakpoint at statement
    CALL CUSTOMER-FUNCTION
    the control will stop at all calls to User Exits
    For BAdi (it's simpler)
    Go to class CL_EXITHANDLER in SE24
    Enter method GET_INSTANCE
    Put a breakpoint in this method
    Run your standard transaction - control will stop at all BAdis called within the flow since this method is used to check BAdi implementations before invoking them
    Also, if you want to find enhancements by package - go to SE80, enter the package and check function groups starting with X - those contain function exits (conventional user exits). For BAdis in a package, there is normally a separate tree node (under the package) for Enhancements hence clearly identifiable.
    Cheers,
    Adi

  • User exit or BADI for recruitment

    Hi,
    I am new to HCM, can you give me user exit or badi for recruitment.
    Requirement - i have developed an infotype which i am updating through BSP, while the custom infotype is updated it should simultaneously update some of my Z tables. Hoping for positve replies earliest.
    Thanks in advance:-
    Santosh

    Hi,
    <b>Infotype</b>The data fields of HR master data, time management and recruitment are grouped logically into information types or infotypes for short.
    Examples of infotypes are "Family/Related Person", "Organizational Assignment, "Basic Pay".
    The following naming conventions apply to infotypes:
    Infotypes 0000 to 0999 are used for HR master data
    and sometimes for applicant data
    Infotypes 1000 - 1999 for organizational management
    Infotypes 2000 - 2999 for time data
    Infotypes 4000 - 4999 for applicant data
    Infotypes 9000 - 9999 for customers
    <b>Function character of step</b>
    This controls for which types of processing (create, change and/or delete a data record) a dynamic action should be carried out.
    The processing type is indicated by a two-digit numeric value. These values can be added up; in other words, you can enter several processing types for each infotype, subtype or field. A dynamic action can also be carried out independent of the current processing type.
    00 for Independent of the current function carried out
    02 for Change
    04 for Create
    06 for Change and create
    08 for Delete
    10 for Change and delete
    12 for Create and delete
    Examples
    If you enter 06, an action is carried out if the specified infotype was created or changed.
    If you enter 00, an action is carried out irrespective of whether the specified infotype was created, changed or deleted.
    <b>Variable function part</b>
    The variable function part, which depends on the indicator for step, can have the following meaning:
    <b>P - Plausibility checks</b>
    You can enter values for specific infotype fields. Field names must be entered in full. Literals and constants can serve as comparison values. These must be enclosed by inverted commas. Variables can also be used.
    The old value of a field can be used for comparison; the field name must be preceded by PSAVE-.
    If fields of other infotypes are used for comparison, these must be stored in the module pool of the current infotype.
    The following comparison operators are supported:
    = equal to,
    < less than,
    <= less than or equal to,
    > greater than
    >= greater than or equal to and
    <> not equal to.
    Consecutive checks must be linked by a logical AND. Logical OR links must also be indicated by a /X.
    Note:
    Note that all checks with OR links must have a /X.
    If the result of the comparison operation is not "true", then the following commands (I, F, W etc.) are skipped over until a field is reached or a new comparison operation takes place.
    Examples
    Infotype  Field ..... Ind.   Variable function part
    0007      STAT3       P      P0007-STAT3='0'
    0007      STAT3       P      PSAVE-STAT3='1'
    The step is taken if the value in the P0007-STAT3 field changes from 1 to 0.
    0007                     P      P0013-KLKZ1<>'0'/X
    0007                     P      P0013-ALVKZ<>'0'/X
    0007                     P      P0013-RVKZ1<>'0'/X
    0007                    P      P0013-RVNUM=SPACE
    The first three conditions are linked by an OR; at least one of these conditions must be met. Condition 4 must always be met.
    The step is taken if the following holds true:
    P0013-KVKZ1 not equal to 0 or P0013-ALVKZ not equal to 0 or P0013-RVKZ1 not equal to 0, and P0013-RVNUM empty.
    <b>I - Maintain infotype record</b>
    Enter the step, infotype, subtype, object ID, start and end dates of the record and an indicator which defines whether the step is to be run in the background. The possible actions are INS, COP, MOD, and DEL.
    Use commas to separate selection criteria just like the separator in the matchcode. If an entry is missing, the system inserts a comma.
    Separate the indicator for suppressing dialog from other entries by a slash D (/D).
    Constants, such as those for subtypes, are not enclosed in inverted commas.
    Variable entries are also permitted. Fields containing such values must be put in brackets.
    Examples:
    Infotype  Field ....  Ind.  Variable function part
          ....             I    INS,19,01/D
    Step: Create a Dates record, subtype 01, run in the background
          ....             I    DEL,14,M559
    Step: Delete Rec. Payments/Deds. record with subtype (wage type) M559.
    0007 ....                I    INS,8,,,(P0007-BEGDA),(P0007-ENDDA)
    Step: Create a Basic Pay record (0008) without subtype and object ID. The start and end dates are the same as those in the current Planned Working Time record (0007); specify these two fields only if they are filled because the dynamic action was triggered by this infotype.
    <b>W - Default values for new record</b>
    Literals or variables are used as default values.
    Set the defaults for the infotype, subtype, object ID, start and end dates using an I step and not a W step.
    Do not set defaults for Q fields of an infotype because the values for these fields are derived from the corresponding P fields.
    Examples
    Infotype  Subtype  ..... FC  Ind.  Variable function part
    0021       2              04  I     INS,0015,M430
    0021        2              04  W     P0015-BETRG='10000'
    When a Family/Related Person record (0021) record with subtype 2 (child) is created, an Additional Payments record (0015) with a default amount of 100.00 is created.
    <b>V - Cross-reference to another step</b>
    Here, you can combine fields to groups. The variable function part contains the value in the field which follows the "field" column. Steps which are specified only for the following field are also triggered for each of the other fields.
    Examples
    Infotype  Field  ..... FC  Ind.  Variable function part
    0016       PRBZH        06  V     PRBZT
    0016       PRBZT        06  I     DEL,0019,01/D
    Infotype 0019, subtype 01 is deleted in the background when the field PRBZT or PRBZH in infotype 0016 is changed or created (function code 06).
    The following entries are equivalent:
    0016       PRBZH        06  I     DEL,0019,01/D
    0016       PRBZT        06  I     DEL,0019,01/D
    <b>F - Call a routine</b>
    You can call internal (module pool) as well as external routines.
    If you call external routines, type the program name in brackets after the routine name. Do not specify 'using' parameters. When calling an external routine, all data must be declared in a common part. You can use the fields of structure RP50D to return values from the routine. These are not used in the standard system and can only be populated via the routine and then can be used for defaults (W-Commands).
    This allows customer-specific routines to be formulated with all the above steps.
    Example 1:
    Infotype  Field  .....  Ind.   Var.function part
    0016      PRBZT         F      PROBATION
    0016      PRBZT         I      INS,19,01
    0016      PRBZT         W      P0019-VTRMN=PRBEND
    Module pool MP001600 contains the PROBATION routine. This routine uses the entries in the fields P0016-PRBZT and P0016-PRBEH to determine the end of the probation period which it stores in the field PRBEND.
    The system creates a new 'Dates' record with the reminder date = PRBEND.
    Example 2:
    Infotyp ..... Ind. Var. function part
    0001           F      GET_DATE(ZPUDYN01)
    0001          I      INS,19,01
    0001           W      P0019-VTRMN=RP50D-DATE1
    The GET_DATE routine in program ZPUDYN01 calculates a date and enters this date in the RP50D-DATE1 field via "TABLES RP50D" in ZPUDYN01. This date can be user-defined in GET_DATE: if necessary, user-defined infotypes can be read afterwards.
    <b>M - Send a mail</b>
    Enter the name of the feature which defines the characteristics of the mail.
    Example
    Infotype  Field  .....  Ind.    Var.function part
    0001     SACHP         M       M0001
    A mail is sent when the field SACHP is changed. The characteristics of the mail are defined in feature M0001.
    In the standard system, feature M0001 is provided as a model. The documentation on feature M0001 explains how to define the characteristics of a mail.
    <b>ADDITIONAL HINTS</b>
    If you use a date as a constant, enter it as YYYYMMDD (YYYY=year, MM=month, DD=day).
    The table strings T001P, T503 and PSPAR are filled with the values which are valid on the record start date.
    The old values of the infotype are stored in the field string PSAVE. The structure of this string is the same as the Pnnnn structure (nnnn=infotype). The structure is filled with (valid) values only when the delete, change and create functions are used.
    Please read Create dynamic actions in the Implementation Guide.
    Regards
    Bernd

  • User exit or BAdi for field update in ECC system for SUS supplier

    Dear Guru's,
    I am configuring MM-SUS scenario in our srm 7.01 scenario. Not all vendors of our client are going to be SUS vendors. For SUS vendors, the client will be using Purchase Order Acknowledgement and Advanced Shipping Notification key. I am thinking of configuring a confirmation control key which will incoporate requirement of PO acknowledgement and Inbound delivery document. The assignment of confirmation control key and PO Acknowledgement Required checkbox in the vendor master record will default it in the purchase order.
    Now, the question is how to update the existing vendor master data record which will be SUS vendor. I am looking at a solution like user exit or BAdi which updates the confirmation control key and purchase order acknowledgement required check box when the client manually assigns the class 'Z_CRED_SUSMM' to the  ERMS vendor master.
    Could you please help me to find the required exit or BAdi?
    Thanks and regards,
    Ranjan
    Ranjan Sutradhar

    EXIT_SAPMF02K_001 definitely wont work as this is for custom checks. this does not update data in vendor master.
    you can try using below method of VENDOR_ADD_DATA badi.
    IF_EX_VENDOR_ADD_DATA~PRESET_VALUES_PORG
    but you need to read the screen field for classification and then according to that i think you can change the LFM1 data inside this badi

  • User exit or BAdI for MIRO(before save)

    Hi all,
    My requirement is for tcode MIRO to change the table control data, 'amount' field in po reference tab for drseg as soon as the user hits 'enter' after putting the po number.
    plz suggest if there is any user exit or badi to achieve the same.
    Thanks n regards,
    Mukesh Yadav

    Hi,
    Check the following.
    <exit farm removed by moderator>
    Moderator message: please reply with specific information only.
    Edited by: Thomas Zloch on Jun 3, 2011 10:20 AM

  • User exit or BADI for ME31K for create Contract

    Hi,
    I want that in Tcode ME31K when i create a contract, for a particular vendor and particular material only one contract should be allowed to create.
    If i try to create a second contract with the same vendor and material it should not allow me to do that.
    please let me know is any user exit or BADI is there to solve my problem.
    and what should be my code for this?

    hi,
    try this BADI...
    SMOD_MRFLB001        Control Items for Contract Release Order
    Prabhudas

  • User exit or BADI available for the CAPP in CA03.

    Hi,
                I have a requirement to populate the standard CAPP values to the work center activities of the routing only when all the activities are having a blank value.Please see the below paragraph for better understanding.         
    Currently in SAP when executing CAPP for a work center of the routing it over writes the existing values populated on the routing for the setup,labor,standard labor,man occupation,machine occupation…etc whether the values are blank or not. An enhancement needs to be made to only populate operations standards when all the values are blank.
    If routing is not populated with setup, machine, labor standards, man occupation, machine occupation and work center is setup for default standards in CAPP, then run the CAPP process to apply standards from work center zcappstds table. The program that is run to apply these standards currently is SAPLCETO. Potentially ca96 and the batch process that updates the material master RCPMAU01 will have to be adjusted as well.
    Please help me if anybody knows the user exit/Badi for this requirement.Please reply me soon this is an urgent requirement
    thanks in advance,
    Samyuktha.

    I dont have details abt exact user Exit or badi which will suit ur requirement. But below info will give you the way to find out the same.
    Have a look at below link,
    http://www.erpgenie.com/sap/abap/code/abap26.htm
    which gives the list of exits for a tcode
    There are multiple ways of searching for BADI.
    • Finding BADI Using CL_EXITHANDLER=>GET_INSTANCE
    • Finding BADI Using SQL Trace (TCODE-ST05).
    • Finding BADI Using Repository Information System (TCODE- SE84).
    1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System->Status. Double click on the program name. Once inside the program search for ‘CL_EXITHANDLER=>GET_INSTANCE’.
    Make sure the radio button “In main program” is checked. A list of all the programs with call to the BADI’s will be listed.
    The export parameter ‘EXIT_NAME’ for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter ‘INSTANCE’ will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name.
    2. Start transaction ST05 (Performance Analysis).
    Set flag field "Buffer trace"
    Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)
    Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session.
    Push the button "Deactivate Trace".
    Push the button "Display Trace".
    The popup screen "Set Restrictions for Displaying Trace" appears.
    Now, filter the trace on Objects:
    • V_EXT_IMP
    • V_EXT_ACT
    Push button "Multiple selections" button behind field Objects
    Fill: V_EXT_IMP and V_EXT_ACT
    All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.
    So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA
    3. Go to “Maintain Transaction” (TCODE- SE93).
    Enter the Transaction VD02 for which you want to find BADI.
    Click on the Display push buttons.
    Get the Package Name. (Package VS in this case)
    Go to TCode: SE84->Enhancements->Business Add-inns->Definition
    Enter the Package Name and Execute.
    Here you get a list of all the Enhancement BADI’s for the given package MB.
    Best Regards,
    Vibha
    *Please mark all the helpful answers

  • ME21n/ ME22n BADI user exit or badi

    Hi,
    Can anybody tell me  user exit or badi  , for transaction code Me21N or Me22N ,
    Regards,
    PS

    Transaction Code - ME21N/ME22N   Create/Display 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 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
    No of Exits:         35
    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
    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
    Rewards if useful.........
    Minal Nampalliwar

  • MIRO User-Exit or BADI Name

    Hi all,
    How can i control MIRO referans field during saving Vendor Invoices? What is the name of User Exit or BADI name?
    Best regards,
    Munur EBCIOGLU

    SE18 > INVOICE_UPDATE >
    based in ur requirement you can use:
    Methods:
    CHANGE_AT_SAVE     Invoice Document at Save
    CHANGE_BEFORE_UPDATE     Invoice Document Before Update
    CHANGE_IN_UPDATE     Invoice Document During Update

  • User exit or badi for transaction IW32

    Hi all,
    I am searching for user exit or badi for Transaction IW32 but not finding as per my requirement.here in transaction IW32 if field system status(STTXT) key value is 'Released', all line item components should get displayed in display mode.it should not allow to edit or change line item components.can anyone give user exit or BADI to achieve this.
    Thanks in advance.
    Regards,
    Harshada

    Hi,
    Try to use this exit:
    Enhancement     EXIT_SAPLBSVA_001     STATTEXT     Modification exit for formatting status text lines     
    Sample code:
    IF ( sy-tcode = 'IW32') .
      DATA: lv_str1   TYPE string.
      FIELD-SYMBOLS : <fs_qmart> TYPE ANY.
      lv_str1 = '(SAPLIQS0)VIQMEL-objnr'.
      ASSIGN (lv_str1) TO <fs_objnr>.
      SELECT SINGLE inact INTO lv_inact FROM jest WHERE  objnr = viqmel-objnr
                                                     AND   stat = c_stat
                                                     AND  inact = space.
        IF sy-subrc = 0.
          LOOP AT SCREEN.
              screen-input = 0.
              MODIFY SCREEN.
            ENDIF.
          ENDLOOP.
    ENDIF.
    Alternativ badi:
    BADI     SAPLIQS0          IQS0_STATUS_MAINTAIN     Control of Changeability of User Status     
    I hope this may helpfull.
    Thanks,
    AMS

  • User Exit or Badi for CN60 transaction

    Hi
    Can anyone tell me the user exits or Badis for Tcode CN60.
    i need to Include the Comments field for the activities from CN22.soi would like to know  is there any userexit for CN60.
    Thanks
    Sowjanya

    Hi Sowjanya
    u can find BADI's in different ways...
    1>First go to any transaction->iN THE menu bar SYSTEM->STATUS->Get the program name ->double click->u will go to the program attached to the tcode.Now search term will be CALL CL_EXITHANDLER.Now u will get list of BADI'S available..
    2>Goto SE24->Give class name as CL_EXITHANDLER->Display->double click on get_instance mathod->Now u will go inside the method->Now put break point on the cl_exithandler.Now go to any transaction code and pass dat..U will see that it will be stopped on the break point which u set on the cl_exithandler...In the exit name u can find list of badi's attached to the tcode..
    There are multiple ways of searching for BADI.
    • Finding BADI Using CL_EXITHANDLER=>GET_INSTANCE
    • Finding BADI Using SQL Trace (TCODE-ST05).
    • Finding BADI Using Repository Information System (TCODE- SE84).
    1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System->Status. Double click on the program name. Once inside the program search for ‘CL_EXITHANDLER=>GET_INSTANCE’.
    Make sure the radio button “In main program” is checked. A list of all the programs with call to the BADI’s will be listed.
    The export parameter ‘EXIT_NAME’ for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter ‘INSTANCE’ will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name.
    2. Start transaction ST05 (Performance Analysis).
    Set flag field "Buffer trace"
    Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)
    Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session.
    Push the button "Deactivate Trace".
    Push the button "Display Trace".
    The popup screen "Set Restrictions for Displaying Trace" appears.
    Now, filter the trace on Objects:
    • V_EXT_IMP
    • V_EXT_ACT
    Push button "Multiple selections" button behind field Objects
    Fill: V_EXT_IMP and V_EXT_ACT
    All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.
    So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA
    3. Go to “Maintain Transaction” (TCODE- SE93).
    Enter the Transaction VD02 for which you want to find BADI.
    Click on the Display push buttons.
    Get the Package Name. (Package VS in this case)
    Go to TCode: SE84->Enhancements->Business Add-inns->Definition
    Enter the Package Name and Execute.
    Here you get a list of all the Enhancement BADI’s for the given package MB.
    The simplese way for finding BADI is
    1. chooes Tcode Program & package for that Tcode.
    2. Go to Tcode se18
    3. Press F4
    4. search by package or by program.
    reward points to all helpful answers
    kiran.M

Maybe you are looking for