When to use HCL Compass scripts instead of UCM triggers

There are several use cases for UCM triggers. If your UCM project is enabled to work with HCL Compass, you can set the following policies:
  • For submitting records from the HCL VersionVault client
    • Disallow Submitting Records from the VersionVault Client
    • Allowed Record Types
  • For WorkOn
    • Perform Compass Action Before Work On
  • For delivery
    • Perform Compass Action Before Delivery
    • Transfer Compass Mastership Before Delivery
    • Perform Compass Action After Delivery
    • Transition to Complete After Delivery
    • Transfer Compass Mastership After Delivery
  • For changing an activity
    • Perform Compass Action Before Changing Activity
    • Perform Compass Action After Changing Activity
    • Transition to Complete After Changing Activity

Some of these policies have HCL Compass global hook scripts associated with them, which you can edit or replace in HCL Compass Designer to customize the policy for your environment. You can also write your own HCL Compass hooks to enforce development policies. In general, if the policy you want to enforce involves an HCL Compass action, use one of the HCL Compass policies previously mentioned or use HCL Compass hooks. If the policy you want to enforce involves an HCL VersionVault action, use UCM triggers.

Some operations might have HCL VersionVault triggers and HCL Compass hooks associated with them. For example, you might define a trigger that sends e-mail to team members when a developer completes a deliver operation, and you might have the Perform Compass Activity After Delivery policy enabled. Under HCL VersionVault and HCL Compass control, triggers, hooks, and UCM operations are run in the following order:

  • HCL VersionVault preoperation trigger
  • HCL Compass preoperation hook
  • UCM action
  • HCL Compass postoperation hook
  • HCL Compass transition activity hook
  • HCL VersionVault postoperation trigger

You can use the HCL Compass API to write code that runs in the HCL Compass environment. For example, you can modify records that users submit or validate the records before they are committed to the user database. For code examples that work with cqperl on Linux® and the UNIX® system, see Compass API Reference.