Параметры: различия между версиями
Sidminik (обсуждение | вклад) Нет описания правки |
Sidminik (обсуждение | вклад) |
||
| Строка 46: | Строка 46: | ||
==Использование параметров в отчете== | ==Использование параметров в отчете== | ||
К параметру можно обращаться из выражения, используя квадратные скобки: | |||
[Имя параметра] | |||
К вложенному параметру надо обращаться следующим образом: | |||
[Родительский параметр.Дочерний параметр] | |||
Так как параметр имеет определенный тип (он задан в свойстве DataType), с параметром можно выполнять действия, разрешенные для типа данных. Так, параметры строкового типа можно использовать в выражении следующим образом: | |||
[Строковый параметр].Substring(0, 2) | |||
Рассмотрим пример использования параметра. Допустим, у нас есть отчет, печатающий таблицу Employees (Сотрудники). Мы хотим распечатать информацию о сотруднике с указанным номером (поле EmployeeID). Для этого создадим параметр с именем "Номер сотрудника". Укажем тип параметра – Int32, так как именно этот тип имеет поле EmployeeID. Чтобы отфильтровать сотрудника с указанным номером, зайдем в редактор бэнда "Данные" и на закладке "Фильтр" укажем следующее выражение: | |||
[Employees.EmployeeID] == [Номер сотрудника] | |||
Чтобы передать значение параметра из вашей программы в отчет, используйте следующий код: | |||
report1.SetParameterValue("Номер сотрудника", 2); | |||
Версия от 07:43, 19 октября 2026
В отчете можно определить параметры. Параметр – это переменная, значение которой может быть определено как в самом отчете, так и вне его (программа, вызывающая отчет, может передавать в него значения параметров – подробнее об этом см. "Руководство программиста"). Параметр может использоваться в выражениях, выводиться в объектах типа "Текст".
Наиболее частые способы использования параметров:
фильтрация данных по условию, заданному в параметре; печать значения параметра в отчете. Параметр имеет следующие свойства:
| Свойство | Описание |
|---|---|
Name
|
Имя параметра может содержать любые символы, кроме точки ..
|
DataType
|
Тип данных параметра. |
Expression
|
Выражение, которое возвращает значение параметра. Подробнее о выражениях смотрите в главе Выражения.
Это выражение будет вычислено при обращении к параметру. |
Value
|
Значение параметра. Это свойство недоступно в дизайнере и может быть заполнено программным способом. |
Вы должны настроить свойства Name и DataType.
Свойство Expression можно оставить пустым. В этом случае значение параметра надо передавать программным способом.
Создание параметра
Чтобы создать параметр, выберите элемент "Параметры отчета" в окне "Данные" и выберите пункт "Новый параметр" в контекстном меню:
Нажмите клавишу F2 и задайте желаемое имя параметра, затем переключитесь в окно "Свойства" и укажите тип данных параметра (свойство DataType).
Параметры могут быть вложенными. Чтобы создать вложенный параметр, выберите родительский параметр и выберите пункт "Новый параметр" в контекстном меню:
При этом можно обращаться как к родительскому параметру, так и к вложенному. Количество уровней вложенности не ограничено.
Использование параметров в отчете
К параметру можно обращаться из выражения, используя квадратные скобки:
[Имя параметра] К вложенному параметру надо обращаться следующим образом:
[Родительский параметр.Дочерний параметр] Так как параметр имеет определенный тип (он задан в свойстве DataType), с параметром можно выполнять действия, разрешенные для типа данных. Так, параметры строкового типа можно использовать в выражении следующим образом:
[Строковый параметр].Substring(0, 2) Рассмотрим пример использования параметра. Допустим, у нас есть отчет, печатающий таблицу Employees (Сотрудники). Мы хотим распечатать информацию о сотруднике с указанным номером (поле EmployeeID). Для этого создадим параметр с именем "Номер сотрудника". Укажем тип параметра – Int32, так как именно этот тип имеет поле EmployeeID. Чтобы отфильтровать сотрудника с указанным номером, зайдем в редактор бэнда "Данные" и на закладке "Фильтр" укажем следующее выражение:
[Employees.EmployeeID] == [Номер сотрудника] Чтобы передать значение параметра из вашей программы в отчет, используйте следующий код:
report1.SetParameterValue("Номер сотрудника", 2);