Главная | О сайте | Новости | Статьи | Программы | OLAP | Ссылки |
|
||||||||||||||
Пример использования функции Шаблон().
Это небольшой пример использования функции Шаблон(>) для доступа к контексту локального модуля. В данном примере в функции глобального модуля настраивается видимость колонок табличной части документа. Схема довольно проста. Из локального модуля вызывается глобальная функция, которой в качестве формального параметра передается контекст.
Переменная СписокКолонок - это список значений с пометками элементами которого являются идентификаторы колонок табличной части документа. В данном примере не буду рассматривать как наполнить этот список значениями, я думаю это прозрачно. Просто замечу, что между сеансами работы с документом происходит сохранение и восстановление значений массива СписокКолонок.
Локальный модуль, например документ "Счет"
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Предопределенная процедура
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Процедура ПриОткрытии()
// какие-то действия
_ВосстановитьВидимостьКолонок
(Контекст);
// какие-то действия
КонецПроцедуры
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Предопределенная процедура
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Процедура ПриЗакрытии()
// какие-то действия
СохранитьЗначение(Вид()+".СписокКолонок",СписокКолонок);
// какие-то действия
КонецПроцедуры
Глобальный модуль...
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Восстановление/установка видимости колонок
//===============================================
Процедура _ВосстановитьВидимостьКолонок
(Конт
) Экспорт
СписокКолонок="";
ВосстановитьЗначение(Конт
.Вид
()+".СписокКолонок"
,СписокКолонок
);
Для Индекс
=1 По
СписокКолонок.
РазмерСписка()
Цикл
ЗначСписка=
СписокКолонок.
ПолучитьЗначение(
Индекс);
флПометки=
СписокКолонок.
Пометка(
Индекс);
_Вычислить(
"Форма."+
ЗначСписка+
".Видимость("+флПометки+")");
КонецЦикла;
КонецПроцедуры