Как получить сумму столбца между определенным диапазоном дат в SSRS - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь найти способ получить сумму столбца между определенным диапазоном дат.У меня есть набор данных, который содержит данные за 2016–2019 гг., И я хотел бы использовать одну таблицу для хранения всех четырех лет, чтобы впоследствии разрешить интерактивную сортировку.Я создал параметры с установленными значениями для 1/1 / 201x и 12/31 / 201x.

Это то, что я сейчас пытаюсь, но получаю сообщение об ошибке.

=IIF(Fields!TxnDate.Value >= Parameters!start2016.Value AND Fields!TxnDate.Value <= Parameters!end2016.Value, sum(Fields!Amount.Value),0)

Ошибка

System.Web.Services.Protocols.SoapException: The Value expression for the text box ‘Total2016’ has a scope parameter that is not valid for an aggregate function.  The scope parameter must be set to a string constant that is equal to either the name of a containing group, the name of a containing data region, or the name of a dataset.
   at Microsoft.ReportingServices.Library.ReportingService2010Impl.CreateReportEditSession(String Report, String Parent, Byte[] Definition, String& EditSessionID, Warning[]& Warnings)
   at Microsoft.ReportingServices.WebServer.ReportingService2010.CreateReportEditSession(String Report, String Parent, Byte[] Definition, String& EditSessionID, Warning[]& Warnings)

Что мне нужно сделать, чтобы получить выражение для суммирования общей суммы в столбце в диапазоне дат?

Примечание. Общая сумма будет настроена как валюта.

1 Ответ

1 голос
/ 18 мая 2019

Вы просто хотите переместить свою СУММУ за пределы ИИФ.

=SUM(IIF(Fields!TxnDate.Value >= Parameters!start2016.Value AND Fields!TxnDate.Value <= Parameters!end2016.Value, Fields!Amount.Value, 0))

Если ваша сумма не является целым числом, вам нужно преобразовать 0 в десятичную с CDEC(0) в противном случаевы получите сообщение об ошибке «Не удается объединить разные типы».

Является ли ваша дата текстовой строкой?Ваша оценка может работать некорректно, если это текст в формате мм / дд / гггг.Возможно, вам придется конвертировать в дату, чтобы сравнить с CDATE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...