Как использовать SQL запросы при создании внутреннего источника данных отчета в дизайнере отчетов FastReport .NET

02.09.2019

При создании подключения к SQL СУБД вы можете задать запрос, чтобы выбрать отфильтрованные или комбинированные данные. Штатные средства мастера создания источника данных также позволяют включать параметры в SQL запрос. При этом, обозначение параметра будет зависеть от типа СУБД, к которой происходит подключение. Например, для MS SQL параметр в запросе имеет префикс @. А для базы Access вместо параметра указывается символ "?". Если параметров несколько, то в запрос они будут подставляться согласно порядку в списке параметров.

Допустим, мы создали строку подключения к базе данных MS SQL. Следующий шаг – выбор таблиц:

 

На этом этапе мы можем создать SQL запрос с помощью кнопки Add SQL query… . Результат будущего запроса будет сохранен в таблице. Требуется задать ее имя:

 

Затем, пишем текст запроса:

 

Конечно, тут можно воспользоваться визуальным конструктором запросов, но нам сейчас это не нужно, цель демонстрации – запрос.

Мы указали параметр в условии запроса. На следующем шаге нужно создать параметр с тем же именем.

 

Так как мы просто демонстрируем работу с параметрами, то просто зададим значение по умолчанию:

Далее выбираем нужные колонки.

Вот и все. Таблица готова.

Помните, желательно писать запросы по всем правилам SQL, с указанием схемы и, возможно, с названиями в кавычках. Вот пример правильного запроса к базе postgresql:

1
SELECT * FROM public."Users" WHERE "Users"."Name"= @Name

Но, помимо параметризированного запроса, мы также можем использовать динамические запросы. Это запросы, которые мы формируем в текстовом виде, а затем – выполняем. Такие запросы позволяют с помощью переменных отчета подставлять, например, имя таблицы или параметра, или часть условия where – все что угодно. Выглядит это так:

 

Но и это еще не все. Вы также можете использовать хранимые функции и хранимые процедуры в запросе. Пример использования функции:

 

Параметры в функции передаются в скобках через запятую.

Пример использования хранимой процедуры:

Параметры в хранимой процедуре следуют после имени процедуры через запятую.

Таким образом вы можете расширить возможности формирования данных, чтобы не делать это внутри отчета.

.NET FastReport Дизайнер SQL .NET FastReport Дизайнер SQL
17 февраля 2025

Добавление новых пользователей в МоиОтчеты Облако

В Business-редакции сервиса МоиОтчеты Облако можно добавлять пользователей в одно рабочее пространство для одновременной совместной работы.
10 февраля 2025

Как попробовать FastReport .NET WEB перед покупкой

Протестировав WEB пак перед покупкой, вы сможете сделать осознанный выбор: подходит ли вам FastReport .NET для ваших задач.
22 января 2025

Как подключить РЕД БД к генератору отчетов FastReport .NET

Пошаговая инструкция по подключению РЕД БД к генератору отчётов FastReport .NET. Эффективные методы и рекомендации для создания отчётов на основе данных из базы.