Строка с подробностями в моей таблице содержит столбец с выражением:
=sum(Fields!one.Value) / sum(Fields!two.Value)
Я хочу суммировать этот столбец, но получаемые мной результаты не являются суммой соотношений, а являются соотношением сумм. Например:
sum(Fields!one.Value) sum(Fields!two.Value) ratio 3 6 0.5 3 6 0.5 total: 6 12 0.5
Я бы хотел, чтобы значение в правом нижнем углу было суммой значений над ним (т.е. 1.0
), а не соотношением значений слева от него. Я пробовал вычислить сумму как:
sum( sum(Fields!one.Value) / sum(Fields!two.Value) )
, но это тоже дает ответ 0,5
.
У кого-нибудь есть идеи?
[Из-за этого я не мог публиковать свой ответ в течение 24 часов, так что вот он:]
Хорошо, я придумал, как это сделать. Я добавил еще один столбец справа от столбца соотношения и установил его видимость как «не виден». В строке сведений я добавил это выражение:
=runningValue( sum(Fields!one.Value) / sum(Fields!two.Value), Sum, "table1_grp")
( table1_grp
была группой, в которую входила эта группа). Затем в итоговой строке в столбце соотношений я просто скопировал значение из текстового поля runningValue
. Другими словами, там было выражение:
=ReportItems!Textbox55.Value
Итак, текущая сумма не отображается в таблице, но я использую окончательное значение в итоговой строке.
И мне потребовалось всего 3 дня, чтобы вычислить ее. Уф!
ОБНОВЛЕНИЕ:
Я показал проблему и «решение» своему коллеге, и у него было гораздо более элегантное решение:
В поле отношения итогов используйте следующее выражение:
=sum( sum(Fields!one.Value, "table1_grp") / sum(Fields!two.Value, "table1_grp") )
В основном, добавление объема к внутренним суммам помогает.