Управление пользовательским интерфейсом для SSRS ReportViewer для выбора даты начала и окончания - PullRequest
1 голос
/ 20 июня 2011

У меня есть ситуация, когда я хочу, чтобы пользователь вводил дату начала и дату окончания для данных отчета.Кроме того, должен быть раскрывающийся список, позволяющий пользователю выбрать один из следующих вариантов:

  • последние 7 дней
  • последние 14 дней
  • последние 30 дней

Если пользователь выбирает одно из этих значений, датчики должны корректировать эти значения?Я не могу понять, как подойти к этому.У кого-нибудь есть идеи.

Ответы [ 2 ]

1 голос
/ 29 июля 2011

Вы можете сделать это в SSRS.Не отлично, но приемлемо.У первого параметра должен быть список выбора с двумя вариантами.Выберите даты или последние X дней.Следующим параметром будет дата начала.Третий параметр - это другой список выбора.Это либо список дат, либо список чисел в зависимости от выбора, который они сделали в начале.

Другим способом было бы показать пользователю два отчета.один с открытым диапазоном дат и один с предопределенным списком выбора дат.Это будут связанные отчеты, которые вызывают один и тот же базовый отчет, но отображают разные параметры.Такой подход я бы выбрал для такого пользовательского запроса.

1 голос
/ 20 июня 2011

Это невозможно только изнутри SSRS. Тем не менее, вы все еще можете достичь своей цели с небольшим количеством дополнительной работы. Вот немного псевдокода, чтобы вы начали. Этот метод работает, и мы часто используем его в нашей организации.

  1. В SSRS скрыть параметры отчета
  2. Создать новую пустую страницу HTML / ASPX
  3. Используя только HTML, создайте свои собственные сборщики данных и пользовательский выпадающий список "последние 7 дней".
  4. Используйте Javascript / jQuery на клиенте для обработки вашей пользовательской логики.
  5. Поместите кнопку «Создать отчет» на страницу.
  6. Вставить скрытый iFrame на страницу
  7. Когда пользователь нажимает «Создать отчет», выполните HTTP POST, передав параметры отчета в URL (что-то вроде http://server/reportserver?/dir/Report&rs:Command=Render&Parm1=VALUE1&Parm1=VALUE2&Parm1=VALUE3)
  8. Показать отчет в iFrame

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

...