15.2.6.4.4 Правило описания значений параметров |
Текст запроса может содержать параметры, значение которых описывается в служебной части. В тексте запроса параметры должны быть выделены в формате, поддерживаемом базой данных, в которой создан набор данных отчета (для 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=Разработал;;;
См. также: