//Costs and earned value
public double acwp(long start, long end) {
if (!isInRange(start,end))
return NO_VALUE_DOUBLE;
Query query = Query.getInstance();
SelectFrom clause = SelectFrom.getInstance().whereInRange(Math.max(start,detail.effectiveBaselineStart()),Math.min(end,getCompletedOrStatusDate()));
query.selectFrom(clause)
.action(cost(clause,false))
.execute();
return ((DoubleValue)query.getActionVisitor()).getValue();
}