Страница 1 из 2

Использование параметра запроса в отчёте

Добавлено: 02 апр 2010, 04:31
Андрей Сорокин
Добрый день, столкнулся с проблемой, которую поясню на простом примере.

БД MS SQL2008, в отчёте есть запрос с параметром:

Код: Выделить всё

SELECT * FROM Table WHERE TabDate = @RepDate
Тип @RepDate = Date
В отчёте имеется заголовок, в котором также хочется использовать данный параметр с выражением, вида: Выборка за {DataSource.Parameters["@RepDate"].ParameterValue}

Из кода приложения инициализирую данный параметр:

Код: Выделить всё

StiReport report = StiReport.GetReportFromAssembly(...);
report["@RepDate"] = DateTime.Today;
report.Show(true);
При запуске отчёта происходит корректная выборка данных, но в заголовке значение параметра не отображается... :hugging:
Что не так?

Использование параметра запроса в отчёте

Добавлено: 06 апр 2010, 12:17
Jan
Здравствуйте,

В данном случае параметр сохраняется в специальной коллекции. Попробуйте следующее выражение:\

Код: Выделить всё

{this["@RepDate"]}
Спасибо.

Использование параметра запроса в отчёте

Добавлено: 07 апр 2010, 15:40
Андрей Сорокин
Спасибо, сработало!
Хорошо было бы сделать в дизайнере так, чтобы при переносе параметра при помощи мышки из Data Sources подставлялось корректное имя объекта, т.е. в данном случае {this["@RepDate"]}
вместо {DataSource.Parameters["@RepDate"].ParameterValue}

Использование параметра запроса в отчёте

Добавлено: 08 апр 2010, 05:21
Jan
Здравствуйте,

Хорошее замечание. Поправлено.

Спасибо.

Использование параметра запроса в отчёте

Добавлено: 23 апр 2010, 10:49
Андрей Сорокин
Значение параметра не отображается в дизайнере во вкладке Preview, точнее возникает следующее сообщение: "Expression in Text property of 'Text3' can't be evaluated!"
При генерации отчёта из кода всё ОК.

Использование параметра запроса в отчёте

Добавлено: 26 апр 2010, 09:20
Anton Lozovskiy
Здравствуйте,

Пришлите пожалуйста простой пример воспроизводящий эту проблему, чтобы мы смогли разобраться и исправить ошибку.

Спасибо.

Использование параметра запроса в отчёте

Добавлено: 26 апр 2010, 13:32
Андрей Сорокин
Пожалуйста!

При переходе в дизайнере на закладку привью сообщение: Expression in Text property of 'Text1' can't be evaluated!

Использование параметра запроса в отчёте

Добавлено: 26 апр 2010, 21:29
Jan
Здравствуйте,

Все верно. В случае когда используется

Код: Выделить всё

DataSource.Parameters["@RepDate"].ParameterValue
, ParameterValue имеет значение по умолчанию. Когда используется

Код: Выделить всё

report["@RepDate"]
и это значение не указано (а оно не указано в дизайнере отчета при просмотре в закладке, т.к. заполняется из кода), из коллекции значений возвращается null, который и обрабатывается с исключением.

Спасибо.

Использование параметра запроса в отчёте

Добавлено: 27 апр 2010, 03:10
Андрей Сорокин
Что-то я не совсем понял, почему null? Я указал значение = 10 в поле Expression для отработки запроса, см. скриншот.

Использование параметра запроса в отчёте

Добавлено: 27 апр 2010, 06:30
Jan
Здравствуйте Андрей,

Но в заголовке отчета выводится

Код: Выделить всё

this[@name]?
Спасибо.