The qbo.Process module is used to manage business processes. A business process has the following characteristics:
  • It tends to be active for more than a day
  • It tends to require workflow(s) to be launched as part of execution
  • It can be active simultaneously with other business processes
Properties of the Process module include:
  • Date Opened: the date the process was opened
  • Opened Reason: the reason the process was opened
  • Date Closed: the date the process was closed
  • Closed Reason: the reason the process was closed
  • Assigned Person: user managing the process
  • Assigned Organization: vendor the process is outsourced to
  • Current Decision: the workflow launched by the process
  • Current Score: the score used to measure the ROI of the process
  • Current Ledger: the ledger being used to track the costs associated with the process
The Process module may be extended with Siblings, which are tables that essentially extend the Process module. For example, the QBO Mortgage module includes Process-based modules including Foreclosure, Bankruptcy, ShortSale, Eviction, BidAtSale, and LoanModification.

As with many generic QBO modules, Processes may be templated using the ProcessTemplate table. Generally, sibling modules will install at least one process template, though they may choose to install multiples. Examples include:
  • Loan Modifications: loan mods are complex processes, and a debt forgiveness may require a different set of requirement than a capitalization. In this case, one might create 2 ProcessTemplates for loan modifications: Loan Modification - Capitalized, and Loan Modification - Debt Forgiveness.

  • Foreclosure: foreclosure include complex workflows, but outside of the workflows, they tend to be measured in similar ways (by banks, at any rate). In many cases, a single Foreclosure Process Template may be used, while a Matrix chooses which state-specific Foreclosure workflow to launch when the Process is created.

Processes and Workflows

When a Process is created, it will create 'child objects', potentially including a workflow. When defining a Process Template, one can pick a Decision Template that defines which workflow to launch when the process is created. For more complicated situations, a Matrix can be used to determine which workflow to launch. 

Restarting a Process

The Process/Restart?ActualStart=1/1/2017&BodyText=Foo operation will do the following:
  • Cancel the current workflow (Process.CurrentDecisionID)
  • Create a new workflow, with the ActualStart date specified
  • Add a message (subject '{Process} Restarted', with a body 'Foo'), bound to the process