QualityOne Vaults provide a management system that allows users to establish and maintain safe food production practices more efficiently using the HACCP (Hazard Analysis Critical Control Points) methodology. This allows users to ensure that food is manufactured, processed, packaged, and stored in sanitary conditions to prevent post-process contamination. Users can create HACCP plans in their Vault to define principles and procedural requirements for maintaining the HACCP system. To save time and effort, users can reuse existing HACCP plans as templates when creating new HACCP plans.

HACCP Management Objects

QualityOne uses the following objects and object types to support HACCP Management:

  • HACCP Plan (haccp_plan__v): This object represents the food safety-related procedures of a Product.
    • HACCP Plan (haccp_plan__v): This HACCP Plan object type represents the HACCP Plan for a manufacturer.
    • HACCP Plan Design (haccp_plan_design__v): This HACCP Plan object type represents the HACCP plan design template.
  • HACCP Plan Process Step Group (haccp_plan_process_step_group__v): This object represents a grouping of HACCP Plan Process Steps.
  • Hazard (hazard__v): This object represents a single hazard in the library of Hazards.
  • Formulation (formulation__v): This object represents an ingredient in the library of all Formulations.
  • Formulation Composition (formulation_composition__v): This object represents a many-to-many self-reference to Formulation, and contains the composition that makes up a formula.
  • Process Step (process_step__v): This object represents a single process step in the library of all Process Steps.
    • Process Step (process_step__v): This Process Step object type represents a single step in a process.
    • Material Step (material_step__v): This Process Step object type represents a step that introduces a material in a process.
    • Logistics Step (logistics_step__v): This Process Step object type represents a logistics step in a process.
    • Connector (diagram_connector__v): This Process Step object type represents a connector step in a process.
  • HACCP Plan Ingredient (haccp_plan_ingredient__v): This object represents an ingredient in a HACCP Plan for a product.
  • Ingredient Hazard Analysis (ingredient_hazard_analysis__v): This object represents the risk assessment and CCP information of a given ingredient in a HACCP Plan.
  • HACCP Plan Process Step (haccp_plan_process_step__v): This object represents a process step in a HACCP Plan for a specific product.
    • Process Step (process_step__v): This HACCP Plan Process Step object type represents a single step in a process.
    • Material Step (material_step__v): This HACCP Plan Process Step object type represents a step that introduces a material in a process.
    • Logistics Step (logistics_step__v): This HACCP Plan Process Step object type represents a logistics step in a process.
    • Connector (diagram_connector__v): This HACCP Plan Process Step object type represents a connector step in a process.
  • Process Hazard Analysis (process_hazard_analysis__v): This object represents the risk assessment and CCP information of a given process step in a HACCP Plan.
  • CCP Library (cpp_library__v): This object represents a collection of established critical control points.
  • CCP-Hazard Analysis (cpp_hazard_analysis__v): This object represents an Ingredient Hazard Analysis or Process Hazard Analysis in a HACCP Plan and an associated critical control from the library.
    • Critical Control Point (critical_control_point__v): This CCP-Hazard Analysis object type represents a hazard analysis associated with a critical control point.
    • OPRP (oprp__v): This CCP-Hazard Analysis object type represents a hazard analysis associated with an Operational Prerequisite Program (OPRP).
    • Preventive Action (preventive_action__v): This CCP-Hazard Analysis object type represents a hazard analysis associated with a preventive action.
  • CCP-Audit (cpp_audit__v): This object represents an audit joined with a critical control point.
  • Process-Process Step (process_process_step__v): This object represents the order of Process Steps included in a particular process.
  • Process Step Connection (process_step_connection__v): This object represents the connection between an input step and an output step in a process.
  • HACCP Plan Process Step Connection (haccp_plan_process_step_connection__v): This object represents the connection between HACCP Plan process steps by defining the input HACCP Plan process step and output HACCP Plan process step.
  • HPPS - PHA (hpps_pha__v): This object represents the list of HACCP Plan process steps referring to a single Process Hazard Analysis.
  • Process Hazard Analysis - Hazard (pha_hazard__v): This object joins the Process Hazard Analysis and Hazard objects.
  • Ingredient Involved (hpps_hpi__v): This object represents the ingredient involved in a process step.
  • HPPSG - HPPS (hppsg_hpps__v): This object joins the HACCP Plan Process Step Group and HACCP Plan Process Step objects.

Configuration Overview

Configuring your Vault to use HACCP Management involves the following steps:

Activating Object Types

You must activate the HACCP Plan and HACCP Plan Design object types on the HACCP Plan object in order to use the HACCP Flow Diagram and run the Create HACCP Plan from Design and Create HACCP Plan Design from Design actions.

You must also activate object types on the HACCP Plan Process Step object as required.

Configuring Picklists

HACCP Management includes two (2) picklists for categorizing and filtering hazards as part of the hazard analysis process:

  • Hazard Classification Group: Users can select from multiple values to classify a hazard on a Process Hazard Analysis and Hazard record.
  • Hazard Classification: A subset of the Hazard Classification Group, can optionally be configured to let users select from a list of pre-defined values to classify a hazard.

Configure the Hazard Classification Group or both picklists with values applicable to your organization’s business needs, or use the values provided in Configuring Material Verification Checklists.

If you configure both picklists, you must also configure a picklist dependency on the Hazard Classification Group picklist to make values available to select for the Hazard Classification field.

Configuring Object Layouts

HACCP Management provides a default object layout for the HACCP Plan object to allow users to create, analyze, and review food safety-related procedures. You can customize object layouts or create custom object layouts from Admin > Configuration > Objects > HACCP Plan > Layouts.

  • For the CCP-Hazard Analysis (ccp_hazard_analysis__v) object:
    • Detail Form Section: Include the HACCP Plan field so Vault can populate the HACCP Plan value from the Ingredient Hazard Analysis or Process Hazard Analysis specified in the CCP-Hazard Analysis record.
    • Related Object Section: Insert the CCP-Hazard Analysis (ccp_hazard_analysis__v) object to create a list of critical controls.
  • For the HACCP Plan (haccp_plan__v) object:
    • Related Object Section: Insert the HACCP Plan Process Step, HACCP Plan Process Ingredient, and HACCP Plan Process Step Group objects.
  • For the HACCP Plan Process Step (haccp_plan_process_step__v) object:
    • Related Object Section: Insert the HACCP Plan Process Step Group (haccp_plan_process_step_group__v) object to display a list of groups associated with the process step.
  • For the Hazard (hazard__v) object:
    • Detail Form Section: Add the Hazard Classification Group field. If your configuration uses the Hazard Classification field, you must also add it.
  • For the Process Hazard Analysis (process_hazard_analysis__v) object:
    • Detail Form Section: Add the Hazard Classification Group, Significant Hazard, and HACCP Plan Process Step Group fields. If your configuration uses the Hazard Classification field, you must also add it.

HACCP Management Lifecycles

HACCP Management includes the HACCP Plan Lifecycle object lifecycle, which your organization can use and customize to suit your specific needs.

HACCP Management Workflow

The HACCP Plan Lifecycle includes standard object workflows which your organization can use and customize to suit your specific needs.

Configuring HACCP Management Object Actions

The HACCP Plan object lifecycle contains the following actions:

  • Create HACCP Plan Design from Design: Copies the hierarchy of a HACCP Plan Design and its related HACCP Plan Ingredient, HACCP Plan-Process Step, Ingredient Hazard Analysis, Process Hazard Analysis, HACCP Plan-Process Step Connection, CCP-Hazard Analysis, HPPS - PHA, Ingredient Involved, Action Item, HACCP Plan Process Step Group, and HPPSG - HPPS records into a new set of records. The Source HACCP Plan field in the new HACCP Plan record will contain the ID of the copied HACCP Plan.
  • Create HACCP Plan from Design: Offers the same functionality as the Create HACCP Plan Design from Design action except HACCP Plan is the target object type rather than HACCP Plan Design.
  • HACCP Flow Diagram actions: Support the functionality of HACCP Flow Diagrams, enabling users to launch, lock, and unlock diagrams directly from a specific HACCP Plan.

Configuring the Create HACCP Plan from Design & Create HACCP Plan Design from Design Actions

Depending on your business needs, add these actions as a record action on the HACCP Plan object to:

  • Add these actions as user actions on any HACCP Plan Lifecycle state
  • Add these actions as entry actions on any HACCP Plan Lifecycle state

When users run the Create HACCP Plan Design from Design or Create HACCP Plan from Design actions, the Source HACCP Plan field in the new HACCP Plan record will contain the ID of the copied HACCP Plan Design. Vault does not copy:

  • System-managed fields.
  • Inactive object types.
  • Inactive object fields.
  • Any fields with the Do not copy this field in Copy Record checkbox selected.

HACCP Flow Diagram Actions

The following actions support the HACCP Flow Diagram:

  • Launch Process Flow Diagram: Allows users to launch the HACCP Flow Diagram for a HACCP Plan record.
  • Lock HACCP Flow Diagram and Unlock HACCP Flow Diagram: Prevents users from editing the HACCP Flow Diagram and unlocks the diagram so users can make updates.

To make these actions available to users on a HACCP Plan, first add them as record actions on the HACCP Plan object. You can then add these actions to the relevant HACCP Plan lifecycle states as user actions or entry actions.

Configuring the HACCP Flow Diagram

You can specify up to three (3) fields to display in the Hazard Analysis section of the Information panel of the HACCP Flow Diagram in addition to the Display Label and Description fields, which display by default in the General section of the panel.

To configure fields:

  1. Navigate to Admin > Configuration > User Interface > Pages > Process Flow Diagram > Side Panel Configuration.
  2. Click Edit.
  3. Select the fields you want to display.
  4. Click Save.

Fields are only available to be configured on certain HACCP Plan object types.

Configuring Process Step Types for the HACCP Flow Diagram

You can enable HACCP Plan Process Step object types to display process steps as different shapes on a HACCP Flow Diagram. The HACCP Flow Diagram displays the following Process Step types:

  • Process Step: A regular process step on a process flow diagram.
  • Material Step: A process step that introduces a raw material, such as an auxiliary material, or the receipt of a raw material.
  • Logistics Step: A process step involving distribution or storage of raw material.
  • Connector: The start or end of a process flow, or a step used to connect two flows or modular HACCP Plans together.

You can activate these object types as needed on the HACCP Plan Process Step object to display on the HACCP Flow Diagram.

If you create Process Step library records to associate with HACCP Plan Process Steps, you must also enable object types on the Process Step object.

Limitations

HACCP Management has the following limitation:

  • The configuration of object references visible to users on the HACCP Flow Diagram cannot be configured to include tokens in the VQL criteria for dynamic reference constraint.

Configuring User Permissions

You must ensure users have the appropriate read and create permissions to access the appropriate objects and object fields in addition to the permissions outlined below:

  • For the HACCP Plan object:
    • Create, Edit, and Delete permission.
    • For the HACCP Plan object fields: if a field needs to be unique, you must enable the field to be required as well. To do so, select the Values must be unique setting and the User must always enter a value (required) setting.
  • For users to view a HACCP Flow Diagram and its associated hazard analysis information, they must have Read permission on the following objects; to modify a HACCP Flow Diagram, users must have Create, Edit, and Delete permissions on the following objects:
    • HACCP Plan Process Step
    • HACCP Plan Process Step Connection
    • HACCP Plan Ingredient
    • HACCP Plan Process Step Group
    • HACCP Plan Process Step Position
    • Process Hazard Analysis
    • Ingredient Hazard Analysis
    • Hazard
    • CCP-Hazard Analysis
    • Ingredient Involved
    • HPPS - PHA
    • Process Hazard Analysis - Hazard
    • HPPS - HPPSG
  • For the Create HACCP Plan Design from Design or Create HACCP Plan from Design actions: Create permissions for both the target object type and the target object.

You can complete all the steps in this article with the standard System Administrator or Vault Owner security profile. If your Vault uses custom security profiles, your profile must grant the following permissions:

Type Permission Controls
Security Profile Admin: Configuration: Object Lifecycles: Create, Edit Ability to create and modify object lifecycles.
Security Profile Admin: Configuration: Object Workflows: Create, Edit Ability to create and modify object workflows.
Security Profile Admin: Configuration: Objects: Create, Edit Ability to create and modify Vault objects.