Workflow and Automation
Workflow Gives You More Information and More Control
See beyond ‘checked in’ to know the true status of files in the change process. Use Surround SCM’s workflow to know whether a file you are including in the build has been code reviewed, ensure design documents have been through the review process, and control who can make changes to files after they have been reviewed and approved.

Learn practical uses of workflow in Surround SCM
Define File-level Workflow with States and Transitions
Surround SCM’s configurable workflows let you define, control, and track the individual state of files undergoing change. Users can perform actions based on workflow state (e.g., create branch) and set the workflow state and custom fields when performing file actions (e.g., adding files or checking in files). Surround SCM supports an unlimited number of workflows, allowing you to establish a workflow for each repository.
Quickly Know the State of Files
File states can be displayed in the source file list window and are supported in filters and reports, helping you quickly determine the overall status of files in your change process.

Improve the Traceability of Your Change Process
Changes to file states are logged in a file's history, including who made the change and when.
Programmable Triggers
In-application, programmable triggers let you extend Surround SCM's functionality to better fit your change management process. Triggers can automate workflow state transitions, enforce workflow rules, send email notifications, run external applications, modify custom fields, perform data validation, log information, and more. Most importantly, you can easily create triggers within Surround SCM.
Triggers can run when the following file events occur:
- A file changes for any reason
- Any of the following file events are performed: Add, Add from branch, Attach to defect, Check in, Check out, Label, Promote from, Rebase, Remove, Rename file, Restore, Share broken, Share created.
- A file version is updated
- A file is created
- A changelist is committed
- A file enters a specific workflow state
- A custom field changes
To create a trigger, you define one or more pre-conditions that must be satisfied for the trigger to run, the action that initiates the trigger, and the action to perform. Actions include:
- Running an executable
- Preventing an event
- Setting or appending event comment text
- Send an email
- Setting a custom field value
- Setting a workflow state
Triggers can be even more powerful when they are used with the Surround SCM workflow and custom fields. The following examples provide some common tasks that you can automate with triggers.
- Assign files for code review after they are checked in—If you use the default Surround SCM workflow and the Assigned custom field, you can create a post-event trigger to run when a file version is updated. You can create trigger actions that automatically set the workflow state to Awaiting Review, set the Assigned custom field to the user who performs code reviews, and send an email notification to the reviewer.
- Prevent users from selecting a file workflow state based on their security permissions — If you use the default Surround SCM workflow and have a Reviewers security group, you can prevent users who are not in the group from selecting the Reviewed state. You can create a pre-event trigger to run when a user who is not in the Reviewers security group tries to change a file's state to Reviewed. You can create a trigger action to prevent the workflow state change and display a message, such as "Only reviewers can mark a file as Reviewed".







