I am trying to INSERT a new entry into infotype 0181 via HR_INFOTYPE_OPERATION, but it ended up with an error “A complex application error has occurred”.
The employee has one unlocked record and i am trying to insert one more locked record with different date range (refer to the sample code). When i tried to execute in the dialog mode 2, the IT0181 showed an information message “Assignment to feature 25FUN did not take place” and created successfully. But the error appears only in background mode and that too for few employees only.
Will this be a problem with the code (refer to the sample code)? OR
Will this be a problem with missing configuration / infotype details?
Can anyone help me to resolve it?
employee is locked using
p0181-PERNR = ‘92000000’.
p0181-INFTY = ‘0181’.
p0181-ENDDA = ‘99991231’.
p0181-BEGDA = ‘20120601’.
p0181-SIGRP = ’01’.
p0181-ADID1 = ’03’.
p0181-ADNA1 = ‘MBMF’.
p0181-PYAL2 = ‘X’.
p0181-BETR1 = ‘200.00’.
p0181-WAER1 = ‘SGD’.
p0181-ADID2 = ’02’.
p0181-ADNA2 = ‘SINDA’.
p0181-PYAL4 = ‘X’.
p0181-BETR2 = ‘100.00’.
p0181-WAER2 = ‘SGD’.
CALL FUNCTION ‘HR_INFOTYPE_OPERATION’
infty = ‘0181’
number = ‘92000000’
lockindicator = ‘X’
validityend = ‘99991231’
validitybegin = ‘20120601’
record = p0181
operation = ‘INS’
nocommit = ‘X’
dialog_mode = lv_mode
tclas = ‘A’
return = ls_return
key = ls_key.
IF ls_return-type EQ ‘E’.
Employee is unlocked using
I´m facing a similar problem getting an complex error(PG 428) when using HR_INFOTYPE_OPERATION to update infotype 0185 in background.
In dialog mode everything works fine.
Any solution for this problem?
Just want to avoid using some sort of batch input instead of using HR_INFOTYPE_OPERATION.
thanks in advance
Take a look at function documentation.
There are restrictions on screen PBO.
Violation leads to error message 428(PG).
I got the same error. The problem was that the field SUBTY was not filled. Try to fill the field SUBTY of the structure with the same value like field ICTYP
Even I am facing the issue when updating infotype 0185. Have checked Boris’s reply but cannot see and messages raised or leave screen in PBO.
It works perfectly in Mode ‘2’ and the records are saved when we hit the save button.
One thing that I have noticed is that in mode 0, the fcode set is ‘OKEY’ and not ‘UPD’. So with OKEY it expects the PBO screen to be called again and hence HR_MAINTAIN_MASTERDATA fails with ‘No batch input for screen…’ (PBO Screen) and hence error 428(PG) is set.
Thanks in advance
Apart from the reasons ” messages raised or leave screen in PBO ”
that may leads to error message 428(PG) there is another reason you should check
(the first item in the function documentation)
“The screens for individual infotypes can not overwrite the transferred data for PBO.”
For example in user exit EXIT_SAPFP50M_001
that allows you to enter customer default values in the single screen when you are
creating or copying infotypes
Did you solve the problem
You must be logged in to reply to this topic.