Datum Shift

Datum Shift

I am looking to get some clarification on how Cmm Manager calculates datum shifts.

When using Cmm Manager to report the position of a feature, and a datum feature at MMC is used in the report, the datum shift appears to be treated as a bonus and is added directly to the position tolerance. The "Report Position" help topic has this:

I may be wrong, but as I understand it datum shift should not be added as additional bonus tolerance. When the M symbol is next to the positional tolerance, a bonus is added. When the M symbol is placed next to a datum in the control frame, a datum shift may occur. The datum feature can then shift around inside of it's MMB as shown below.

So my questions are:

1. Is specifying the datum feature material condition the same as it's material boundary in the position report?

2. Is the datum shift truly just being added as additional bonus tolerance or is there something I am missing?

3. If the answer to number 2 is that the shift is just being added, is there an easier way to calculate and properly use a datum shift outside of using vb script or creating a virtual gauge?

4. If the answer to number 2 is that the shift is just being added, then wouldn't that mean that it would be improper to ever use a datum feature with a material condition other than RFS when reporting a position? A feature could be out of tolerance but be reported as in tolerance.

I have attached an example program that shows the datum shift being added to the bonus tolerance as well.