Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Problem with FM 'HR_MAINTAIN_MASTERDATA'

Former Member
0 Likes
1,067

Hi,

I wrote in ABAP my Z* program which collects and save some data about new hiring employment.

In this program I'm using FM 'HR_MAINTAIN_MASTERDATA' to save data.

It looks like this:

CALL FUNCTION 'HR_MAINTAIN_MASTERDATA'

EXPORTING

pernr = '00000000'

massn = '01'

actio = 'INS'

tclass = 'A'

begda = empl_date

endda = '99991231'

seqnr = '000'

werks = 'C101'

persg = '1'

persk = '11'

plans = '00000000'

dialog_mode = '0'

luw_mode = '3'

no_existance_check = 'X'

no_enqueue = ''

IMPORTING

return1 = l_return1

hr_return = l_hr_return

TABLES

proposed_values = l_proposed_values

modified_keys = l_modified_keys.

If I have dialog_mode = '1' program asks me abot data from IT0021 and IT0022. And even when I don't fill this data (press 'BACK' and leave screen) Employee data is saved (without it0021 and it0022 data) and pernr is returned.

If I have dialog_mode = '0' data are not save and l_return1 returns E 428 'A complex application error has occurred'.

What should I do to save data with dialog_mode = '0'. My data id IT0000, IT0001, IT0002, IT0006, IT0009, IT0016.

Regards,

Joanna

3 REPLIES 3
Read only

Former Member
0 Likes
735

Have had the same problem

My solution was Hiring in batch input... then use of function module HR_INFOTYPE_OPERATION....

Only way i found out

Read only

Former Member
0 Likes
735

Has someone another propose?

J.

Read only

Former Member
0 Likes
735

Hello,

I faced the same problem.

Go to transaction SU3, select Parameters tab and change the MOL/UGR value(s) to the respective MOLGA value of the employee.

Eg: If you are dealing with a french employee, change the value(s) in SU3 to '06'; For an US employee, change the value(s) to '10' and so on.

Let me know if this helps.