То, что я пытаюсь сделать, состоит в том, чтобы суммировать несколько полей из запроса на переменном уровне из-за нескольких вычислений в моем отчете (некоторые дополнения, некоторые вычитания).SSRS 2008 Sum IIf и переменные
Например, я пытаюсь суммировать финансовое значение, которое имеет 3 условия, которые мне нужно проверить. Я попытался создать переменную и присвоить ей выражение:
= Sum (IIf ((Fields! Year.Value, "Query_Name") = Parameters! Year AND (Fields! Period.Value, "Query_Name") = Параметры ! Period AND (Fields! Type.Value, «Query_Name») = Parameters! Type, (Fields! Amount.Value, «Query_Name»), 0))
Я проверяю, соответствуют ли год, период и тип (бюджет или фактический) являются правильными, а затем я хочу суммировать значения. Это не работает, поэтому мне интересно, что я делаю неправильно.
У меня есть несколько наборов данных в отчете, однако каждый раз я ссылаюсь на правильный. Разве это невозможно, или я делаю это неправильно?
Возможно, это просто опечатка, но где вы упоминаете 'Parameters! Year' above - это должен быть' Parameters! Year.Value'. Похоже, что вы правильно ссылаетесь на значения поля, а не на параметры. –
Это была только опечатка – Ian
Вот фактический оператор: = Sum (IIF ((Fields! FSCSP.Value, "GLIncomeStatement") = Параметры! IntFiscalPeriod AND (Поля FSCSDSG.Value, "GLIncomeStatement") = "A" AND (Fields! ISGRPCODE1.Value, «GLIncomeStatement») = 1 AND (Fields! ISGRPCODE2.Value, «GLIncomeStatement») = 1, (Fields! NETPERD.Value, «GLIncomeStatement»), 0)) Ошибка: Выражение Variable (ContractRevenue) для тела отчета использует выражение aggreggate без области видимости. Область требуется для всех агрегатов, используемых за пределами области данных, если только отчет содержит ровно один набор данных. – Ian