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 ViolatedHI,
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 -
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,
SanjoyHi,
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 -
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!
MaartenHI 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
-
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
-
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?