Phase

Learn to divide complex process into phases.

You can divide complex processes into several phases, e.g. "Identification", "Qualification", "Cover Buying Center" etc. in the opportunity process. The user can exit multi-phase processes and resume at the same point at a later time.

Note: Phases can not be reused.

For examples, see Phase CreateY1 and Phase AddY2.

Phases are displayed (as arrows) in the process header. The user can click on the arrows to switch between phases (if configured). Each phase arrow contains the phase name and metrics (if defined). Help texts (phase, step and metrics help) are displayed a tooltip.

If a process contains a lot of phases, you can display past and/or inactive phases in a "collapsed" state by setting the collapseInactivePhases and collapsePastPhases parameters of the Process action. For further details, see  Process Action Parameters. Thus users do not have to scroll to access all phase arrows.

Example: Both collapseInactivePhases and collapsePastPhases are set to true.

A collapsed phase arrow only displays the first character of the phase label. The complete label and the phase help are displayed in the tool tip. The phase metrics and metrics help is not displayed.

Defining Phases

To define a phase:

  1. Switch to the desired process.
  2. Under Process Phases click on (Add).

  3. Define the phase:

    A phase's configuration consists of the following settings:

    • Phase Name: The name by which the phase is referenced in the process (only visible in CRM.Designer).
    • Disable navigation to preceeding phases: Check to disable navigation to a previous phase in a process regardless of the conditions defined under This phase can be activated if.
    • Description (optional): Add an internal description (only visible in CRM.Designer).
    • Help Text (optional): Add a description of what happens in this phase. The Help Text is displayed as a tool-tip when positioning the mouse over the phase arrow. If a Help Text for the current step exists and the step belongs to the phase, the step help is displayed below the phase help.
    • Phase Label: The text displayed on the phase arrow in Aurea CRM.Web.
    • Initial Step: The process step to be called when the phase is initially activated.

      At process startup, the property Initial Step is used to determine the initial step of a process: The first phase where both the conditions defined under This phase is active if... and This phase can be activated if... evaluate to true determines the actual initial step of the process.

    • View Template (optional): currently not implemented
    • This phase is active if...: Conditions that determine whether the phase is active. Multiple conditions are combined using AND.

      A phase is active if all conditions defined under This phase is active if... evaluate to true.

      The currently active phase is displayed colored with a bold label:

      Inactive phases that cannot be activated are displayed in gray:

      To get information about the active process phase (e.g. for a dispatching condition), use the getActivePhase() method. You can use the method getActivePhase() wherever the process editor allows entering JavaScript expressions, for instance in the dispatching condition of a process step.

      The return value of this method (getActivePhase()) is an object containing the properties and methods shown in the following table:

      Note: The return value can also be "null" if no phase is currently active.
      Field Description
      description A description of the phase (non localized - for documentation only).
      helpText A text containing help for users executing the process.
      metrics An array of metrics to be evaluated for this phase.
      name The name of the phase (non localized - for documentation only).
      nr A number used to order the phases.
      stepName The name of the process step associated with this phase.
      text A text describing this phase.
      view The name of a widget used to display this process phase.
      activateConditions The conditions determining if this phase is currently active.
      canActivateConditions The conditions determining if this phase can become the active phase.
      isActive() returns true if the phase is currently active.
      canActivate() returns true if the phase can be activated.

      Example for a dispatching condition based on the name of the active phase: process.getActivePhase().name == "SelectCustomer"

    • This phase can be activated if...: Conditions that determine whether the phase can be activated (i.e. clicked by the user). Multiple conditions are combined using AND.

      During the execution of a process, the user can click on a phase. This navigates the process to the Initial Step associated with this phase, if all conditions defined under This phase can be activated if... evaluate to true. The step receives the original process input as its input message ($in).

      Inactive phases that can be activated are displayed with a bold label:

      Note: For conditions in phases only values from the Process Storage and from custom data providers are available. For further details, see Data Providers.
    • Phase Metrics (optional): Use metrics to display the progress within a phase (e.g. display "<#>% completed"). For further details, see  Metrics. Phase metrics are displayed below the phase label. You can add an additional Help Text explaining the meaning of the metric.