cancel
Showing results for 
Search instead for 
Did you mean: 

HCM Processes and Forms - Assigning PERNR in hire process

0 Kudos

Hi all.

We're doing our first HCM Processes & Forms project where we're creating a new hire process. The process currently consist of just one step using standard services S_HIRE_ADD_FUNCTIONS (dropdown value help for fields Personnel area, personnel subarea, ee group, ee subgroup) and SAP_PA.

For the fields personnel area and ee group we've added code in the form so that on select the dependent values in personnel subarea and ee subgroup are populated. We've added the lines as described at help.sap.com.

xfa.record.CONTROL_PARAM.ISR_EVENT.value = "USER_EVENT_CHECK";

ContainerFoundation_JS.SendMessageToContainer(event.target, "submit", "", "", "", "");

Q1:

Each time we select a personell area from the dropdown (within the same session) the system grabs a new employee number (PERNR) from the number range. We're having trouble understanding why this happens. Can someone please explain why this happens?

Q2:

We want the PERNR to be assigned as the last part of the process, i.e. just before saving data to back end. Is this possible? Any suggestions will be highly appreciated!

ECC6.0/EP7.0 SP15/EA-HR 603SP09/LC Designer 7.1

Best regards

Geir

Accepted Solutions (1)

Accepted Solutions (1)

ChrisSolomon
Active Contributor
0 Kudos

Q1 - your user event is most likely triggering the other services that you are not meaning for them to triger. User Events are "tricky" at best. I posted a lot about this in another thread. Basically, your event will trigger ALL the services that are tied to the fields of your user event field group and repeat either those services "initilize" or "check" operations depending on your config. This often has bizzare and unwanted effects.

Q2 - Not sure what you mean here. I think if you fix Q1 above, you won't have much of a problem. Basically, as you enter the process, it is grabbing the next available PERNR to "hold" for you until you are done. When your process actually completes and the backend services makes the change, that PERNR should be used. Now....telling it to not bother grabbing a PERNR at all until right before the save? Not sure how (or if) that can be done.

Hope this helps.

0 Kudos

Hi Chris!

After reading your blog and one of your previous messages on the forum I was able to get the PERNR-assignment correct

Thank you!

Best regards

Geir

Former Member
0 Kudos

Hey Geir or Chris,

can you give me a hint, how you customized the PERNR assignment?

Acutally I'm facing the same situation, of getting a new PERNR during a hiring process. From the SDN I get the rumour, that it's possible to achieve a PA40 like functionality without coding (picking up PERNR automatically from the number range and reserving it).

Thanks a lot,

Peter

Former Member
0 Kudos

If you want to get a PERNR assigned during a hire process, you need to do the following:

Add the following fields to your SAP_PA service:

  • PERNR (Should already be there) - Default value: SAP_PA -- Type: DEF

  • I0001_WERKS

  • I0001_PERSG

  • I0001_PERSK

Make sure WERKS, PERSG and PERSK have default values set to them.

If you do it like this, your PERNR is assigned when you start the form. Make sure the default values you set can be set with eachother, otherwise you won't get a PERNR assigned. (You can check which values can go together by using PA40, it's the same there).

Gr,

Jaron Frenk

Former Member
0 Kudos

Thanks for the explanation Jaron.

That's the way I could finally make it. An issue I also faced, was that the PERNR was somehow overwritten by the Process Linkage to the eRec's XI process with an inital value..

Former Member
0 Kudos

Hello,

I also used SAP_PA backend service, to do hiring in SAP. But i get same error "Enter personnel number" on portal.

I have assigned madatory fields for IT0001

i.e (PERSG, PERSK, WERKS, ABKRS, ANSVH, PLANS and BTRTL)

Still i get the same error enter perosnnel no. , as personnel no is blank, i have assigned SAP_PA default value to pener field also.

Please help, to resolve this.

Answers (0)