Основы офисного программирования и документы Word



              

Переменные, которые живут долго


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

Однако и локальные и глобальные переменные "умирают" по окончании сеанса работы. Для того чтобы сохранять данные между сеансами работы, необходимо использовать файлы, базы данных и другие внешние источники даных. Замечу, что, конечно, есть еще возможность хранить данные, как часть самого документа, например, в таблицах Word или Excel. Но сейчас мы поговорим еще об одной интересной возможности, предоставляемой при работе с офисными документами. С каждым из документов можно связать коллекцию переменных типа Variant коллекцию Variables(Variable). Эта коллекция для программистов важна - ведь время жизни входящих в нее переменных совпадает со временем жизни документа. По существу речь идет о некотором специальном файле переменных, жестко связанном с самим документом и хранящимся вместе с ним. Тем самым появляется возможность сохранять информацию о работе документе между сеансами. Применения этого полезного средства могут быть самыми разными. Можно сохранять предпочтения, сделанные пользователем при первом сеансе работы с документом, различные настройки документа и так далее. Другое применение связано с предоставлением документа во временное владение с ограничением числа возможных запусков. Например, можно иметь счетчики, подсчитывающие количество вызовов некоторой процедуры и в зависимости от значения счетчика по-разному определять дальнейшую работу с данным документом. Переменные, входящие в коллекцию Variables, создаются не так, как обычные переменные, нет необходимости в их описании в разделе объявлений какого либо модуля. Они имеют фиксированный тип Variant и создаются методом Add, типичным для создания элементов коллекций. Этот метод имеет достаточно прозрачный синтаксис:




Содержание  Назад  Вперед