Hello Experts,
I am unable to update the EEAMT, that is, (pre-tax contribution) while using the HR_INFOTYPE_OPERATION .
The value is passed to the FM, however it fails in the standard method - HR_INFOTYPE_OPERATION .
While debugging the transaction, the value exists at:
ASSIGN record TO <record> CASTING TYPE (tabname).
But in the following loop the amnt exists in C(255), and the value is not getting condensed.
* loop at nametab. "XDPK000210
LOOP AT NAMETAB WHERE TABNAME = TABNAME.
Please help.....
Code snippet:
LOOP AT lt_pa0169 INTO ls_pa0169.
IF sy-subrc = 0.
ls_p0169-pernr = lv_pernr.
ls_p0169-infty = '0169'.
ls_p0169-pltyp = lv_subty = ls_pa0169-pltyp.
ls_p0169-bplan = ls_pa0169-bplan.
ls_p0169-begda = lv_begda = ls_pa0169-begda.
ls_p0169-eeamt = ls_pa0169-eeamt. "this is what has to be refelected...
ls_p0169-curre = 'USD'.
ls_p0169-endda = lv_currdate. "'20141231'.
ENDIF.
lv_endda = '99991231'.
CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
EXPORTING
number = lv_pernr.
CALL FUNCTION 'HR_INFOTYPE_OPERATION' "Fails here
EXPORTING
infty = '0169'
number = lv_pernr
subtype = lv_subty
validityend = lv_endda
validitybegin = lv_begda
record = ls_p0169
operation = 'MOD'
tclas = 'A'
IMPORTING
return = w_return.
COMMIT WORK.
CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
EXPORTING
number = lv_pernr.
ENDLOOP.
Many thanks,
Neethu