Обновлено 26.08.2019

Администрирование процедурных файлов

Процедурный файл состоит из набора отдельных процедур или функций (подпрограмм), реализованных с помощью встроенного интерпретатора FoxPro.

Во многих программах имеются часто выполняемые подпрограммы. Определение этих общих подпрограмм как функций уменьшает сложность и размер программ, упрощает их сопровождение и повышает быстродействие.

PROCEDURE ‹имя процедуры› - указывает начало процедуры (подпрограммы).

Команда PROCEDURE ‹имя процедуры› является оператором внутри процедурного файла. Она специфицирует начало каждой функции в программе и идентифицирует ее имя. Имена функций могут включать до 32 символов. Они должны начинаться с буквы и могут включать любую комбинацию букв, цифр и символов подчеркивания.

Далее можно указать необязательный оператор:

PARAMETERS ‹список параметров› - Определяет временные переменные в виде списка параметров через “,”.

Параметры внутри ‹списка параметров› могут быть именами любых допустимых переменных. Параметры - это всегда внутренние локальные временные переменные, которые не передаются в вызываемую программу.

Параметры в ‹списке параметров› разделяются запятыми. Если в списке перечислено больше элементов, чем передано, то оставшимся присваивается значение "ложь" (.F.).

Далее можно указать необязательный оператор:

PRIVATE ‹список временных переменных› - обеспечивает объявление в процедуре локальных временных переменных.

PUBLIC ‹список глобальных переменных› - обеспечивает объявление в процедуре глобальных переменных, т.е. переменных, которые будут доступны по имени в вызывающей программе после выполнения процедуры.

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

Любая переменная, объявленная в процедуре, “по умолчанию” является локальной, т.е. эта переменная не будет передаваться в вызываемую программу.

Оператор PRIVATE необходим, чтобы не было конфликтов имен переменных процедуры и программы, которая эту процедуру вызывает на выполнение.

Глобальные (PUBLIC) переменные должны быть объявлены таковыми до того, как им присвоены значения. Значения глобальных временных переменных могут быть изменены любой использующей их программой.

При завершении процедуры значения временных переменных, "скрытых" командой PRIVATE, восстанавливаются.

После команд PROCEDURE, PARAMETERS и PRIVATE должны следовать команды, составляющие собственно функцию. После этих команд можно, но не обязательно помещать команду.

RETURN ‹возвращаемое значение›

Таким образом, структура одной процедуры процедурного файла выглядит так:

PROCEDURE ‹имя процедуры› - указывает начало процедуры (подпрограммы).

PARAMETERS ‹список параметров› - Определяет временные переменные в виде списка параметров через ",".

PRIVATE ‹список временных переменных› - обеспечивает объявление в процедуре локальных временных переменных.

PUBLIC ‹список глобальных переменных› - обеспечивает объявление в процедуре локальных временных переменных.

‹Программа на языке FoxPro›

RETURN ‹возвращаемое значение›

В ‹Тексте процедуры› можно использовать функцию PARAMETERS():

PARAMETERS() - которая возвращает количество параметров, переданных в текущую. Возвращаемое значение - числовое. Функция полезна, когда число параметров, передаваемых в процедуру, переменно.
Наверх Задать вопрос