Hola.
Es extraño que aparezcan filas de más (habría que ver el código y la forma en que están asociados ambos conjuntos de datos para entender la razón de ello). Pero, de cualquier manera, convendría usar campos fkInternalCalc para guardar esos totales, ya que este tipo de campos, a diferencia de los fkCalculated, retienen la asignación que se les hace aunque haya navegación; es decir, se comportan como si fueran de tipo fkData, pero sin enviarse a la base de datos.
Por otro lado, puede que te facilite las cosas usar
Aggregates en el conjunto de datos detalle.
Saludos.
Al González.