your "disposals"...
if {fa_master.fa_disposal_date} > DateTime (2013, 06, 30, 00, 00, 00) and
{fa_master.fa_acquire_date} < DateTime (2013, 07, 01, 00, 00, 00) then {fa_master.fa_purchase_cost}
evaluates once per row and returns a value for each row that does not include prior or next rows. If you want to know a toal for the group that all the rows are a part of you need to sum it at the group level
e.g. SUM(@disposals,groupfield)
or use shared variables to increnentally sum the value on each row.
Edited by DBlank - 10 Sep 2014 at 11:54am