Переменные
Переменные предназначены для хранения информации различных типов – результатов вычисления выражений и данных, введенных в поля ввода – под некоторым именем. Имя переменной следует задавать в соответствии с соглашением об именованиях. Тип переменной определяется типом впервые присваиваемого значения или типом соответствующего поля ввода. В дальнейшем переменной должны присваиваться значения того же типа.
Пример:
а = 25/5 // а – переменная числового типа б = "Инфо" // б – переменная строкового типа д_1 = 01.01.2015 // д_1 – переменная типа дата
Для определения переменной объектного типа используется ключевое слово СОЗДАТЬ. Универсальный конструктор СОЗДАТЬ заполняет поля объекта значениями по умолчанию. Также могут использоваться специальные функции-конструкторы, для каждого объектного типа – свои.
Пример:
СОЗДАТЬ(Оп, ТИП_ОПЕРАЦИЯ) // Оп – переменная типа "Операция", // используется универсальный конструктор Сч = СЧЕТ_СЧИТАТЬ("50") // Сч – переменная типа "Счет", // используется специальный конструктор
Узнать тип какой-либо переменной можно при помощи функции ТИП_ПЕРЕМ.
Общие переменные
Общие переменные используются для обмена данными между библиотеками функций и формульной частью бланка. Определения общих переменных располагаются в библиотеках и начинаются с ключевого слова ПЕРЕМ. Общая переменная создается при подключении библиотеки и существует до конца работы с бланком. После создания к общей переменной можно обращаться из формульной части и из любой функции любой подключенной библиотеки. Поэтому не допускается одновременно использовать библиотеки, содержащие определения общих переменных с одинаковыми именами.
Определения общих переменных бывают двух видов:
- С принудительным заданием начального значения при каждом пересчете бланка.
- Сохраняющие значение вне зависимости от пересчета бланка.
Соответствующие строки определений в библиотеке будут выглядеть следующим образом:
ПЕРЕМ <имя переменной> = <начальное значение> ПЕРЕМ <тип переменной> : <имя переменной>
- <начальное значение>
- выражение, задающее тип общей переменной;
- <тип переменной>
- ключевое слово описания типов.
Для общих индексных переменных допускаются следующие виды объявления:
ПЕРЕМ <имя переменной>! ПЕРЕМ <имя переменной>[]
Замечания:
- В библиотеке после ключевого слова ПЕРЕМ можно делать определение только одной общей переменной.
- Определение общей переменной должно занимать только одну строку.
- Для индексных переменных тип элемента и индекса не задаются.
Пример:
// ---------------------------- Библиотека MyLIB -------------------------------- // Общие переменные 1-го типа ПЕРЕМ Номер = 1 ПЕРЕМ Дата = 20.04.2015 ПЕРЕМ База = БД_ОТКРЫТЬ("TEST") ПЕРЕМ Номер_2 = Номер + 1 // Общие переменные 2-го типа ПЕРЕМ ТИП_ЛОГИКА : Признак ПЕРЕМ ТИП_ЧИСЛО : КоличПересч ПЕРЕМ ТИП_ОПЕРАЦИЯ : Оп // Общие индексные переменные ПЕРЕМ даты! ПЕРЕМ суммы[] // то же самое, что суммы!
//----------------------- Формульная часть бланка --------------------------------- ИСПОЛЬЗОВАТЬ ("MyLIB") // подключаем библиотеку и создаем общие переменные Кол = База.ВСЕГО // обращаемся к общей базе данных Номер = Номер + 1 КоличПересч = КоличПересч + 1
Отличие общих переменных 1-го и 2-го типа в том, что переменная Номер по окончании каждого пересчета бланка будет равна 2, а значение переменной КоличПересч будет возрастать на единицу с каждым пересчетом. Заметим, что хотя значение переменной Номер в конце пересчета становится равным 2, но значение переменной Номер_2 не становится равным 3, т.к. на момент задания ее начального значения Номер=1.
Особым видом переменных, которые неявно присутствуют в любой программе на внутреннем языке являются определения и реквизиты. Подобно общим переменным, определения и реквизиты доступны во всех функциях и формульном разделе.
См. также: