HRECM00_ACTIVATION

Hi All,
I am able to trigger  HRECM00_ACTIVATION BAdi and method ACTIVATE_PROCESS but the other method (CALC_SAL_ADJUSTMENT) of this BAdi is not getting triggered and also in the method ACTIVATE_PROCESS I am not able to use the hr_infotype_operation FM to update the IT0008. Is there any other way to update the IT0008 (Other then BDC).
Help is really appreciated.
Thanks and Regard.
Anees Ahmed Jawad

Refer SAP note: 878336
-Sarath

Similar Messages

  • HR_MAINTAIN_MASTERDATA in HRECM00_ACTIVATION Method ACTIVATE_PROCESS

    Hi all,
    I am using the FM HR_MAINTAIN_MASTERDATA to update a custom infotype during ECM avtivation process. The coe in this FM is going for a dump. When I copy past the code in a regular report program  this runs with out any issues.
    raisisng a ticket with SAP did not solbe the issue as SAP wahsed off the hands saying that this FM is not releases. I have been using this FM for quite a while W/O issues. HAs any one come across a similar issue here. My main problem is that other FMs like HR_INFOTYPE_OPERATION also have status  " not released ". So I dont know what FMs should be used to update the custom IT in ECM activation process. Any thoughts?
    I get the error
      The exception 'CX_HRPA_VIOLATED_PRECONDITION' was raised, but it was not caught
       anywhere along
      the call hierarchy.
      Since exceptions represent error situations and this error was not
      adequately responded to, the running ABAP program
       'CL_HRPA_INFOTYPE_FACTORY======CP' has to be
      terminated.
    at can you do?
      Note down which actions and inputs caused the error.
      To process the problem further, contact you SAP system
      administrator.
      Using Transaction ST22 for ABAP Dump Analysis, you can look
      at and manage termination messages, and you can also
      keep them for a long time.
    ror analysis
      An exception occurred that is explained in detail below.
      The exception, which is assigned to class 'CX_HRPA_VIOLATED_PRECONDITION', was
       not caught in
      procedure "INITIALIZE_PS_ADAPTER" "(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:
      Precondition Violated

    HI,
    Put a break point in the FM while executing the application
    and chk the sy-subrc code value .
    This dump will occur mostly when data type conflict is there.
    But it will not show when u execute from se37 directly.
    Thanks,
    Divya.S

  • Regarding the usage of HR_INFOTYPE_OPERATIONS function module in ECM badi i

    Hi All,
    We have requirement where we need to update the infotype 0015 while implementing the badi 'HRECM00_ACTIVATION'.
    To achieve this functionality we are calling the HR_INFOTYPE_OPERATION function module to update the infotype 15. But we are getting the runtime error.
    Can some one suggest how to solve this issue.
    Thanks & Regards,
    Sreelatha Gullapalli.

    thanx for ur reply...
    But i want to use Transmission Medium 5 only as i have the requirement to Send the data as an EMAIL or FAX depending on the Communication Method specified in the Partner Number.
    Actually SAP Help also explains the usage of this medium using the same requirement as mine... but then it never anywhere specified on how the Print Program will be...
    I also checked the standard output type CPAC used in Application V7 to which transmission medium 5 is assigned. And the print program assigned to this output type has no coding on sending the email using the FM. So i am very very confused.... I have seen few postings in this forum on this topic.. but not clear enuf to clarify my confusion...
    Kind Regards,
    Tanuja

  • Infotype 0008 reecord creation in a BAdI - Issue

    I am implementing the method 'CALC_SAL_ADJUSTMENT' of the BAdI definition 'HRECM00_ACTIVATION'. As per the requirement, I have to copy the record in the importing parameter IT0008_OLD, make some modifications to the record and then pass it on to the exporting parameter IT0008. Simultaneously, a new infotype 0008 record has also to be created based on the data in the new record IT0008. I tried using the FM 'BAPI_BASICPAY_CREATESUCCESSOR', since this will also delimit the previous record.
    **Create a new Infotype 0008 record, delimiting the previous record
    CALL FUNCTION 'BAPI_BASICPAY_CREATESUCCESSOR'
    EXPORTING
    employeenumber = pernr
    subtype = it0008_old-subty
    validitybegin = effdt
    validityend = c_endda
    payscaletype = it0008_old-trfar
    payscalearea = it0008_old-trfgb
    payscalegroup = it0008_old-trfgr
    payscalelevel = it0008_old-trfst
    nextincrease = it0008_old-stvor
    localallowlevel = it0008_old-orzst
    partnership = it0008_old-partn
    currency = it0008_old-waers
    comparisonpayscltype = it0008_old-vglta
    comparisonpaysclarea = it0008_old-vglgb
    comparisonpaysclgrp = it0008_old-vglgr
    comparisonpayscllvl = it0008_old-vglst
    compnextincrease = it0008_old-vglsv
    capacityutillevel = it0008_old-bsgrd
    hoursworkedperperiod = it0008_old-divgv
    annualsalary = v_annsal
    casegroupcatalog = it0008_old-falgk
    casegroup = it0008_old-falgr
    currencyannualsalary = it0008_old-ancur
    reason = it0008_old-preas
    nocommit = space
    IMPORTING
    return = wa_return
    employeenumber = v_empno
    subtype = v_subty
    objectid = v_objectid
    lockindicator = v_lockind
    validitybegin = v_valbegin
    validityend = v_valend
    recordnumber = v_recordno
    TABLES
    wagetypes = it_bwagetype.
    However, it is raising an exception 'cx_hrpa_violated_precondition', which is not caught and hence a run-time error.
    I tried using the above function module in a report program and it worked fine.
    Can anybody please let me know, whether it is possible to create an infotype 0008 record inside the above BAdI implementation? and if yes, where am I going wrong?
    Thanks in advance.
    Sujit.

    put the BAPI call as a BACKGROUND TASK & try it..
    ~Suresh

  • Can ECM work with T510?

    I am implementing ECM in an organization where they have their salary structure in Pay Scale (T510). The organization is not ready for migration to T710. Can ECM run on T510? I need this information ASAP as we are in a critical phase.
    Thanks and regards,
    Sanjoy

    Hi,
    Please let me update this post (in time).
    The problem is not using T710 or T510, however you must thing about Inditect or Direct valuation.
    In the direct valuation the amounts are saved in table PA0008 from infotype 0008 and could be read by ECM.
    In the indirect valuation the amounts are stored in tabele T510, T528C, T511k, etc, and cannot be read by ECM without a enhancement. Is very common work with INVAL through T510 but it is not exclusive.
    You must implement the Badi HRECM00_ACTIVATION to work with indirect valuation.
    You must use this Badi too, if you consider a salary increase for multiples waretypes.
    Regards,
    Eduardo Marcelino

  • ECM BADI Problem

    Can anyone supply some custom code that they use in the HRECM00_ACTIVATION-ACTIVATE_PROCESS method to update infotypes? I've been getting the following errors when trying to create an infotype 0000 record in the badi:
    The exception 'CX_HRPA_VIOLATED_PRECONDITION' was raised but was not caught at any stage in the call hierarchy.

    Hello UWE,
    Here is the code in my ACTIVATE_PROCESS method. There is no error checking yet as I was just beginning with an attempt to create a new infotype 0000 Action record and was getting those exceptions. Any help would be appreciated.
    method if_ex_hrecm00_activation~activate_process .
      constants:
        c_abkrs_u1         type abkrs   value 'U1',
        c_abkrs_u2         type abkrs   value 'U2',
        c_abkrs_u3         type abkrs   value 'U3',
        c_abkrs_u4         type abkrs   value 'U4',
        c_massn_z4         type massn   value 'Z4',  "Change in Pay
        c_massg_10         type massg   value '10',  "Merit/Equity
        c_endda_1231       type datum   value '99991231',
        c_actio_ins        type actio   value 'INS',  "Create
        c_citem_us(2)      type c       value 'US',
        c_citem_uq(2)      type c       value 'UQ',
        c_infotype_0000(4) type c      value '0000',
        c_is_ok            type boole_d value 'X',
        c_is_not_ok        type boole_d value ' '.
      data: p0000 type standard table of p0000.
      data:
        w_rec_it0000      type p0000,
        w_rec_it0001      type p0001,   "Infotype 0001 (Org. Assignment)
        w_rec_t549a       type t549a,   "Payroll areas
        w_rec_t549q       type t549q,   "Payroll Periods
        w_is_ok           type boole_d,
        w_return          type bapireturn1,
        w_infty_key       type bapipakey,
        w_message_handler type ref to cl_hrpa_message_list.
    set is_ok export parameter to true to start with
      is_ok = c_is_ok.
    For each IT0759 record with a value of USnn or UQnn (where 'nn' =
    last two digits of the current plan year) in field IT0759-CITEM
      if p0759-citem(2) eq c_citem_us or
         p0759-citem(2) eq c_citem_uq.
    Look up the employees current Payroll Area from IT0001-ABKRS
        call function 'HR_ECM_GET_IT0001'
          exporting
            pernr           = p0759-pernr
            key_date        = sy-datum
            message_handler = message_handler
          importing
            p0001           = w_rec_it0001
            is_ok           = w_is_ok.
    If the payroll area is equal to U1, U2, U3 or U4 then:
        if ( w_rec_it0001-abkrs eq c_abkrs_u1 or
             w_rec_it0001-abkrs eq c_abkrs_u2 or
             w_rec_it0001-abkrs eq c_abkrs_u3 or
             w_rec_it0001-abkrs eq c_abkrs_u4 ).
    Use the payroll area to look up the Period Parameter from V_T549A field PERMO
          clear w_rec_t549a.
          select single permo from t549a
            into w_rec_t549a-permo
            where abkrs eq w_rec_it0001-abkrs.
    Select the Payroll Period whose start date (BEGDA) is immediately
    after the effective date on IT0759-EFFDT
          clear w_rec_t549q.
          select single * from t549q
            into w_rec_t549q
            where permo eq w_rec_t549a-permo
              and pabrj eq p0759-begda(4)
              and begda ge p0759-begda.
          CALL FUNCTION 'HR_READ_INFOTYPE'
            EXPORTING
              pernr           = p0759-pernr
              infty           = c_infotype_0000
              endda           = c_endda_1231
            TABLES
              infty_tab       = p0000
            EXCEPTIONS
              infty_not_found = 1
              OTHERS          = 2.
        sort descending to put the latest record first
          sort p0000 descending.
        read the first record into the IT0000 record structure
          read table p0000 into w_rec_it0000 index 1.
    Initial Field - the system will populate
          clear: w_rec_it0000-aedtm,
                 w_rec_it0000-uname.
          w_rec_it0000-begda = w_rec_t549q-begda.
          w_rec_it0000-massn = c_massn_z4.
          w_rec_it0000-massg = c_massg_10.
    This will lock employee for update
          CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
            EXPORTING
              number = p0759-pernr
            IMPORTING
              return = w_return.
          call function 'HR_INFOTYPE_OPERATION'
            exporting
              infty         = c_infotype_0000
              number        = p0759-pernr
              validityend   = c_endda_1231
              validitybegin = w_rec_t549q-begda
              record        = w_rec_it0000
              operation     = c_actio_ins
            importing
              return        = w_return
              key           = w_infty_key.
    This will unlock employee record
          call function 'BAPI_EMPLOYEE_DEQUEUE'
            exporting
              number = p0759-pernr
            importing
              return = w_return.
        endif.
      endif.
    endmethod.
    Steve

  • ECM - updating wagetype IT0008 with parttime correction

    Hi,
    We currently use BAdI hrecm00_activation to update wagetype the "Monthly wage full-time" in IT0008. The wage type "Monthly wage part-time" is updated, taking the employment % into account automatically (user exit IT0008). Therefore we cannot update the "Monthly wage part-time" directly.
    As we do not want to distribute budgets in the portal based upon full-time but part-time, we need to adjust the process of updating the wage type. <u>We need to update the wage type "Monthly wage full-time" taking the employment % into account</u> (Comp. Amount IT0759 * 100 / BSGRD (part-time % IT0008 capacity utility level)).
    Does anybody know how this adjustment can be made? Can this be done with the hrecm00_activation BAdI or, if not, are there any other alternatives?
    Thanks in advance!
    Maarten

    HI All
    This happens for Hourly employees for whom the currncy is configured as USD4.
    For regular Salaried employees currency is USD   and the config is in USD(t510K) its normal.

  • Help needed to find out BADI's for Transaction "PECM_CHANGE_STATUS"

    Hi folks,
    I was told to use BADI "HRECM00_ACTIVATION" and code in the Method "CALC_SAL_ADJUSTMENT" within it. After coding and executing my Transaction "PECM_CHANGE_STATUS" it does'nt stop at the method (inspite of keeping a breakpoint).
    So, after suggestions from some of you folks i tried the below 2 methods to find out the relavant BADI's
    1) First way, putting a breakpoint at "CALL METHOD cl_exithandler=>get_class_name_by_interface" via SE24 and found only one BADI in exit_name which is "HRPAD_SUBTY_CHECK".
    2) Other way i checked the Package of suggested BADI "HRECM00_ACTIVATION" , which i found as "PAOC_ECM_ADM_BL". ANd when i go to SE80, for this package when i check the Enhancements section->Classic BADIs. i found about 15 BADI's ..Is this the right way to check for a BADI ? If not, how to know the relavant BADI's for my transaction "PECM_CHANGE_STATUS"
    Awaiting for response. Thanks!

    Hi,
      1. The BADI "HRECM00_ACTIVATION" does exist in this transaction, did you activate the implementation after writing the code?  The method is called in the FM HR_ECM_CALC_SAL_ADJUSTMENT.  You can try executing with breakpoint at the FM HR_ECM_CALC_SAL_ADJUSTMENT.
      2. You can try using the program in the code gallery to find user exit/Badi. Link: [Badi/exit finder|https://wiki.sdn.sap.com/wiki/display/Snippets/ToFindoutUserexitsandBAdI%27s%28New+format%29].
      3. In case you are working on ECC 6.0 the first point ( "CALL METHOD cl_exithandler=>get_class_name_by_interface"  ) mentioned by you might now return all the BADIS, as SAP has introduced a new method by which BADIS are invoked. You can try searching for Kernel Badi in SAP Help.
    Regards,
    Sai

Maybe you are looking for

  • Automatic clearing fro customer using SAPF124(f.13)

    Dear All, I would like to know if can we clear open items of one time customers using F.13 . I have configured in table TF123 (OB74) still the open items were not picking in f.13 and specifies that No clearing procedures were carried out. Let me know

  • Custom sort order?

    Hi, I'd like to be able to sort my itunes library by album artist album, then track no. This so that I can use coverflow to browse my music in artist order rather then in album order But Itunes seems to insist on sorting by album artist then album an

  • Bank of America App?

    Has anyone been able to get this app installed and working on the Blackberry? I have the Z10. I go through the process of downloading the app. Looks like it is going to work but then at the top of the screen it says this app is not available for this

  • Backups check in no archivelog mode -Question

    I am trying to figure either DB is backedup or not, I checked its logfiles, it did'n shutdown from last one month, and running in no-archivelog mode.....I can assume its not being backed up from last month , make me right if i am not........... I hav

  • Install hp ojpro 8600 on drive D

    Hello, When I install the basic driver for the hp oj pro 8600, it installs on drive C by default. It does not provide an opton to install on a different drive. Is it possible to reinstall on drive D?