[Erp5-dev] Recruitment process, positions, position histories

Jacek Medrzycki jacek at erp5.pl
Wed May 9 13:59:32 CEST 2007


We are going to implement generic recrutiment system (as part of HR) and 
we want to discuss one issue we have found.

There is a Position (in a company) which can be occupied or vacant (it 
can also be closed when a company decides it's no longer useful, but 
that's not important now).

The Position contains Position History objects (like Person contains 
Career objects). There is a default_position_history (like 
default_career) object which represents the current state of this 
Position (the Person's Career object is linked to this 
position_history). Other Position History objects are for historical 
reasons.

Now - when a position is going to be vacant, the recruitment process 
begins. However, the Position is not vacant at the moment of the 
recruitment process, becouse the current employee is still working - he 
would stop working in a few weeks or months. So we need a way to 
indicate in the system the fact that the Position is occupied until - 
say -31st of July and we are looking for a new employee which starts to 
work since the 1 of august.

The idea is to create a new Position History object with magical id: 
pending_position_history, which represents the future state of the 
Position, like default_position_history represents the current state of 
it. We can then conduct recruitment process for that Position, linking 
Position Opportunities to the pending_position_history. When recuritment 
process ends and a future employee is selected, his Career is linked to 
that pending_position_history. We can than easily distinguish between 
Person A, who is current employee for the Position and Person B who is 
the future employe for the same Position and (as Postion History has - 
among others - start and stop date) when one stops to work and the 
second starts.

There should also exist a mechanism - similar to Career_shiftDefault - 
which pushes current default_position_history to archive and renames 
pending_position_history to default_position_history, so we can easily 
switch it when a given date arrives.

Is our approach correct?

Regards
Jacek




More information about the Erp5-dev mailing list