The WitnessOrder field in WitnessTable controls the order of output in the display of witnesses and in narrative reports but RootsMagic 7 provides no control for it.

This script modifies the WitnessOrder values so that they are sorted:
  1. Primary: Consanguinity of witness to reference person used by the RootsMagic SET RELATIONSHIPS function
  2. Secondary: Alphabetical order of the primary name of each person, including those not in a tree.
Clearing the relationships prior to execution results in a purely alphabetical sort.

It sets negative values in WitnessOrder so inspection of the WitnessTable readily reveals those set by the script.
WitnessOrderByRelationship+Name.JPG
Example of the WitnessTable modified by the script with negative values under WitnessOrder.