среда, 23 апреля 2014 г.

Константы

На следующей схеме изображено взаимодействие объектов встроенного языка для работы с константами.


КонстантыНабор – предоставляет возможность проведения операций чтения и записи сразу для группы констант, в частном случае – для всех констант. Также используется в форме констант для хранения, записи и считывания констант.
КонстантаМедеджерЗначения.<имя> - используется для доступа к константе. Любая запись константы (интерактивно в форме, объекты КонстантыНабор и КонстантаМенеджер.<имя>) создает объект этого типа и производит запись с его помощью, что обеспечиваем вызов модуля и обработчиков событий этого объекта.
Ниже приведены примеры использования объектов встроенного языка для работы с константами.

// 1. Глобальный контекст
//    Константы

// Пример: установить значение константы.
Константы.Бухгалтер.Установить("Сидоров Петр Иванович");

// 2. объект КонстантыМенеджер
//    .<имя константы>
//    [<имя константы>]
//    Для Каждого ... Из ... Цикл ... КонецЦикла;

// Пример: прочитать значение константы.
Результат = Константы.ПрефиксНумерации.Получить();
Сообщить("Значение константы ПрефиксНумерации = " + Результат);

// Пример: установить значение константы ПрефиксНумерации равным ЦБ.
Константы["ПрефиксНумерации"].Установить("ЦБ");
Сообщить("Новое значение = " + Константы["ПрефиксНумерации"].Получить());

// Пример: очистить значения всех констант.
Для Каждого ОчереднаяКонстанта Из Константы Цикл
   
ОчереднаяКонстанта.Установить(Неопределено);
КонецЦикла;

// 3. объект КонстантыМенеджер
//    СоздатьНабор()

// Пример: установить новые значения нескольких констант.
Набор = Константы.СоздатьНабор("Руководитель, Бухгалтер");
Набор.Руководитель = "Николаев Денис Павлович";
Набор.Бухгалтер = "Николаева Людмила Сергеевна";
Набор.Записать();

// 5. объект КонстантыМенеджер.<имя>
//    СоздатьМенеджерЗначения()

// Пример: вывести значения всех констант, существующих в конфигурации.
Для Каждого ОчереднаяКонстанта Из Константы Цикл
   
ИмяКонст = ОчереднаяКонстанта.СоздатьМенеджерЗначения().Метаданные().Имя;
   
ЗначениеКонст = ОчереднаяКонстанта.Получить();
   
Сообщить("Константа " + ИмяКонст + " = " + ЗначениеКонст);
КонецЦикла;



ПРИМЕЧАНИЕ. Заливкой выделены события, выполняющиеся в транзакции записи.

Работа с формой констант осуществляется при помощи объекта КонстантыНабор, который в свою очередь, использует объект КонстантаМенеджерЗначения.<имя>.
Особенности внутренней реализации объекта КонстантыНабор таковы, что при записи набора констант обработчики события ОбработкаПроверкиЗаполнения(), ПередЗаписью() и ПриЗаписи() модуля менеджера значения константы будут вызваны для каждой константы, входящей в записываемый набор.


Добавить комментарий

Комментариев нет :

Отправить комментарий