Как использовать 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
25 марта 2025

Как объединить несколько отчетов в один из FastReport .NET

FastReport .NET — это мощный инструмент для создания и управления отчётами. В данной статье мы рассмотрим, как объединить несколько отчётов в один в FastReport .NET.
11 марта 2025

Как использовать FastReport .NET Avalonia на Fedora Workstation с протоколом Wayland

В данной статье мы разберем, как запустить FastReport .NET Avalonia на операционной системе «Fedora Workstation 39» с протоколом Wayland.
7 марта 2025

Как создать QR-код с картинкой в FastReport .NET

В статье разобрались как вставлять картинку в QR Code из дизайнера отчётов FastReport .NET всего за пару кликов.