Текст запроса может содержать параметры, значение которых описывается в служебной части. В тексте запроса параметры должны быть выделены в формате, поддерживаемом базой данных, в которой создан набор данных отчета (для Microsoft Access параметры должны быть взяты в квадратные скобки).

Параметр и его значение описываются в виде NAME=VALUE;, где точка с запятой - признак окончания значения параметра. После точки с запятой может идти следующий параметр.

Если необходимо использовать точку с запятой в качестве значения, ее необходимо удвоить.

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

·         Произвольное текстовое значение - описание параметра не может начинаться со знаков % # ? $ & * @ ^ ! ~. Если необходимо использование одного из этих символов в начале текста, то символ необходимо удвоить.

·         Основной источник данных - описание параметра должно начинаться со знака %. Далее вводится номер или имя/псевдоним поля основного источника данных. Вместо значения параметра будет возвращено значение поля текущей записи основного источника данных.

·         Дополнительный источник данных  - описание параметра должно начинаться со знака «#». Далее вводится номер или имя/псевдоним поля дополнительного источника данных. Вместо значения параметра будет возвращено значение поля текущей записи дополнительного источника данных.

·         Именованный объект - описание параметра должно начинаться со знака ?. Далее вводится имя именованного объекта. Далее через точку можно указать номер поля или имя/псевдоним поля которые необходимо вернуть. В квадратных скобках можно указать номер записи которую необходимо вернуть. Если именованный объект возвращает массив данных, то в квадратных скобках указываются координаты массива. В обычных скобках можно указать параметры, которые следует передать этому именованному объекту.

·         Параметр в этой же строке - если параметр уже был описан в этой же строке, то его описание должно начинаться со знака &. Далее вводится номер/имя параметра, значение которого должно подставиться в данный параметр (значение не пересчитывается).

·         Служебное слово - описание параметра должно начинаться со знака $. Далее вводится служебное слово (см. раздел 15.2.11.4).

Допускается использовать вложенные параметры (параметры содержащие значение из параметров), но не более 20 раз.

Пример описания значений параметров:

REM Описание входных параметров запроса

INPUT

REM В качестве Par1 взять значение поля номер 2 текущей записи основного источника данных.

Par1=%2;

REM В качестве Par2 взять значение поля P23 (псевдоним/имя) текущей записи дополнительного источника данных.

Par2=#P23;

REM В качестве Par3 взять значение поля P4 (псевдоним/имя) записи (или строки массива данных) номер 2 именованной функции (набор данных, запрос, функция) с именем USERDATA.

REM При открытии USERDATA передать ему в качестве параметра Par1 значение поля номер 2 текущей записи основного источника данных.

Par3=?USERDATA[2].P4(Par1=%2);

REM В качестве Par4 взять строку ''Разработал;''

Par4=Разработал;;;

 

См. также:

15.2.6.4 Именованные объекты