Перейти к содержанию

Параметры: различия между версиями

Материал из Химсофт Вики
 
(не показаны 2 промежуточные версии этого же участника)
Строка 51: Строка 51:
==Использование параметров в отчете==
==Использование параметров в отчете==


===Простой параметр===
К параметру можно обращаться из выражения, используя квадратные скобки:
К параметру можно обращаться из выражения, используя квадратные скобки:


Строка 57: Строка 58:
</syntaxhighlight>
</syntaxhighlight>


===Вложенный параметр===
К вложенному параметру надо обращаться следующим образом:
К вложенному параметру надо обращаться следующим образом:


Строка 63: Строка 65:
</syntaxhighlight>
</syntaxhighlight>


Так как параметр имеет определенный тип (он задан в свойстве DataType), с параметром можно выполнять действия, разрешенные для типа данных. Так, параметры строкового типа можно использовать в выражении следующим образом:
===Строковый параметр===
Так как параметр имеет определенный тип (он задан в свойстве <code>DataType</code>), с параметром можно выполнять действия, разрешенные для типа данных.  
 
Так, параметры строкового типа можно использовать в выражении следующим образом:


<syntaxhighlight lang="js">
<syntaxhighlight lang="js">
Строка 69: Строка 74:
</syntaxhighlight>
</syntaxhighlight>


Рассмотрим пример использования параметра. Допустим, у нас есть отчет, печатающий таблицу Employees (Сотрудники). Мы хотим распечатать информацию о сотруднике с указанным номером (поле EmployeeID). Для этого создадим параметр с именем "Номер сотрудника". Укажем тип параметра – Int32, так как именно этот тип имеет поле EmployeeID. Чтобы отфильтровать сотрудника с указанным номером, зайдем в редактор бэнда "Данные" и на закладке "Фильтр" укажем следующее выражение:
===Пример===
#Существует отчет, печатающий таблицу <code>Employees</code> (Сотрудники).  
#Требуется распечатать информацию о сотруднике с указанным номером (поле <code>EmployeeID</code>).  
#Для этого нужно создать параметр с именем <code>Номер сотрудника</code>.  
#Укажем тип параметра – <code>Int32</code>, так как именно этот тип имеет поле <code>EmployeeID</code>.
 
::*Чтобы отфильтровать сотрудника с указанным номером, нужно зайти в редактор бэнда <code>Данные</code> и на закладке <code>Фильтр</code> указать следующее выражение:


<syntaxhighlight lang="js">
:::<syntaxhighlight lang="js">
[Employees.EmployeeID] == [Номер сотрудника]
[Employees.EmployeeID] == [Номер сотрудника]
</syntaxhighlight>
</syntaxhighlight>


Чтобы передать значение параметра из вашей программы в отчет, используйте следующий код:
::*Чтобы передать значение параметра из программы в отчет, нужно использовать следующий код:


<syntaxhighlight lang="js">
:::<syntaxhighlight lang="js">
report1.SetParameterValue("Номер сотрудника", 2);
Report.SetParameterValue("Номер сотрудника", 2);
</syntaxhighlight>
</syntaxhighlight>

Текущая версия от 07:57, 19 октября 2026

Параметр – это переменная, значение которой может быть определено как в самом отчете, так и вне его (программа, вызывающая отчет, может передавать в него значения параметров).

Параметр может использоваться в выражениях, выводиться в объектах типа Текст.

Наиболее частые способы использования параметров

  • фильтрация данных по условию, заданному в параметре;
  • печать значения параметра в отчете.

Свойства параметров

Свойство Описание
Name Имя параметра может содержать любые символы, кроме точки ..
DataType Тип данных параметра.
Expression Выражение, которое возвращает значение параметра. Подробнее о выражениях смотрите в главе Выражения.

Это выражение будет вычислено при обращении к параметру.

Value Значение параметра. Это свойство недоступно в дизайнере и может быть заполнено программным способом.

Вы должны настроить свойства Name и DataType.

Свойство Expression можно оставить пустым. В этом случае значение параметра надо передавать программным способом.

Создание параметра

Чтобы создать параметр, выберите элемент Параметры отчета в окне Данные и выберите пункт Новый параметр в контекстном меню:

Нажмите клавишу F2 и задайте желаемое имя параметра, затем переключитесь в окно Свойства и укажите тип данных параметра (свойство DataType).

Параметры могут быть вложенными. Чтобы создать вложенный параметр, выберите родительский параметр и выберите пункт Новый параметр в контекстном меню:

При этом можно обращаться как к родительскому параметру, так и к вложенному.

Количество уровней вложенности не ограничено.

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

Простой параметр

К параметру можно обращаться из выражения, используя квадратные скобки:

[Имя параметра]

Вложенный параметр

К вложенному параметру надо обращаться следующим образом:

[Родительский параметр.Дочерний параметр]

Строковый параметр

Так как параметр имеет определенный тип (он задан в свойстве DataType), с параметром можно выполнять действия, разрешенные для типа данных.

Так, параметры строкового типа можно использовать в выражении следующим образом:

[Строковый параметр].Substring(0, 2)

Пример

  1. Существует отчет, печатающий таблицу Employees (Сотрудники).
  2. Требуется распечатать информацию о сотруднике с указанным номером (поле EmployeeID).
  3. Для этого нужно создать параметр с именем Номер сотрудника.
  4. Укажем тип параметра – Int32, так как именно этот тип имеет поле EmployeeID.
  • Чтобы отфильтровать сотрудника с указанным номером, нужно зайти в редактор бэнда Данные и на закладке Фильтр указать следующее выражение:
[Employees.EmployeeID] == [Номер сотрудника]
  • Чтобы передать значение параметра из программы в отчет, нужно использовать следующий код:
Report.SetParameterValue("Номер сотрудника", 2);