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

Using BAPI to create Personnel Number.

Former Member
0 Likes
2,825

Greetings SAP Gurus,

I have a requirement to create and fill infotypes 0000, 0001 and 0002 from a legacy system flat file. While searching the forums i have seen a few posts recommending the use of HR_MAINTAIN_MASTERDATA. Will this actually create a Personnel Number? If not are there any HR BAPIs that will?

My plan right now is to run a BDC for infotype 0000, use HR_MAINTAIN_MASTERDATA to fill most of the Infotype 0001, use BAPI_PERSDATA_CREATE to fill most of Infotype 0002 and finally use HR_INFOTYPE_OPERATION to fill in any fields not covered by the previous BAPI and FM. Is there a better way to approach this problem?

Thanks for your time and knowledge,

Alex ODell

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
2,314

Hi,

Why not simply everything with either BDC or HR_MAINTAIN_MASTERDATA.

You do have to take care of which customizing settings have been done when you enter the action of creating a personnel number.

It's some time I have worked properly in HR-PA, but I think in the infogroup settings you can define which infotypes are needed when you carry something out like a hiring action.

Or do you want to do it without actions?

Kind regards, Rob Dielemans

6 REPLIES 6
Read only

Former Member
0 Likes
2,315

Hi,

Why not simply everything with either BDC or HR_MAINTAIN_MASTERDATA.

You do have to take care of which customizing settings have been done when you enter the action of creating a personnel number.

It's some time I have worked properly in HR-PA, but I think in the infogroup settings you can define which infotypes are needed when you carry something out like a hiring action.

Or do you want to do it without actions?

Kind regards, Rob Dielemans

Read only

0 Likes
2,314

Hi Rob,

Thanks for the reply. BDC would have been my first choice but i have been told by the powers that be to stay away for using that solution. So it looks like i will either be implementing the data upload with HR_INFOTYPE_OPERATION or HR_MAINTAIN_MASTERDATA. Is one preferable to the other for any reason? Could you provide any sample code with the use of either FM in creating a new personnel? Thanks again for your help and insight.

Regards,

Alex

Read only

former_member226519
Active Contributor
0 Likes
2,314

there is a number range object for personnel numbers, transaction PA04.

the ranges can be set externally or internally. if you do not provide a personnel number with the hiring action (subtype of infotype 0000) the pernr is taken from the internal part of the number range.

it is recommanded to create the action type with infotype order 0000 -> 0002 -> 0001 because there are fields ENAME and SNAME in infotype 0001filled automatically from infotype 0002.

infotype 0003 is created automatically in the background as well as objects P (Person) and CP (Central Person) with relations in infotypes 1000 and 1001.

Read only

0 Likes
2,314

Hi Volker,

I believe the number range for employee numbers is internal and that is fine for my requirements. The sequence of infotypes has been dictated by the company and i have no input on that aspect. I am required to fill in Infotypes 0000, 0001, 0002 and 0006. It seems the best way to accomplish this is with FM's HR_MAINTAIN_MASTERDATA or HR_INFOTYPE_OPERATION. Do you have any experience with either of these that you could share? Thanks for your help in this matter.

Regards,

Alex

Read only

0 Likes
2,314

I think you will have to use HR_INFOTYPE_OPERATION because it is an hiring action you have to perform.

As far as I know HR_MAINTAIN_MASTERDATA can handle one infotype only and not a sequence.

There are some fields of infotype 0001 (PERSG, PERSK, WERKS, PLANS) that are maintained via structure PSPAR.

Read only

0 Likes
2,314

I'm running into the same issues. Can you tell me how you solved this issue?

With kind regards,

Nic