Параметры запроса: различия между версиями
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| Строка 32: | Строка 32: | ||
!Описание | !Описание | ||
|- | |- | ||
|<code></code><br>'''''Символы''''' | |<code>Name</code><br>'''''Символы''''' | ||
| | |Имя параметра. Здесь надо указать то же самое имя параметра, который вы использовали в тексте запроса. Некоторые СУБД (например, MS Access) не поддерживают именованные параметры. В этом случае оставьте это свойство без изменений. | ||
|- | |- | ||
|<code></code><br>'''''Символы''''' | |<code>DataType</code><br>'''''Символы''''' | ||
| | |Тип данных параметра. | ||
|- | |- | ||
|<code></code><br>'''''Символы''''' | |<code>DefaultValue</code><br>'''''Символы''''' | ||
| | |Значение по умолчанию, которое будет присвоено параметру при отсутствии значения в свойстве Expression или невозможности его вычислить (например, при операциях с запросом в режиме дизайна отчета). | ||
|- | |- | ||
|<code></code><br>'''''Символы''''' | |<code>Expression</code><br>'''''Символы''''' | ||
| | |Выражение, которое возвращает значение параметра. Подробнее о выражениях смотрите в главе "Выражения". Это выражение будет вычислено при запуске отчета на выполнение. | ||
|- | |- | ||
|<code></code><br>'''''Символы''''' | |<code>Size</code><br>'''''Символы''''' | ||
| | |Размер данных параметра. Это свойство нужно указывать, если параметр имеет тип данных "строка". | ||
|- | |- | ||
|} | |} | ||
Версия от 04:15, 16 октября 2026
В тексте запроса могут присутствовать параметры. Рассмотрим следующий запрос:
SELECT DISTINCT
cl."ID" AS lab_id,
e."ID" AS fio_id,
e."SURNAME" AS surname,
e."NAME" AS name,
e."PATRONYMIC" AS patronymic,
CONCAT(e."SURNAME", ' ', e."NAME", ' ', e."PATRONYMIC") AS fio
FROM "COMPANY_LEVEL" cl
INNER JOIN "EMPLOYEE_CLB" e_clb
ON cl."ID" = e_clb."COMPANY_LEVEL_ID"
INNER JOIN "EMPLOYEE" e
ON e."ID" = e_clb."ENTITY_ID"
WHERE cl."ID" = @lab_id
ORDER BY fio;
Это запрос к демонстрационной базе MS SQL. В запросе определен параметр с именем param1. Здесь надо сделать важное замечание: способ определения параметров в запросе отличается для разных СУБД. Для MS SQL параметр обозначается символом @; для MS Access параметры не имеют имен и обозначаются символами ?.
Для того чтобы работать с параметром, надо, как минимум, определить его значение. Это можно сделать на третьем шаге мастера "Мастер запроса", который мы рассмотрели выше. Для создания параметра нажмите кнопку "Добавить параметр". Будет создан новый параметр:

Свойства
В окне справа необходимо настроить следующие свойства параметра:
| Свойство | Описание |
|---|---|
NameСимволы |
Имя параметра. Здесь надо указать то же самое имя параметра, который вы использовали в тексте запроса. Некоторые СУБД (например, MS Access) не поддерживают именованные параметры. В этом случае оставьте это свойство без изменений. |
DataTypeСимволы |
Тип данных параметра. |
DefaultValueСимволы |
Значение по умолчанию, которое будет присвоено параметру при отсутствии значения в свойстве Expression или невозможности его вычислить (например, при операциях с запросом в режиме дизайна отчета). |
ExpressionСимволы |
Выражение, которое возвращает значение параметра. Подробнее о выражениях смотрите в главе "Выражения". Это выражение будет вычислено при запуске отчета на выполнение. |
SizeСимволы |
Размер данных параметра. Это свойство нужно указывать, если параметр имеет тип данных "строка". |
Примечание
Если вы неправильно настроите свойства параметра, вы получите ошибку в момент переключения на последнюю страницу мастера.