Multiple revision jobs and the job selected branch property

To support multi-revision jobs (policy transactions), there is a property Job.SelectedVersion, which indicates for multi-revision jobs which branch is the selected branch. Knowing which branch is the selected branch is important especially where there is more than one non-withdrawn branch in the job.

There is always a selected branch for any job. The selected branch is always one of the non-withdrawn branches, if one or more remain. This makes the selected branch a safe way to obtain a PolicyPeriod from a Job. The selected branch may or may not be the one that the user is actively modifying in the user interface. The selected branch depends upon the user’s actions and any business logic that has been implemented. In some display and reporting logic, the selected branch is the one that is used when more than one branch exists.

The SelectedVersion property is an edge foreign key from Job to PolicyPeriod. In the database, this creates a join table called pc_jobpolicyperiod where the OwnerID column points to the job, and the ForeignEntityID property points to the PolicyPeriod.

If you withdraw a revision from a multi-revision branch and there is only one non-withdrawn branch, PolicyCenter automatically sets that branch to the active branch.

In the user interface for multi-revision jobs, you can select one revision by clicking Selected.