Activating BAdi?

Dear BWers,
I have to activate a BAdi before i use the extractor 0FI_AA_11. This is a prerequisite before i use the delta extractor. What is the procedure for implementing a BAdi. Thanks in advance for all the help. (Please see below)
Thanks
Raj
Prerequisite:
Before you can use the delta extraction, you have to activate the FIAA_BW_DELTA_UPDATE BAdI. This BAdI ensures that the change tables – BWFIAA_AEDAT_TR, BWFIAA_AEDAT_AB and BWFIAA_AEDAT_AS – are updated when you update transactions, or create and change master data and annual values for assets.
Message was edited by: Raj Singh

Hi
Use trx:
SE18  - BADI Definition
SE19  - BADI Implementation
Also look at:
http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm
Reg's
Edan

Similar Messages

  • Runtime error in activation BADI (CX_HRPA_INVALID_PARAMETER)

    In activation BADI i get a runtime error using 'HR_INFOTYPE_OPERATION'
    An exception occurred that is explained in detail below.                       
    The exception, which is assigned to class 'CX_HRPA_INVALID_PARAMETER', was not 
      caught in                                                                     
    procedure "RESOLVE_EXCEPTION" "(FORM)", nor was it propagated by a RAISING     
      clause.                                                                       
    Since the caller of the procedure could not have anticipated that the          
    exception would occur, the current program is terminated.                      
    The reason for the exception is:                                               
    Ongeldige parameter EXCEPTION waarde                                                                               
    The occurrence of the exception is closely related to the occurrence of        
    a previous exception "CX_HRPA_VIOLATED_PRECONDITION", which was raised in the  
      program "CL_HRPA_MASTERDATA_FACTORY====CP",                                   
    specifically in line 6 of the (include) program                                
      "CL_HRPA_MASTERDATA_FACTORY====CM004".                                        
    The cause of the exception was:                                                                               
    Niet aan voorwaarde voldaan                                                    
      DATA: personaldatakey   TYPE bapipakey.
      DATA: return            TYPE bapireturn1.
      DATA: l_p0025           TYPE p0025.
      DATA: l_citem           TYPE t71adm09-citem.
      DATA: l_resultaat(2)    TYPE n.
    l_p0025-pernr = p0759-pernr.
    Begindatum is begindatum binnengekomen IT0759 record - 1 jaar
        CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
          EXPORTING
            date      = p0759-begda
            days      = 0
            months    = 0
            signum    = '-'
            years     = 1
          IMPORTING
            calc_date = l_p0025-begda.
    Einddatum is 31 december van het jaar binnegkomen IT0759
        CONCATENATE: p0759-endda(04) '1231'  INTO l_p0025-endda.
        l_p0025-infty = '0025'.
        IF p0759-cpamt >= 100.
    *GENERATE ERROR
        ELSE.
          l_resultaat = p0759-cpamt.
         IF l_resultaat < 10.
           CONCATENATE '0' l_resultaat INTO l_p0025-krt01.
         ELSE.
         l_p0025-krt01 = l_resultaat.
         ENDIF.
    write data
          CLEAR: return, personaldatakey.
          CALL FUNCTION 'HR_INFOTYPE_OPERATION'
            EXPORTING
              infty         = '0025'
              number        = l_p0025-pernr
              validityend   = l_p0025-endda
              validitybegin = l_p0025-begda
              record        = l_p0025
              operation     = 'INS'
              nocommit      = ''
              tclas         = 'A'
            IMPORTING
              return        = return
              key           = personaldatakey
            EXCEPTIONS
              OTHERS        = 0.
          IF NOT return-number IS INITIAL.
    GENERATE ERROR
          ELSE.
            is_ok = 'X'.
            process_standard = 'X'.
          ENDIF.

    Hello Richard
    The exception is raised in method SET_FRAMEWORK of class CL_HRPA_MASTERDATA_FACTORY. Perhaps the SAP note mentioned in the coding (on ECC 6.0) may be useful:
    METHOD set_framework.
      IF a_is_initialized = true.
    *   This indicates some complex problem which often can be easily
    *   fixed. For details see NOTE 493984 (2003).
        RAISE EXCEPTION TYPE cx_hrpa_violated_precondition.  " line 6
      ELSE.
        CALL METHOD delayed_constructor
          EXPORTING
            read_infotype     = read_infotype
            masterdata_buffer = masterdata_buffer
            additional_buffer = additional_buffer
            legacy_mode       = legacy_mode.
      ENDIF.
    ENDMETHOD.
    Regards
      Uwe

  • HR PM Activating BADI HRHAP00_BSP_TMPL page document_error.htm not opening

    Hi experts,
    We are implementing SAP PM using BSP pages and we have activated BADI HRHAP00_BSP_TMPL to call a ZHAP_DOCUMENT BSP application.
    We have already copied the CL_BSP_HAP_DOCUMENT_CO to  ZCL_BSP_HAP_DOCUMENT_CO and corrected the code to call my Zapplication.
    Anyway the document_error.htm page is not opening when an error is triggered (for example: fill obligatory field 1). Is there any other controller that I should change?
    Cheers,
    Andre Sousa

    Dear Raja ,
       I have activated all the services which are available in the SICF transaction ..
    but there are few services which mentioned in the note 517484 are not available in the SICF transactions
    there is only one node ur under /default_host/sap/public/
    but in the note there are many nodes mentioned ..
    Assignment of SAP icons
    /default_host/sap/public/bc
    /default_host/sap/public/bc/icons
    /default_host/sap/public/bc/icons_rtl
    /defaul t_host/sap/public/bc/webicons
    /default_host/sap/public/bc/pictograms
    Assignment of Web Dynpro ABAP (WDA) applications
    /default_host/sap/bc/webdynpro
    /default_host/sap/public/bc
    /default_host/sap/public/bc/ur
    /defau lt_host/sap/public/bc/icons
    /default_host/sap/public/bc/icons_rtl
    /default_host/sap/public/bc/webicons
    /default_host/sap/pu blic/bc/pictograms
    /default_host/sap/public/bc/webdynpro/* (ssr, mimes, and so on)
    /default_host/sap/public/myssocntl
    Please help

  • Error while activating badi - ME_PROCESS_PO_CUST

    hi,
    i have written the code in the process_header and process_item separately and when i try to activate the class, it is giving warning msg
    In type group MMCNT
    'In unicode programs the '-' character cannot appear in names as it does here in the name "MMCNT_EKKO-BEDAT", "MMCNT_EKKO-WKRUS",  "MMCNT_EKKO-KDATE".
    i activated it, and the class gets activated, but when i try to activate the badi, it is giving error message "Implementation class contains errors".
    How to rectify the error and check whether my badi works or not?
    plz help me.
    thanks.
    Sakthi sri.

    In class interface, properties tab, i removed the check mark of unicode checks active and now i can activate the badi.

  • Active BADI in MD04

    Hi All,
    while checking stock requirement list, I can see the indicator Badi Active checked under Forecase adn Planning Tab.  How to know which BADI is active for planning.
    Thanks and Regards
    Alex

    Hi
    There is a report SNIF which you can run in SE38 to check all implemetned BADIs, then you can simply find out what BADIs from the description and packages.

  • List of 'activated' SRM BADIs

    Hi,
    SRM 5.0, classic
    How do I get the list of 'activated' BADIs in SRM ?
    -Pranav

    View V_EXT_ACT should give you the active BADI's.
    Regards, IA

  • Using BAdI BBP_PGRP_FIND for purch.group determination

    Hello all
    For normal sc items I'd like to have one single purchasing group being determined during sc creation (by default).
    Except for described req. items, the purch. group should be determined using the normal logic based on product category and its logical backend system.
    I thought it would be fairly easy to achieve this, but the bad thing is, that when activating BAdI BBP_PGRP_FIND it automatically deactivates the standard logic which would be the one needed in case of described requirements.
    So I'm searching how to implement BAdI BBP_PGRP_FIND in a way where I can run the standard purch. group determination logic for described requirement items but to run own new determination logic for all other sc items.
    EDIT
    In other words:
    IF described req.
      do normal standard determination logic
    ELSE.
      assign single default purch.org./purch.grp.
    ENDIF.
    Somebody an idea on this one? Is there a function module / method I can call from within the BAdI to run the standard determination logic?
    Thanks for any helpful input.
    Renaud

    Me again... after some further investigations I found function module BBP_OM_FIND_SC. It returns a list of found purchasing org. / groups responsible for a specified user, product category and logical backend system.
    Hope this helps someone else one day...
    Kind regards,
    Renaud

  • Badi working only in Debug mode

    Hi experts,
    It's my first time with Badi, and I'm facing a issue I can't understand.
    I've activated badi ME_PROCESS_PO_CUST , and everything work's fine .
    From the method "Close" I call a Z... function which writes data on a custom table.
    I've tested  it and the system correctly update the table , but when I deactivate  the debug  in the badi's method , it looks like the badi is not implemented and the system doesn't pass trough the function. 
    Can somebody adress me to solve it ?
    Thank you in advance for any help.
    Ciao.

    Thank you for your help Sudhir , but the table update it's done by the custom function which should be called by the BAdI. My issue is that the BAdI's method works only if I set a break-point on it. If I do not put a break-point on the BAdI , the function is not called at all !!.
    Thanks again for your suggestion.

  • BADI Differences between 4.7 and ecc 6

    Dear experts,
    Can any one tell me the differences in BADIs in 4.7 and in ECC 6.0
    Thanks in advance
    somesh

    Hi Venkat,
    SOURCE: difference between badis in 4.7 and ECC 6.0
    The u2018BADI-su2019 (Business Add-Ins), as they exist in pre NW04s releases are now called old classic-BADIu2019s (release 4.6 ). This was the first object-oriented way to enhance the ABAP system. This, to a certain extent, allows multiple implementations with limited filter support. The classic-BADIu2019s are implemented using ABAP Objects.
    With the introduction of Enhancement framework from E.C.C 6.0 a new BADI concept in additional to the old classical BADIs has evolved called as Kernel-BADI enhancement.
    The old classic-BADIu2019s are implemented purely at the ABAP Workbench level; that is, both the definition and implementation are realized as workbench repository objects (global classes and interfaces).
    The new Kernel-BADI takes it to the ABAP language level. Because of this, the new Kernel-BADIu2019s are much faster compared to the old classic-BADIu2019s.
    There are two new ABAP statements available now to support the Kernel-BADIu2019s, namely GET BADI and CALL BADI.
    Example:
    data bd_hdl type ref to badi_name.
    GET BADI bd_hdl filters filt_1 = u2018VALUEu2019.
    CALL BADI bd_hdl->method
    exporting param_1 = 10.
    The old classic-BADI used to mix both implementation selection and method call in the same CALL METHOD statement. The implementations could only be chosen at run-time because of the above reason and due to the fact that the BADI handle could only be gotten from another method call by passing the BADI name.
    Whereas in the new Kernel-BADI, the active BADI implementations are included into the load of BADI handle at compile time and the filter criterion are expanded as IF statements. This is the reason the new Kernel-BADIu2019s are much faster than classic-BADIu2019s.
    Some of the other new features of Kernel-BADIu2019s are,
    u2022 Improved Filters with complex filter condition editor
    u2022 Stateful BADI support and Context based lifetime control
    u2022 Possibility to inherit the implementations
    u2022 Switchable using Switch Framework 9
    Have A Nice Day
    Chaitanya.

  • Difference between badis in 4.7 and ECC 6.0

    Hi ,
    What are the additional things we can do in ECC6.0 for BAdi in comparision with 4.7 .
    Thanks .

    Hi Santhosh ,
    The u2018BADI-su2019 (Business Add-Ins), as they exist in pre NW04s releases are now called old classic-BADIu2019s (release 4.6 ). This was the first object-oriented way to enhance the ABAP system. This, to a certain extent, allows multiple implementations with limited filter support. The classic-BADIu2019s are implemented using ABAP Objects.
    With the introduction of Enhancement framework from E.C.C 6.0 a new BADI concept in additional to the old classical BADIs has evolved called as Kernel-BADI enhancement.
    The old classic-BADIu2019s are implemented purely at the ABAP Workbench level; that is, both the definition and implementation are realized as workbench repository objects (global classes and interfaces).
    The new Kernel-BADI takes it to the ABAP language level. Because of this, the new Kernel-BADIu2019s are much faster compared to the old classic-BADIu2019s.
    There are two new ABAP statements available now to support the Kernel-BADIu2019s, namely GET BADI and CALL BADI.
    Example:
    data bd_hdl type ref to badi_name.
    GET BADI bd_hdl filters filt_1 = u2018VALUEu2019.
    CALL BADI bd_hdl->method
    exporting param_1 = 10.
    The old classic-BADI used to mix both implementation selection and method call in the same CALL METHOD statement. The implementations could only be chosen at run-time because of the above reason and due to the fact that the BADI handle could only be gotten from another method call by passing the BADI name.
    Whereas in the new Kernel-BADI, the active BADI implementations are included into the load of BADI handle at compile time and the filter criterion are expanded as IF statements. This is the reason the new Kernel-BADIu2019s are much faster than classic-BADIu2019s.
    Some of the other new features of Kernel-BADIu2019s are,
    u2022 Improved Filters with complex filter condition editor
    u2022 Stateful BADI support and Context based lifetime control
    u2022 Possibility to inherit the implementations
    u2022 Switchable using Switch Framework 9
    Hope its useful.
    Reward points if useful.
    Thanks ,
    Surya Pydikondala

  • BADI not access in tcode BP

    Hi Experts,
    I want to check for duplicate entries in tcode BP in CRM2007. I searched forums and most links specify bupa_addr_check. I created an implementation for this BADI and I am not able to access it. The implementation is active.
    I put an external breakpoint in class cl_exithandler in the method get_instance to know the badis/exits being called. Badi bupa_addr_check is not called.
    Is there some other way that I have to activate this badi?
    Regards,
    Abdullah Ismail

    Hi Abdullah,
    There may some other active BADI implementation for bupa_addr_check.
    So just go to se84 -> Enhancements -> Business Add-ins -> Implementation -> give bupa_addr_check in Definition Name.
    You will get all the implementation for that BADI.
    Now go to se19 and Deactivete all the other implementations.
    Then again active your implementation.
    Then it should work.
    I hope this will help you.
    Reward points, if useful.
    Regards,
    Nitin.

  • Pass PO Number from MIRO to BADI

    Hi Experts,
    I have activated BADI 'Invoice_update'. Im checking some condition in the 'CHANGE_AT_SAVE' method.
    This BADI is activated when 'SAVE' is clicked in MIRO
    I have to pass the 'PO Number' ie EBELN entered in MIRO, to BADI code to pass a query in BADI.
    How can I pass the PO number to BADI.
    Please Suggest?
    Rajiv Ranjan

    Hi Rajiv,
    You will be able to find EBELN field, if you drill down the import parameter TI_RSEG_NEW (Invoice Document Item: New).
    If the BAdI is triggered during SAVE, meaning if there is any active implementation for this BAdI, then you will get this EBELN inside the method; you dont need to pass it. You can use the value TI_RSEG_NEW-EBELN in the program.
    if you debug the BAdI, you can ensure this.
    Hope this helps.
    Sajan Joseph.

  • Multiple-Use in BADI

    Hi Friends,
                 Could any one you please let me know the purpose of Multiple-Use Atrribute in BADI.
    Awaiting for a qick response.
    Thanks in Advance
    Regards
    Tina

    Hi,
    check this sap Help..
    Multiple Usability for BADI Definitions
    Multiple use for BADI definitions means that there can be several active BADI implementations. When there is a call, they are all called up - however, in an unpredictable sequence.
    If you have multiple-use BADI definitions, the sequence must not play any role therefore. A typical example is the execution of checks before a save.
    Regards
    vijay

  • Multiple use BADIs

    Hi ABAP Gurus,
    Can someone brief a scenario in which multiple use BADI was used or will be helpful.
    Thanks,
    Soorya

    Hello Soorya
    Example of multiple-used BAdIs (ca. 850 in ECC 5.0) are:
    - BADI_MATERIAL_CHECK (Enhanced checks for material master table)
    - BADI_SD_BILLING (Billing Enhancements)
    - BUPA_PCARD_CHECK (Additional Checks for Payment Cards)
    Many, if not most, of these BAdIs are used for checking or validating data. The active implementations of such a BAdI must be independent meaning they must not rely on a specific calling order (see SAP documentation below).
    <b>Multiple Usability for BADI Definitions</b>                                                                               
    Definition                                                                               
    Multiple use for BADI definitions  means that there can be several     
        active BADI implementations. When there is a call, they are all called 
        up - however, in an unpredictable sequence.                                                                               
    If you have multiple-use BADI definitions, the sequence must not play  
        any role therefore. A typical example is the execution of checks before
        a save.
    Regards
      Uwe

  • Implement BADI MRM_MRKO_HDAT_MODIFY

    Hi,
    While trying to make a consignment settlement (Transaction MRKO) I get the message "For document type RE, an entry is required in field Reference".
    Based on my analysis I would have to implement the BADI MRM_MRKO_HDAT_MODIFY to solve this problem.
    Could you please guide me through how could the badi be implemented and what code I must put in this implementation? I must not make any changes to the customization.
    Regards,
    K

    Hello Keethu
    Within report RMVKON00 (tcode MRKO) the routine BADI_HEADERDATA_MODIFY triggers the BAdI:
    *&      Form  BADI_HEADERDATA_MODIFY
    *  in this BAdI the vendor and the invoice type can be changed
    FORM badi_headerdata_modify TABLES   it_rkwa  TYPE typ_tab_rkwa
                                USING    i_bukrs  LIKE bkpf-bukrs
                                CHANGING x_blart  LIKE t169f-blart
                                         x_lifnr  LIKE rkwa-lifnr
                                         x_fehler TYPE c
                                         s_msg    TYPE typ_msg.
      CALL FUNCTION 'MRMBADI_MRKO_HDAT_MODIFY'
        EXPORTING
          i_bukrs    = i_bukrs
          i_lifnr    = x_lifnr
          i_blart    = x_blart
          ti_rkwa    = it_rkwa[]
        IMPORTING
          e_lifnr    = x_lifnr
          e_blart    = x_blart
        EXCEPTIONS
          badi_error = 01.
    The signature of this function module (which call an active BAdI implementation) you can see already how the single method of this BAdI works:
    - based on your input (company code, vendor, document type and Consignment Withdrawals) you may change either the vendor, the document type or both.
    Based on the functional requirements you can easily implement the logic for the BAdI method.
    Regards
      Uwe

Maybe you are looking for

  • NEW CELL and NEW LINE

    Hi, I am not clear about NEW CELL and NEW LINE in The Main window -> Table -> Footer -> Output options -> Output Table.  Could any one help in explaining exactly what is the purpose of it. Thanks Ram

  • In which table production order planned cost and actual cost i can see?

    Dear PP Guru,s, from which table i can see productuion order planned and actaul cost. i checked following tables AUFK, AFVC, AFVV, CAUFV, AFRU, AFKO, AFPO. but i did not found planned cost and actual cost field. is there any other way to get this dat

  • Storage Space Server

    If the space of the windows storage space server is full, is it possible to setup another windows storage space server and combine the new one to original storage pool?

  • I look up order number but nothing coming up!!

    I looked up the order number, checked out as a guest, {removed per forum guidelines}, email is {removed per forum guidelines}. I did not recieve confirmation nor do i know the status of this order number.

  • Heeeelllppp!!!!

    Hellooo, ive got the iphone 4 and come across a problem, ive set up an email account (hotmail) i started recieving the emails, then after a while i noticed i wernt recieving any sms messages....hmm....i tinkered about for a bit and ended up disabling