Имена переменных состоят из букв английского алфавита и символов подчеркивания.
Переменные могут динамически принимать значения любого типа: символьные, числовые, дата, логические, ссылки на объект или область памяти.
Поддерживаются 5 классов переменных:
1. Глобальные GLOBAL: создаются как в Delphi, так и в программе; доступны в любом месте программы; существуют до момента завершения работы комплекса
Пример
TaskName – имя задачи,
TaskNum – номер модуля,
UserKod – код пользователя
Пример
GLOBAL Var1, Var2:='Инициализация переменной'.
2. Уровня PUBLIC: создаются как в Delphi, так и в программе; доступны в любом месте программы; существуют до момента завершения программы
Пример
PUBLIC Var1, Var2:='Инициализация переменной'
3. Личные PRIVATE: создаются как в Delphi, так и в программе; доступны в текущей процедуре и во всех вызываемых подпрограммах и функциях.
Пример
PRIVATE Prv1,Prv2
4. Локальные LOCAL: создаются в программе; доступны только в текущей процедуре.
Пример
LOCAL Loc1,Loc2
5. Временные TEMP; не нуждаются в объявлении и существуют только в текущей строке программы
При объявлении переменные могут быть инициализированы:
Синтаксис
PUBLIC/PRIVATE/LOCAL идент. переменной1[:=выражение инициализации] [,идент.переменной2 [:=выражение инициализации]] ...
Приоритеты переменных в порядке убывания: Temp, Local, Field (поля текущей рабочей области), Private, Public, Global.
Обычные переменные и функции, объявленные в Delphi в интерпретаторе недоступны!
ПРЕДОПРЕДЕЛЕННЫЕ ПЕРЕМЕННЫЕ
Следующие переменные класса GLOBAL определены всегда:
WinVer Признак Windows Версии (всегда True)
AppStartTime Время запуска проекта
AppStartDate Название проекта
TaskName Имя задачи (модуля)
TaskNum Номер модуля
UserKod Код пользователя
LevelNum Уровень (используется для справочников)
ReflisPath Путь к справочникам
OpDataPath Путь к базам данных
EtalonPath Путь к эталону
GlbVar Переменная пользователя, не инициализирована, используется при необходимости.
Кроме вышеперечисленных создаются переменные, совпадающие с системными параметрами проекта!
При высветке документа дополнительно определяются переменные PUBLIC класса, которые определяются для каждого уровня документа и существуют до момента закрытия документа.
CurYear Текущий год – число
CurMonth Текущий месяц – число
CurDate Текущая дата
CurKinddoc 3 буквенный идентификатор текущего документа
CurLvlNum Номер уровня текущего документа
CurLevel Порядковый номер формы уровня документа в иерархии открытых форм документа
Var, Var2 Переменные пользователя, не инициализированы, используются при необходимости
Msg Переменная для сообщений