Hi, John:
Thanks for the speedy reply. I was afraid that the answer to the question
was as you stated.
FYI - The reason for the fractional pennies is as follows - we are often
asked to present time-phased cost information from our schedules.
Sometimes people want to see cost profiles expressed in fixed-year dollars
and sometimes in then-year, or escalated dollars. My approach to providing
both from the schedule is to use payrate table B to contain escalated rates
with effective dates at the start of each fiscal year, while table A contains
a single rate for the base year. By running a macro that toggles the rate
table used by each resource assignment from table A to table B one gets
fixed-year or then-year costs.
The problem with the fractional pennies crops up mostly because we have some
material resources that have base rates of as little as $1.00 per unit. And
we have escalation factors that are specified with typically 3 significant
figures to the right of the decimal point, for example 1.025. or 2.5% per
year. It is not uncommon for escalation factors to be specified to this
level of precision. When you couple that level of precision in the
escalation factor to a resource with a base rate of $1.00, inaccuracy in the
resulting escalated cost occurs, potentially at the level of as much as 0.5%
in my example, due to the rounding in the payrates that occurs in MSP. For
example, if you assign 100,000 units of this one-dollar resource to a task,
the correct escalated cost would be $102,500, while Project would give
$103,000 a differenct of $500, not a gigantic difference but maybe not
negligible, and one that could be corrected with the use of higher precision
on the payrates.
Of course the potential error, expressed as a fraction of a base rate, goes
down as the base rate goes up, so it usually causes less of a problem It
seems to me that the smart thing for MSP to do would be to internally treat
the data types of the rates in the escalation tables as currency datatypes
which have 4 significant figures to the right of the decimal point and that
would solve the problem. Maybe this is something for the next version!
Bill F.