5.6 Termination Process

The section describes how the termination process works. Every step in the termination 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-process, then merge again downstream.

5.6.1 Termination Process Conditions

Figure 5-4 is graphical representation of the termination process with all of the variable conditions included.

Figure 5-4 Termination Process

5.6.2 The Termination Process States

This section contains a description of each state of the termination process. The termination 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.

enabled (0)

  • Description: The termination process is enabled.

  • Conditions: The required conditions for the termination process to reach the current state.

    • No termination process is currently running for the object.

    • The ELCP state is hired.

    • The object has a termination date (DirXML-TerminationDateStr).

    • PID != -1

scheduleWorkflowPending (9)

  • Description: A transitional state prior to the workflowScheduled (10) state in the termination process.

  • Conditions: The required conditions for the termination process to reach the current state.

    • The current state is enabled (0).

    • The ELCP is at startTermination.

    • GCV Manager confirms employee termination via workflow is set to True.

  • Actions: The expected actions for the components of the solution.

    • The business logic driver schedules workflows through work orders.

    • The work order driver generates work to do objects as the scheduled date becomes current.

workflowScheduled (10)

  • Description: The workflow is scheduled to run n number of days before the termination date.

  • Conditions: The required condition for the termination process to reach the current state.

    • The work order drive creates a valid work order object.

  • Actions: The expected action from the components of the solution.

    • The business logic driver starts the workflow.

startWorkflowPending (19)

  • Description: A transitional state to the workflowStarted (20) state.

  • Conditions: The required condition for the termination process to reach the current state.

    • The current state is workflowScheduled (10).

workflowStarted (20)

  • Description: The workflow is started and running.

  • Conditions: The required condition for the termination process to reach the current state.

    • The due date on the work order object becomes current, and the WorkOrder driver deletes the work order object.

confirmationPending (29)

  • Description: Represents a transitional state prior to the confirmed (30) state in the termination process.

  • Conditions: The required conditions for the termination 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 workflow.

    • If the workflow is approved, the User Application driver grants the entitlement.

    • If the workflow is declined, the User Application driver revokes the entitlement.

confirmed (30)

  • Description: The workflow is approved. This state represents an authorized manager confirming that an employee is to be terminated and a termination date or a last working day is determined.

  • Conditions: The required conditions for the termination process to reach the current state.

    • The current state is confirmationPending (29).

    • The entitlement is revoked.

noConfirmationRequired (39)

  • Description: The transitional state prior to readyForTermination (40).

  • Conditions: The required conditions for the termination process to reach the current state.

    • The current state is enabled (0).

    • The ELCP state is hired.

    • The Manager confirms employee termination via workflow GCV is set to False.

readyForTermination (40)

  • Description: The termination process does not require an authorized manager’s confirmation.

  • Conditions: The required condition for the termination process to reach the current state.

    • The current state is noConfirmationRequired (39).

directTerminationPending (49)

  • Description: The terminated employee is being dismissed and the last working day is the same as the termination date. Access to the necessary resources is denied the same day.

  • Conditions: The required conditions for the termination process to reach the current state.

    • The current state is confirmed (30) or readyForTermination (40).

    • The termination date is equal to the last working day or the last working day does not exist. Only the first eight characters of DirXML-TerminationDateStr and DirXML-LastWorkingDayStr 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 disables the employee account on the last working day (DirXML-LastWorkingDayStr).

directTerminationComplete (50)

  • Description: The last working day is expired. The terminated employee resource access is revoked.

  • Conditions: The required conditions for the termination 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 directTerminationPending (49).

    • The termination date is current. Only the first eight characters of DirXML-TerminationDateStr are evaluated to match the same day, but it does not use the time of day.

    • The object is enabled. The Login Disabled attribute is set to True.

  • Actions: The expected action from the components of the solution.

    • The business logic driver sets employeeStatus to Terminated on termination date (DirXML-TerminationDateStr).

earlyLockoutPending (59)

  • Description: The terminated employee’s last working day is before the actual terminated date. The terminated employee needs access to certain resources.

  • Conditions: The required conditions for the termination process to reach the current state.

    • The current state is confirmed (30) or readyForTermination (40).

    • The termination date is later than the last working day. Only the first eight characters of DirXML-TerminationDateStr and DirXML-LastWorkingDayStr 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 disables the account on the last working day (DirXML-LastWorkingDayStr).

earlyLockoutComplete (60)

  • Description: The terminated employee’s last working day occurs and access to resources is revoked. The terminated employee might be displayed in the corporate address book until the termination date is current.

  • Conditions: The required conditions for the termination 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 earlyLockoutPending (59).

    • The last working day is current. Only the first eight characters of DirXML-LastWorkingDayStr are evaluated to match the same day, but it does not use the time of day.

    • The object is enabled. The Login Disabled attribute is set to True.

delayedTerminationPending (69)

  • Description: The employee’s termination date is after the employee has already stopped working.

  • Conditions: The required conditions for the termination process to reach the current state.

    • The current state is earlyLockoutComplete (60).

delayedTerminationComplete (70)

  • Description: The terminated employee’s contract ended. The employee is removed from the corporate address book.

  • Conditions: The required conditions for the termination process to reach the current state.

    • The evaluation of this state is solely through the process-trigger job, which runs hourly unless it is manually started.

    • The current state is delayedTerminationPending (69).

    • The termination date is current. Only the first eight characters of DirXML-TerminationDateStr 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 terminated on the termination date (DirXML-TerminationDateStr).

earlyTerminationPending (79)

  • Description: The employee’s termination date is earlier than the actual last working day. The employee still needs access to resources.

  • Conditions: The required conditions for the termination process to reach the current state.

    • The current state is confirmed (30) or readyForTermination (40).

    • The termination date is before the last working day. Only the first eight characters of DirXML-TerminationDateStr and DirXML-LastWorkingDayStr are evaluated to match the same day, but it does not use the time of day.

earlyTerminationComplete (80)

  • Description: The terminated employee’s contract ends.

  • Conditions: The required conditions for the termination 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 earlyTerminationPending (79).

    • The termination date is current. Only the first eight characters of DirXML-TerminationDateStr 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 Terminated on the termination date (DirXML-TerminationDateStr).

delayedLockoutPending (89)

  • Description: The terminated employee’s last working day is after the actual termination date.

  • Conditions: The required condition for the termination process to reach the current state.

    • The current state is earlyTerminationComplete (80).

  • Actions: The expected action from the components of the solution.

    • The business logic driver disables the account on the last working day (DirXML-LastWorkingDayStr).

delayedLockoutComplete (90)

  • Description: It is the last working day for the employee.

  • Conditions: The required conditions for the termination 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 delayedLockoutPending (89).

    • The last working day is current. Only the first eight characters of DirXML-LastWorkingDayStr are evaluated to match the same day, but it does not use the time of day.

    • The object is enabled. The Login Disabled is set to True.

completionPending (99)

  • Description: The ELCP is finishing.

  • Conditions: The required condition for the termination process to reach the current state.

    • The current ELCP state is directTerminationComplete, delayedTerminationComplete, or delayedLockoutComplete.

completed (100)

  • Description: The ELCP is finished.

  • Conditions: The required condition for the termination process to reach the current state.

    • The current ELCP state is completionPending.