Skip to Content
0
Former Member
Mar 16, 2010 at 10:38 AM

Using FM HR_INFOTYPE_OPERATION to update infotype 0001.

452 Views

We're using FM HR_INFOTYPE_OPERATION to update the infotype 0001 (Organisation). We basically have the Cost center field grayed out on the entry screen so can not update it via BDC, which the cirrent method that we use to create new employees, based on data passed in from a third party system. When then attempt to update the employee record (using Copy) and the FM mentioned.

We first get the details of the infotype using FM HR_INFOTYPE_GETDETAIL, and this work perfectly, returning all the information required. We the update the structure returned by the RECORD parameter and then use the FM HR_INFOTYPE_OPERATION, like so:

call function 'HR_INFOTYPE_OPERATION'

exporting

infty = '0001'

number = gs_p0001-pernr

SUBTYPE =

OBJECTID =

lockindicator = 'X'

validityend = '99991231'

validitybegin = gs_p0001-einda

RECORDNUMBER = '001'

record = gs_p0001

operation = 'COP'

nocommit = 'X'

importing

return = gt_bapireturn1

key = gs_bapipakey

exceptions

others = 1.

However, we receiving an error in the gt_bapireturn1 itab basically giving the error PG 184. When I look up the error it basically says that to update this info type we need an exclusive lock, which I would have thought exists when using the LOCKINDICATOR parameter. The previous FM ( HR_INFOTYPE_GETDETAILS) returns blank against the SPRPS fileld (Lock indicator) when reading the infotype data, so it's not previously locked or anything.

We're using version 4.0b, which I know is pretty old, but surely this update should work.

Has anyone encountered this problem before, and, do you think I should be able to update this field even though it's grayed out on the screen ?.

Jason

Edited by: Jason Stratham on Mar 16, 2010 11:41 AM