The section describes how the hire process works. Every step in the hire process is represented as an integer. Positive odd numbers represent requests. Positive even numbers are successes, and negative even numbers are failures. Negative odd numbers are reserved for process states and processing errors. Processes can loop, branch off into sub-processes, and merge again downstream.
Figure 5-3 is a graphical representation of the hire process with all of the variable conditions included.
Figure 5-3 Hire Process
This section contains a description of each state of the hire process. The hire process refers to states that occur in the employee life cycle process (ELCP) as well as to global configuration values (GCVs) that are set on the drivers. For more information on the ELCP, see Section 5.4, Employee Life Cycle Process.
Description: The hire process is enabled.
Conditions: The required conditions for the hire process to reach the current state:
No hire process is currently running for the object.
The ELCP state is startHire.
The object has a hire date (DirXML-HireDateStr).
PID != -1
Description: A transitional state to the workflowScheduled (10) state in the hire process.
Conditions: The required conditions for the hire process to reach the current state.
The current state is enabled (0).
ELCP is at startHire.
The GCV is set to True.
Actions: The expected actions from the components of the solution.
The business logic driver generates a random password for new employee if the GCV is set to True.
The business logic driver schedules confirmation workflows by using work orders.
The work order driver generates work to do objects when the scheduled date becomes current.
Description: The workflow is scheduled to run n number of days before the hire date. The value n is set through the GCV on the driver set.
Conditions: The required condition for the hire process to reach the current state.
A valid work order is created
Actions: The expected action from the components of the solution.
The business logic driver starts the confirmation workflow.
Description: A transitional state prior to the workflowStarted (20) state.
Conditions: The required condition for the hire process to reach the current state.
The current state is workflowScheduled (10).
Description: The workflow is started and running.
Conditions: The required condition for the hire process to reach the current state.
The work order is deleted.
Description: A transitional state to the confirmed (30) state in the hire process.
Conditions: The required condition for the hire process to reach the current state.
The current state is workflowStarted (20).
Actions: The expected actions from the components of the solution.
The manager claims and approves or declines the confirmation workflow.
If the workflow is approved, the User Application driver grants the confirmed entitlement.
If the workflow is declined, the User Application driver the confirmed entitlement.
Description: The confirmation workflow is approved. This state represents a hiring manager confirming that a new hire is staring work and agrees to a hire date or a first working day.
Conditions: The required conditions for the hire process to reach the current state.
The current state is confirmationPending (29).
The entitlement confirmed is granted.
Description: A transitional state prior to the readyForHire (40) state.
Conditions: The required conditions for the hire process to reach the current state.
The current state is enabled (0).
The ELCP state is startHire.
The GCV is set to False.
Description: No confirmation is needed. The hire process does not require a hiring manager.
Conditions: The required condition for the hire process to reach the current state.
The current state is noConfirmationRequired (39).
Description: The new employee starts the same day as the contract starts and has access to necessary resources.
Conditions: The required conditions for the hire process to reach the current state.
The current state is confirmed (30) or readyForHire (40).
The hire date is equal to first working day or first working day does not exist. Only the first eight characters of DirXML-HireDataStr and DirXML-FirstWorkingDayStr are evaluated to match the same day, but it does not use the time of day.
Actions: The expected action from the components of the solution.
The business logic driver enables the new employee account on the hire date (DirXML-HireDateStr).
Description: The new employee has its first working day and has access to necessary resources.
Conditions: The required conditions for the hire process to reach the current state.
Evaluation of this state is solely triggered through the process-trigger job, which runs hourly unless it is started manually.
The current state is directHirePending (49).
The hire date is current. Only the first eight characters of DirXML-HireDataStr are evaluated to match the same day, but it does not use the time of day.
The object is enabled in the Identity Vault. The Login Disabled attribute is set to False.
Actions: The expected action from the components of the solution.
The business logic driver sets employeeStatus to Active on the hire date (DirXML-HireDateStr).
Description: The new employee’s first working day is before the actual hire date. The new employee needs access to certain resources. The new employee might need to sign a non-disclosure agreement or other agreement to protect the company and the employee.
Conditions: The required conditions for the hire process to reach the current state.
The current state is confirmed (30) or readyForHire (40).
The hire date is later than the first working day. Only the first eight characters of DirXML-HireDataStr and DirXML-FirstWorkingDayStr are evaluated to match the same day, but it does not use the time of day.
Actions: The expected action from the components of the solution.
The business logic driver enables the account on first working day (DirXML-FirstWorkingDayStr).
Description: The new employee has the first working day and has access to necessary resources. The new employee might not be displayed in the corporate address book until the hire date is current.
Conditions: The required conditions for the hire process to reach the current state.
The evaluation of this state is solely triggered through the process-trigger job, which runs hourly unless it is started manually.
The current state is earlyAccessPending (59).
The first working day is current. Only the first eight characters of DirXML-HireDataStr and DirXML-FirstWorkingDayStr are evaluated to match the same day, but it does not use the time of day.
The object is enabled in the Identity Vault. The Login Disabled attribute is set to False.
Description: The new employee’s hire date is after the employee has already started working.
Conditions: The required condition for the hire process to reach the current state.
The current state is earlyAccessComplete (60).
Description: The new employee’s contract has started. The new employee is displayed in the corporate address book.
Conditions: The required conditions for the hire process to reach the current state.
The evaluation of this state is solely triggered through the process-trigger job, which runs hourly unless it is manually started.
The current state is delayedHirePending (69).
The hire date is current. Only the first eight characters of DirXML-HireDataStr are evaluated to match the same day, but it does not use the time of day.
Actions: The expected action from the components of the solution.
The business logic driver sets employeeStatus to Active on the hire date (DirXML-HireDateStr).
Description: The new employee’s hire date is earlier than the actual first working day. The new employee does not need access to resources yet.
Conditions: The required conditions for the hire process to reach the current state.
The current state is confirmed (30) or readyForHire (40).
The hire date is before the first working day. Only the first eight characters of DirXML-HireDataStr and DirXML-FirstWorkingDayStr are evaluated to match the same day, but it does not use the time of day.
Description: The new employee’s contract has started.
Conditions: The required conditions for the hire process to reach the current state.
The evaluation of this state is solely triggered through the process-trigger job, which runs hourly unless it is manually started.
The current state is earlyHirePending (79).
The hire date is current. Only the first eight characters of DirXML-HireDataStr are evaluated to match the same day, but it does not use the time of day.
Actions: The expected action from the components of the solution.
The business logic driver sets employeeStatus to Active on the hire date (DirXML-HireDateStr).
Description: The employee’s first working day is after the actual hire date.
Conditions: The required condition for the hire process to reach the current state.
The current state is earlyHireComplete (80).
Actions: The expected action from the components of the solution.
The business logic driver enables the account on the first working day (DirXML-FirstWorkingDayStr).
Description: The new employee has the first working day.
Conditions: The required conditions for the hire process to reach the current state.
The evaluation of this state is solely triggered through the process-trigger job, which runs hourly unless it is started manually.
The current state is delayedAccessPending (89).
The first working day is current. Only the first eight characters of DirXML-FirstWorkingDayStr are evaluated to match the same day, but it does not use the time of day.
The object is enabled in the Identity Vault. The Login Disabled attribute is set to False.
Description: The hire process is finishing.
Conditions: The required condition for the hire process to reach the current state.
The current state is directHireComplete (50), delayedHireComplete (70), or delayedAccessComplete (90).
Description: The hire process is finished.
Conditions: The required condition for the hire process to reach the current state.
The current state is completionPending (99).