Skip to Content
0
Former Member
Sep 06, 2007 at 07:37 PM

while updating infotype i was throughen with an error

49 Views

Hi Experts,

while I am updating the infotype 0170 with the hr_infotype_operation. i was given an error stating 'EPG 009No data stored for 0170 in the selected period'. How to resolve this. Please help me.

My code is as follows

ls_0170 like p0170.

CALL FUNCTION 'HR_READ_INFOTYPE'

EXPORTING

pernr = ls_pernr-pernr

infty = '0170'

  • begda = '20070101'

  • endda = '20071130'

IMPORTING

subrc = l_subrc

TABLES

infty_tab = p0170

EXCEPTIONS

infty_not_found = 1

OTHERS = 2.

IF l_subrc = 0.

IF p0170-endda = '20071130' AND p0170-begda = '20070101'.

  • locking the pernr ********************

CALL FUNCTION 'BAPI_EMPLOYEET_ENQUEUE'

EXPORTING

number = p0170-pernr

validitybegin = p0170-begda

IMPORTING

return = l_return.

  • change the end date to 12/31/2007*************

IF l_return IS INITIAL.

p0170-endda = '20071231'.

  • MODIFY p0170 INDEX 1 TRANSPORTING endda.

ls_p0170 = p0170.

CALL FUNCTION 'HR_INFOTYPE_OPERATION'

EXPORTING

infty = '0170'

number = p0170-pernr

record = ls_p0170

operation = 'MOD'

IMPORTING

return = l_return.

ENDIF.

  • unlocking the pernr ********************

IF l_return IS INITIAL.

CALL FUNCTION 'BAPI_EMPLOYEET_DEQUEUE'

EXPORTING

number = p0170-pernr

validitybegin = p0170-begda

IMPORTING

return = l_return.

ENDIF.

ENDIF.

IF p0170-endda = '99991231' AND p0170-begda = '20071201'.

  • locking the pernr ********************

CALL FUNCTION 'BAPI_EMPLOYEET_ENQUEUE'

EXPORTING

number = p0170-pernr

validitybegin = p0170-begda

IMPORTING

return = l_return.

***modify a record with begin date 1/01/2008 and end date

***12/31/9999

IF l_return IS INITIAL.

p0170-begda = '20080101'.

  • MODIFY p0170 INDEX 1 TRANSPORTING begda.

ls_p0170 = p0170.

CALL FUNCTION 'HR_INFOTYPE_OPERATION'

EXPORTING

infty = '0170'

number = p0170-pernr

record = ls_p0170

operation = 'MOD'

IMPORTING

return = l_return.

ENDIF.

  • unlocking the pernr ********************

IF l_return IS INITIAL.

CALL FUNCTION 'BAPI_EMPLOYEET_DEQUEUE'

EXPORTING

number = p0170-pernr

validitybegin = p0170-begda

IMPORTING

return = l_return.

ENDIF.

ENDIF.

ENDIF.