Возможные варианты использования:
- У вас есть документ, вам надо что-то в нем поменять, но срабатывает событие "при изменении" и едут суммы. Во внешней форме можно это сделать без обработчиков событий.
- Вам нужно заполнить реквизит формы (не объекта). Групповое изменение реквизитов работает с объектами, а не с данными формы.
- Нужно изменить заблокированные реквизиты формы (серенькие).
Изначально идея была такова (упрощенно):
ФормаИсточник = ПолучитьФорму("Документ.ЗаказКлиента.ФормаОбъекта");
ФормаПриемник = ПолучитьФорму("ВнешняяОбработка.с_ЗаполнениеИзВнешнейФормы.Форма");
Для Каждого ЭлементИсточник Из ФормаИсточник.Элементы Цикл
ЭлементПриемник = ФормаПриемник.Элементы.Добавить(ЭлементИсточник.Имя,
ЭлементИсточник.ТипЭлемента, ФормаПриемник.Элементы[ЭлементИсточник.Родитель.Имя]);
ЗаполнитьЗначенияСвойств(ЭлементПриемник, ЭлементИсточник);
КонецЦикла;
Но такой подход оказался нежизнеспособным. Для того чтобы скопировать элементы одной формы на другую, нужно иметь к ним обеим одновременный доступ. А из-за того, что метод ПолучитьФорму() доступен только на клиенте, управлять копированием можно только с клиента. Но на клиенте недоступно свойство ПутьКДанным элементов формы, не доступен метод ПолучитьРеквизиты(). Они доступны только в серверном контексте. А к нему есть доступ только у самой формы.
Поместить форму во временное хранилище и передать через клиента адрес тоже не получится, потому что она не сериализуется. Единственный выход - сериализовать форму самостоятельно.
Можно предположить, что форму все-таки можно получить из метаданных на сервере и там же обработать, но в синтаксис-помощнике на это написано:
ОбъектМетаданных: Форма (MetadataObject: Form)
Форма (Form)
Использование:
Только чтение.
Описание:
Тип: Неопределено.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Примечание:
Данное свойство всегда имеет значение Неопределено, т.к. во встроенном языке не предусмотрена работа со значением данного свойства.
Из-за того что серверный контекст формы доступен только из нее самой, копируемую форму придется редактировать. В нее нужно будет добавить функцию, возвращающую структуру с описанием формы:
&НаСервере
Функция с_ПолучитьОписаниеФормы() Экспорт
Возврат с_КопированиеФорм.с_ПолучитьОписаниеФормы(ЭтаФорма, РеквизитФормыВЗначение("Объект"));
КонецФункции
Объект мы передаем для того чтобы можно было отличить добавленные на форму колонки табличных частей от тех которые были в объекте изначально.
В форме-приемнике нужно будет прописать процедуру заполнения по переданному описанию:
&НаСервере
Процедура с_ЗаполнитьФормуПоОписанию(АдресВоВременномХранилище) Экспорт
с_КопированиеФорм.с_ЗаполнитьФормуПоОписанию(ЭтаФорма, АдресВоВременномХранилище);
КонецПроцедуры
В обработке для копирования остается только выполнить код:
ФормаИсточник = ПолучитьФорму("Документ.ЗаказКлиента.ФормаОбъекта");
ФормаПриемник = ПолучитьФорму("ВнешняяОбработка.с_ЗаполнениеИзВнешнейФормы.Форма");
АдресВоВременномХранилище = ФормаИсточник.с_ПолучитьОписаниеФормы();
ФормаПриемник.с_ЗаполнитьФормуПоОписанию(АдресВоВременномХранилище);
Вообще говоря, этого достаточно. Но если мы копируем уже открытую форму документа, хотелось бы чтобы в нее переносились данные которые уже есть на форме. Для этого делаем так:
КопироватьДанныеФормы(ФормаИсточник.Объект, ФормаПриемник.Obj);
Obj - это объект, который будет хранить копию объекта источника в форме приемника. Использовать объект приемника не получится, т.к. он будет с другим типом (вероятно, ВнешняяОбработкаОбъект).
Примечание: Если вы хотите побыстрее воспользоваться обработкой - идите в конец статьи. Там под спойлером я спрятал код, который копируется в общий модуль, и выложил пару примеров, демонстрирующих решение. Далее я поясняю как всё работает и почему так сделано.
Структура передается через временное хранилище чтобы уменьшить количество передаваемых между клиентом и сервером данных. К тому же, системные перечисления, которые используются в качестве свойств элементов, не сериализуются, и с ними пришлось бы возиться отдельно.
С добавлением элементов в структуру тоже есть некоторые нюансы, которые следует учесть:
Во-первых, элементы формы не помещаются во временное хранилище, поэтому их тоже придется сериализовать самостоятельно.
Во-вторых, если мы возьмем просто список элементов, то отсортированы они будут по алфавиту, и может так получиться, что подчиненный элемент будет добавляться раньше родителя, что вызовет ошибку.
В-третьих, в зависимости от типов и видов элементов меняется набор имеющихся свойств.
Для добавления свойства в структуру используется отдельная процедура. Свойств у элементов очень много, и если копировать их через "ОписаниеЭлемента.Вставить()" то имя свойства придется указывать дважды. Процедура просто сокращает объем текста.
Процедура с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, ИмяСвойства)
Значение = Элемент[ИмяСвойства];
ОписаниеЭлемента.Вставить(ИмяСвойства, Значение);
КонецПроцедуры
И вызывается она как то так:
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Видимость");
В зависимости от типа элемента меняется его набор свойств.
Функция с_ПолучитьОписаниеЭлемента(Элемент)
ОписаниеЭлемента = Новый Структура;
//Чтобы отличать корневые элементы от остальных, для корневых в качестве родителя передаем "Неопределено"
Если ТипЗнч(Элемент.Родитель) = Тип("УправляемаяФорма") Тогда
ОписаниеЭлемента.Вставить("Родитель", Неопределено);
Иначе
ОписаниеЭлемента.Вставить("Родитель", Элемент.Родитель.Имя);
КонецЕсли;
//Основные свойства элемента
ОписаниеЭлемента.Вставить("Имя", Элемент.Имя);
ОписаниеЭлемента.Вставить("ТипЭлемента", ТипЗнч(Элемент));
//Остальные свойства в зависимости от типа элемента
Если ТипЗнч(Элемент) = Тип("ГруппаФормы") Тогда
с_ДобавитьОписаниеГруппыФормы(ОписаниеЭлемента, Элемент);
ИначеЕсли ТипЗнч(Элемент) = Тип("ТаблицаФормы") Тогда
с_ДобавитьОписаниеТаблицыФормы(ОписаниеЭлемента, Элемент);
ИначеЕсли ТипЗнч(Элемент) = Тип("ПолеФормы") Тогда
с_ДобавитьОписаниеПоляФормы(ОписаниеЭлемента, Элемент);
ИначеЕсли ТипЗнч(Элемент) = Тип("КнопкаФормы") Тогда
с_ДобавитьОписаниеКнопкиФормы(ОписаниеЭлемента, Элемент);
КонецЕсли;
Для Каждого КлючИЗначение Из ОписаниеЭлемента Цикл
//Заменяем в пути к данным "Объект" на "Obj" чтобы не было конфликтов между объектами форм источника и приемника
Если (КлючИЗначение.Ключ = "ПутьКДанным"
Или КлючИЗначение.Ключ = "ПутьКДаннымПодвала"
Или КлючИЗначение.Ключ = "ПутьКДаннымЗаголовка")
И Лев(КлючИЗначение.Значение, 6) = "Объект" Тогда
ОписаниеЭлемента[КлючИЗначение.Ключ] = "Obj" + Прав(КлючИЗначение.Значение, СтрДлина(КлючИЗначение.Значение) - 6);
КонецЕсли;
КонецЦикла;
Возврат ОписаниеЭлемента;
КонецФункции
Для получения коллекций (подчиненных элементов или командной панели) создана отдельная процедура, добавляющая элементы в цикле.
Функция с_ПолучитьОписаниеЭлементов(КоллекцияЭлементовФормы)
ОписаниеКоллекции = Новый Массив;
Для Каждого Элемент Из КоллекцияЭлементовФормы Цикл
ОписаниеЭлемента = с_ПолучитьОписаниеЭлемента(Элемент);
ОписаниеКоллекции.Добавить(ОписаниеЭлемента);
КонецЦикла;
Возврат ОписаниеКоллекции;
КонецФункции
Заполнение описания в зависимости от типов элементов можно посмотреть в коде в конце статьи. Интеллектуальной нагрузки оно не содержит, только долгую кропотливую работу.
Аналогичные действия производятся и в обратном порядке.
Заполнение свойств выделено в отдельную процедуру с той же целью - уменьшить количество текста.
&НаСервере
Процедура с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, ИмяСвойства);
Если Элемент[ИмяСвойства] <> ОписаниеЭлемента[ИмяСвойства] Тогда
Элемент[ИмяСвойства] = ОписаниеЭлемента[ИмяСвойства];
КонецЕсли;
КонецПроцедуры
И вызывается она так:
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Видимость");
Что касается архитектуры загрузки, то она немного изменена. Обусловлено это тем, что когда мы заполняли описание из формы, то работали и с отдельными элементами/группами и с коллекциями (подчиненными элементами). В структуре же содержатся только массивы описаний, поэтому отталкиваться следует не от процедуры заполнения свойств по одному элементу, а от обработки массива.
Процедура с_СоздатьЭлементы(Форма, ОписаниеКоллекции)
Для Каждого ОписаниеЭлемента Из ОписаниеКоллекции Цикл
//"Неопределено" в качестве родителя записано у корневых элементов
Если ОписаниеЭлемента.Родитель = Неопределено Тогда
Родитель = Форма;
Иначе
Родитель = Форма.Элементы[ОписаниеЭлемента.Родитель];
КонецЕсли;
//Создаем элемент на форме
Элемент = Форма.Элементы.Добавить(ОписаниеЭлемента.Имя, ОписаниеЭлемента.ТипЭлемента, Родитель);
//Заполняем элемент в соответствии с описанием
с_ЗаполнитьСвойстваЭлементаФормы(Форма, Элемент, ОписаниеЭлемента);
КонецЦикла;
КонецПроцедуры
И уже в процедуре заполнения делается ветвление в зависимости от типа элемента:
Процедура с_ЗаполнитьСвойстваЭлементаФормы(Форма, Элемент, ОписаниеЭлемента)
Если ОписаниеЭлемента.ТипЭлемента = Тип("ГруппаФормы") Тогда
с_ЗаполнитьСвойстваГруппыФормы(Форма, Элемент, ОписаниеЭлемента);
ИначеЕсли ОписаниеЭлемента.ТипЭлемента = Тип("ТаблицаФормы") Тогда
с_ЗаполнитьСвойстваТаблицыФормы(Форма, Элемент, ОписаниеЭлемента);
ИначеЕсли ОписаниеЭлемента.ТипЭлемента = Тип("ПолеФормы") Тогда
с_ЗаполнитьСвойстваПоляФормы(Элемент, ОписаниеЭлемента);
ИначеЕсли ОписаниеЭлемента.ТипЭлемента = Тип("КнопкаФормы") Тогда
с_ЗаполнитьСвойстваКнопкиФормы(Элемент, ОписаниеЭлемента);
КонецЕсли;
КонецПроцедуры
Как и при заполнении описания, заполнение свойств элементов в зависимости от типа интереса не представляет и можно найти в полной версии кода (тремя абзацами ниже).
Для демонстрации кода я сделал две простые обработки. Их краткое описание:
Заполнение из внешней формы. Подключаемая к подсистеме дополнительных отчетов и обработок БСП обработка заполнения. В документах, указанных в списке назначений появляется кнопка "Заполнение->Заполнение из внешней формы (С)". При нажатии на кнопку открывается копия формы со всеми данными, но отключенными событиями. При нажатии на кнопку "Перенести в документ" введенные данные копируются в первоначальную форму. ВАЖНО!!! Для работы обработки в форме документа должна быть процедура с_ПолучитьОписаниеФормы(), которую можно найти в модуле объекта обработки.
Копирование форм. Демонстрирует работу описанного в статье подхода. Имеет форму источник и форму приемник. Весь код находится в них, изменять конфигурацию не нужно.
#Область ПолучитьОписаниеФормы
// Функция - Получить описание формы
//
// Пример вызова:
// ОписаниеФормы = с_КопированиеФорм.с_ПолучитьОписаниеФормы(ЭтаФорма, РеквизитФормыВЗначение("Объект"));
//
// Параметры:
// Форма - УправляемаяФорма - Форма, описание которой требуется получить
// Объект - Объект формы - от типа объекта зависит набор возвращаемых свойств, а от метаданных объекта зависит набор реквизитов формы
//
// Возвращаемое значение:
// - Адрес во временном хранилище - во временном хранилище содержится структура с описанием формы
//
Функция с_ПолучитьОписаниеФормы(Форма, Объект) Экспорт
ОписаниеФормы = Новый Структура;
//Реквизиты
с_ДобавитьРеквизитыФормы(ОписаниеФормы, Форма, Объект);
//Команды
с_ДобавитьКомандыФормы(ОписаниеФормы, Форма);
//Свойства и элементы формы
с_ДобавитьСвойстваУправляемойФормы(ОписаниеФормы, Форма, Объект);
//Временное хранилище используется чтобы избежать передачи описания между клиентом и сервером
АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(ОписаниеФормы);
Возврат АдресВоВременномХранилище;
КонецФункции
//Добавляет в описание формы массив реквизитов формы. В том числе добавленные на форму колонки табличных частей
Процедура с_ДобавитьРеквизитыФормы(ОписаниеФормы, Форма, Объект)
//Тип объекта потребуется для определения добавленных на форму колонок ТЧ
ТипОбъекта = ТипЗнч(Объект);
ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипОбъекта);
ОписаниеРеквизитов = Новый Массив;
Для Каждого Реквизит Из Форма.ПолучитьРеквизиты() Цикл
ОписаниеРеквизита = Новый Структура;
//Основные свойства реквизитов
с_ДобавитьЗначениеСвойства(ОписаниеРеквизита, Реквизит, "Заголовок");
с_ДобавитьЗначениеСвойства(ОписаниеРеквизита, Реквизит, "Имя");
с_ДобавитьЗначениеСвойства(ОписаниеРеквизита, Реквизит, "Путь");
с_ДобавитьЗначениеСвойства(ОписаниеРеквизита, Реквизит, "СохраняемыеДанные");
с_ДобавитьЗначениеСвойства(ОписаниеРеквизита, Реквизит, "ТипЗначения");
//Для копирования уже открытых форм может потребоваться передача значений в элементах
Если Реквизит.Имя = "Объект" Тогда
ОписаниеРеквизита.Имя = "Obj";
ОписаниеРеквизита.ТипЗначения = ОбъектМетаданных.Имя;
Иначе
ОписаниеРеквизита.Вставить("Значение", Форма[Реквизит.Имя]);
КонецЕсли;
ОписаниеРеквизитов.Добавить(ОписаниеРеквизита);
//Добавляем колонки не существующие в ТЧ объекта и колонки реквизитов с типом ТаблицаЗначений
Если Реквизит.Имя = "Объект" Или Реквизит.ТипЗначения = Новый ОписаниеТипов("ТаблицаЗначений") Тогда
//Метаданные.Документы[ОбъектМетаданных.Имя].ТабличныеЧасти возвращают массив, поэтому приводим к единообразию
Если Реквизит.Имя = "Объект" Тогда
ТабличныеЧасти = Метаданные.Документы[ОбъектМетаданных.Имя].ТабличныеЧасти;
Иначе
ТабличныеЧасти = Новый Массив;
ТабличныеЧасти.Добавить(Реквизит.Имя);
КонецЕсли;
Для Каждого ТабличнаяЧасть Из ТабличныеЧасти Цикл
Если Реквизит.Имя = "Объект" Тогда
КолонкиТЧНаФорме = Форма.Объект[ТабличнаяЧасть.Имя].Выгрузить().Колонки;
Иначе
КолонкиТЧНаФорме = Форма[Реквизит.Имя].Выгрузить().Колонки;
КонецЕсли;
Для Каждого Колонка Из КолонкиТЧНаФорме Цикл
//Колонка "НомерСтроки" служебная и добавляется на форму автоматически
Если Колонка.Имя = "НомерСтроки" И Реквизит.Имя = "Объект" Тогда
Продолжить;
КонецЕсли;
//Для табличных частей объектов требуется создавать только те колонки, которых нет в метаданных
Если Реквизит.Имя = "Объект" И ТабличнаяЧасть.Реквизиты.Найти(Колонка.Имя) <> Неопределено Тогда
Продолжить;
КонецЕсли;
ОписаниеРеквизита = Новый Структура;
ОписаниеРеквизита.Вставить("Заголовок", Колонка.Заголовок);
ОписаниеРеквизита.Вставить("Имя", Колонка.Имя);
ОписаниеРеквизита.Вставить("ТипЗначения", Колонка.ТипЗначения);
ОписаниеРеквизита.Вставить("СохраняемыеДанные", Ложь);
//Заменяем "Объект" на "Obj" чтобы избежать конфликтов между объектами источника и приемника
Если Реквизит.Имя = "Объект" Тогда
ОписаниеРеквизита.Вставить("Путь", "Obj." + ТабличнаяЧасть.Имя);
Иначе
ОписаниеРеквизита.Вставить("Путь", ТабличнаяЧасть);
КонецЕсли;
ОписаниеРеквизитов.Добавить(ОписаниеРеквизита);
КонецЦикла;
КонецЦикла;
КонецЕсли;
КонецЦикла;
ОписаниеФормы.Вставить("Реквизиты", ОписаниеРеквизитов);
КонецПроцедуры
//Добавляет в описание формы массив команд формы
Процедура с_ДобавитьКомандыФормы(ОписаниеФормы, Форма)
ОписаниеКоманд = Новый Массив;
Для Каждого Команда Из Форма.Команды Цикл
ОписаниеКоманды = Новый Структура;
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "Действие");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "Заголовок");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "ИзменяетСохраняемыеДанные");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "Имя");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "ИспользованиеТекущейСтроки");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "ИспользуемаяТаблица");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "Картинка");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "Отображение");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "Подсказка");
с_ДобавитьЗначениеСвойства(ОписаниеКоманды, Команда, "СочетаниеКлавиш");
ОписаниеКоманд.Добавить(ОписаниеКоманды);
КонецЦикла;
ОписаниеФормы.Вставить("Команды", ОписаниеКоманд);
КонецПроцедуры
//Добавляет в описание формы все свойства формы, в том числе подчиненные элементы и командную панель
Процедура с_ДобавитьСвойстваУправляемойФормы(ОписаниеФормы, Форма, Объект)
//Добавление свойств, общих для всех управляемых форм
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "АвтоЗаголовок");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "АвтоматическоеСохранениеДанныхВНастройках");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "АвтоНавигационнаяСсылка");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ВертикальнаяПрокрутка");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ВертикальноеПоложениеПодчиненных");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ВертикальныйИнтервал");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ВыравниваниеЭлементовИЗаголовков");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ГоризонтальноеПоложениеПодчиненных");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ГоризонтальныйИнтервал");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Группировка");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Доступность");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Заголовок");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ЗакрыватьПриВыборе");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ЗакрыватьПриЗакрытииВладельца");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ИмяФормы");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "КлючНазначенияИспользования");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "КлючСохраненияПоложенияОкна");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Масштаб");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Модифицированность");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "НавигационнаяСсылка");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ОтображатьЗаголовок");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ОтображатьКнопкуЗакрытия");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ОтображениеОбсуждений");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Параметры");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ПоведениеКлавишиEnter");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ПоложениеКоманднойПанели");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ПроверятьЗаполнениеАвтоматически");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "РежимОткрытияОкна");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "СворачиваниеЭлементовПоВажности");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "СохранениеДанныхВНастройках");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "СохраняемыеВНастройкахДанныеМодифицированы");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "ТолькоПросмотр");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "УникальныйИдентификатор");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "УсловноеОформление");
с_ДобавитьЗначениеСвойства(ОписаниеФормы, Форма, "Ширина");
//Рекурсивное добавление подчиненных элементов
ОписаниеФормы.Вставить("КоманднаяПанель", с_ПолучитьОписаниеЭлемента(Форма.КоманднаяПанель));
ОписаниеФормы.Вставить("ПодчиненныеЭлементы", с_ПолучитьОписаниеЭлементов(Форма.ПодчиненныеЭлементы));
ТипОбъекта = ТипЗнч(Объект);
МетаданныеОбъекта = Метаданные.НайтиПоТипу(ТипОбъекта);
ОписаниеФормы.Вставить("ТипОбъекта", ТипОбъекта);
КонецПроцедуры
#Область ОписаниеГруппыФормы
//Добавляет свойства элемента с типом ГруппаФормы
Процедура с_ДобавитьОписаниеГруппыФормы(ОписаниеЭлемента, Элемент)
//Основные свойства
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вид");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Видимость");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Доступность");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Заголовок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеПодсказки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Подсказка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьИзменениеСостава");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СочетаниеКлавиш");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТолькоПросмотр");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекстаЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШрифтЗаголовка");
//Добавляем подчиненные элементы
ОписаниеЭлемента.Вставить("ПодчиненныеЭлементы", с_ПолучитьОписаниеЭлементов(Элемент.ПодчиненныеЭлементы));
//Добавление особых свойств, существующих в зависимости от вида группы
Если Элемент.Вид = ВидГруппыФормы.КоманднаяПанель Тогда
с_ДобавитьРасширениеКоманднойПанели(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.Подменю Тогда
с_ДобавитьРасширениеПодменю(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.ГруппаКолонок Тогда
с_ДобавитьРасширениеГруппыКолонок(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.Страницы Тогда
с_ДобавитьРасширениеСтраниц(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.Страница Тогда
с_ДобавитьРасширениеСтраницы(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.ОбычнаяГруппа Тогда
с_ДобавитьРасширениеОбычнойГруппы(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.ГруппаКнопок Тогда
с_ДобавитьРасширениеГруппыКнопок(ОписаниеЭлемента, Элемент);
КонецЕсли;
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у командной панели
Процедура с_ДобавитьРасширениеКоманднойПанели(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВажностьПриОтображении");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложение");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у подменю
Процедура с_ДобавитьРасширениеПодменю(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Картинка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Отображение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеФигуры");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Фигура");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у командной панели
Процедура с_ДобавитьРасширениеГруппыКолонок(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеВШапке");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Группировка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КартинкаШапки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьВШапке");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьЗаголовок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПутьКДаннымШапки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ФиксацияВТаблице");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ФорматШапки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФонаЗаголовка");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у страниц
Процедура с_ДобавитьРасширениеСтраниц(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИспользованиеТекущейСтроки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИспользуемаяТаблица");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеСтраниц");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекущееСостояниеСтраниц");
ОписаниеЭлемента.Вставить("ТекущаяСтраница", Элемент.ТекущаяСтраница.Имя);
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у страницы
Процедура с_ДобавитьРасширениеСтраницы(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВажностьПриОтображении");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальнаяПрокруткаПриСжатии");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальноеПоложениеПодчиненных");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальныйИнтервал");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыравниваниеЭлементовИЗаголовков");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеПодчиненных");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальныйИнтервал");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Группировка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Картинка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьЗаголовок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПутьКДаннымЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Формат");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у обычной группы
Процедура с_ДобавитьРасширениеОбычнойГруппы(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВажностьПриОтображении");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальноеПоложениеПодчиненных");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальныйИнтервал");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыравниваниеЭлементовИЗаголовков");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеПодчиненных");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальныйИнтервал");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Группировка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЗаголовокСвернутогоОтображения");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИспользованиеТекущейСтроки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИспользуемаяТаблица");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Объединенная");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьЗаголовок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьОтступСлева");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Отображение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеУправления");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Поведение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПутьКДаннымЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СквозноеВыравнивание");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Формат");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФонаЗаголовкаСкрытогоОтображения");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у группы кнопок
Процедура с_ДобавитьРасширениеГруппыКнопок(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Отображение");
КонецПроцедуры
#КонецОбласти
#Область ОписаниеТаблицыФормы
//Добавляет свойства элемента с типом ТаблицаФормы
Процедура с_ДобавитьОписаниеТаблицыФормы(ОписаниеЭлемента, Элемент)
//Основные свойства
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоВводНезаполненного");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоВводНовойСтроки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысотаВСтрокахТаблицы");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоОтметкаНезаполненного");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АктивизироватьПоУмолчанию");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВажностьПриОтображении");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВариантУправленияВысотой");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальнаяПолосаПрокрутки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальныеЛинии");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Видимость");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вывод");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаВСтрокахТаблицы");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаПодвала");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаШапки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальнаяПолосаПрокрутки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальныеЛинии");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Доступность");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Заголовок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИзменятьПорядокСтрок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИзменятьСоставСтрок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИспользованиеТекущейСтроки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КартинкаСтрок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысотаВСтрокахТаблицы");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МножественныйВыбор");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "НачальноеОтображениеДерева");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "НачальноеОтображениеСписка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтметкаНезаполненного");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Отображение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеПодсказки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоведениеПриСжатииПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Подвал");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Подсказка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоискПриВводе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоложениеЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоложениеКоманднойПанели");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоложениеСостоянияПросмотра");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоложениеСтрокиПоиска");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоложениеУправленияПоиском");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПропускатьПриВводе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПутьКДанным");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПутьКДаннымКартинкиСтроки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьНачалоПеретаскивания");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьПеретаскивание");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимВводаСтрок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимВыделения");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимВыделенияСтроки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СочетаниеКлавиш");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекущаяСтрока");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекущийРодитель");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекущийЭлемент");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТолькоПросмотр");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекстаЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЧередованиеЦветовСтрок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шапка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШрифтЗаголовка");
//Добавление подчиненных элементов
ОписаниеЭлемента.Вставить("КоманднаяПанель", с_ПолучитьОписаниеЭлемента(Элемент.КоманднаяПанель));
ОписаниеЭлемента.Вставить("КонтекстноеМеню", с_ПолучитьОписаниеЭлемента(Элемент.КонтекстноеМеню));
ОписаниеЭлемента.Вставить("ПодчиненныеЭлементы", с_ПолучитьОписаниеЭлементов(Элемент.ПодчиненныеЭлементы));
КонецПроцедуры
#КонецОбласти
#Область ОписаниеПоляФормы
//Добавляет свойства элемента с типом ПолеФормы
Процедура с_ДобавитьОписаниеПоляФормы(ОписаниеЭлемента, Элемент)
//Основные свойства
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоВысотаЯчейки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АктивизироватьПоУмолчанию");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВажностьПриОтображении");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальноеПоложение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вид");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Видимость");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГиперссылкаЯчейки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеВПодвале");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеВШапке");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Доступность");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Заголовок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КартинкаПодвала");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КартинкаШапки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОграничениеТипа");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьВПодвале");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьВШапке");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеПодсказки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеПредупрежденияПриРедактировании");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Подсказка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоложениеЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПредупреждениеПриРедактировании");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПропускатьПриВводе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПутьКДанным");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПутьКДаннымПодвала");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимРедактирования");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СочетаниеКлавиш");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекстПодвала");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТолькоПросмотр");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ФиксацияВТаблице");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекстаЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекстаПодвала");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФонаЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФонаПодвала");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШрифтЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШрифтПодвала");
//Добавляем подчиненные элементы
ОписаниеЭлемента.Вставить("КонтекстноеМеню", с_ПолучитьОписаниеЭлемента(Элемент.КонтекстноеМеню));
//Добавление особых свойств, существующих в зависимости от вида поля
Если Элемент.Вид = ВидПоляФормы.ПолеВвода Тогда
с_ДобавитьРасширениеПоляВвода(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеНадписи Тогда
с_ДобавитьРасширениеНадписи(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеФлажка Тогда
с_ДобавитьРасширениеФлажка(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеКартинки Тогда
с_ДобавитьРасширениеКартинки(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПереключателя Тогда
с_ДобавитьРасширениеПереключателя(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеКалендаря Тогда
с_ДобавитьРасширениеКалендаря(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеИндикатора Тогда
с_ДобавитьРасширениеИндикатора(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПолосыРегулирования Тогда
с_ДобавитьРасширениеПолосыРегулирования(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеДиаграммы Тогда
с_ДобавитьРасширениеДиаграммы(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеДиаграммыГанта Тогда
с_ДобавитьРасширениеДиаграммыГанта(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеДендрограммы Тогда
с_ДобавитьРасширениеДендрограммы(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеТекстовогоДокумента Тогда
с_ДобавитьРасширениеТекстовогоДокумента(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеТабличногоДокумента Тогда
с_ДобавитьРасширениеТабличногоДокумента(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеФорматированногоДокумента Тогда
с_ДобавитьРасширениеФорматированногоДокумента(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеHTMLДокумента Тогда
с_ДобавитьРасширениеHTMLДокумента(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеГрафическойСхемы Тогда
с_ДобавитьРасширениеГрафическойСхемы(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеГеографическойСхемы Тогда
с_ДобавитьРасширениеГеографическойСхемы(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПланировщика Тогда
с_ДобавитьРасширениеПланировщика(ОписаниеЭлемента, Элемент);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПериода Тогда
с_ДобавитьРасширениеПериода(ОписаниеЭлемента, Элемент);
КонецЕсли;
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у поля ввода
Процедура с_ДобавитьРасширениеПоляВвода(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоВыборНезаполненного");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоОтметкаНезаполненного");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоПереносСтрок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "БыстрыйВыбор");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыбиратьТип");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыборГруппИЭлементов");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыделятьОтрицательные");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаСпискаВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ДоступныеТипы");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИсторияВыбораПриВводе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КартинкаКнопкиВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КнопкаВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КнопкаВыпадающегоСписка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КнопкаОткрытия");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КнопкаОчистки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КнопкаРегулирования");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КнопкаСоздания");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальноеЗначение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Маска");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МинимальноеЗначение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МногострочныйРежим");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОбновлениеТекстаРедактирования");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтметкаНезаполненного");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеКнопкиВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПараметрыВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПодсказкаВвода");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьСоставнойТип");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РасширенноеРедактирование");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РедактированиеТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимВыбораИзСписка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимВыбораНезаполненного");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимПароля");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СвязьПоТипу");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СписокВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ФормаВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Формат");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ФорматРедактирования");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШиринаВыпадающегоСписка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у надписи
Процедура с_ДобавитьРасширениеНадписи(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыделятьОтрицательные");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Гиперссылка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Рамка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимПароля");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Формат");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у флажка
Процедура с_ДобавитьРасширениеФлажка(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВидФлажка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаЗаголовкаЭлемента");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаЭлемента");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОдинаковаяШиринаЭлементов");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТриСостояния");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ФорматРедактирования");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШиринаЭлемента");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у картинки
Процедура с_ДобавитьРасширениеКартинки(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Гиперссылка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КартинкаЗначений");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Масштабировать");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазмерКартинки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьНачалоПеретаскивания");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьПеретаскивание");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Рамка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекстНевыбраннойКартинки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у переключателя
Процедура с_ДобавитьРасширениеПереключателя(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВидПереключателя");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаЗаголовкаЭлемента");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаЭлемента");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КоличествоКолонок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОдинаковаяШиринаКолонок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СписокВыбора");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШиринаЭлемента");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у календаря
Процедура с_ДобавитьРасширениеКалендаря(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыделенныеДаты");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаВМесяцах");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КонецПериодаОтображения");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "НачалоПериодаОтображения");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьПанельМесяцев");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьТекущуюДату");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПеремещениеПоКалендарю");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьНачалоПеретаскивания");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьПеретаскивание");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Рамка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимВыделения");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШиринаВМесяцах");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у индикатора
Процедура с_ДобавитьРасширениеИндикатора(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальноеЗначение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МинимальноеЗначение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ориентация");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьПроценты");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Отображение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у полосы регулирования
Процедура с_ДобавитьРасширениеПолосыРегулирования(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "БольшойШаг");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальноеЗначение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МинимальноеЗначение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ориентация");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеРазметки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шаг");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ШагРазметки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у диаграммы
Процедура с_ДобавитьРасширениеДиаграммы(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у диаграммы ганта
Процедура с_ДобавитьРасширениеДиаграммыГанта(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у дендрограммы
Процедура с_ДобавитьРасширениеДендрограммы(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у текстового документа
Процедура с_ДобавитьРасширениеТекстовогоДокумента(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вывод");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыделенныйТекст");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у табличного документа
Процедура с_ДобавитьРасширениеТабличногоДокумента(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальнаяПолосаПрокрутки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вывод");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальнаяПолосаПрокрутки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Защита");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИспользуемоеИмяФайла");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьГруппировки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьЗаголовки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьИменаСтрокИКолонок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьИменаЯчеек");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображатьСетку");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеСостояния");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьНачалоПеретаскивания");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьПеретаскивание");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Редактирование");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимМасштабированияПросмотра");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РежимОтображенияВыделения");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекущаяОбласть");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТипКурсоров");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЧерноБелыйПросмотр");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у форматированного документа
Процедура с_ДобавитьРасширениеФорматированногоДокумента(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вывод");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыделенныйТекст");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у HTML документа
Процедура с_ДобавитьРасширениеHTMLДокумента(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вывод");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Документ");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИнформацияПрограммыПросмотра");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у графической схемы
Процедура с_ДобавитьРасширениеГрафическойСхемы(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вывод");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Редактирование");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТекущийЭлемент");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у географической схемы
Процедура с_ДобавитьРасширениеГеографическойСхемы(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вывод");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у планировщика
Процедура с_ДобавитьРасширениеПланировщика(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВыделенныеЭлементы");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьНачалоПеретаскивания");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РазрешитьПеретаскивание");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
КонецПроцедуры
//Добавляет свойства элемента, которые есть только у периода
Процедура с_ДобавитьРасширениеПериода(ОписаниеЭлемента, Элемент)
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Рамка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
#КонецОбласти
#Область ОписаниеКнопкиФормы
//Добавляет свойства элемента с типом КнопкаФормы
Процедура с_ДобавитьОписаниеКнопкиФормы(ОписаниеЭлемента, Элемент)
//Основные свойства
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АвтоМаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "АктивизироватьПоУмолчанию");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВажностьПриОтображении");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВертикальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Вид");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Видимость");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Высота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ВысотаЗаголовка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ГоризонтальноеПоложениеВГруппе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Доступность");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Заголовок");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ИмяКоманды");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Картинка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "КнопкаПоУмолчанию");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяВысота");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "МаксимальнаяШирина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Отображение");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеПодсказки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ОтображениеФигуры");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПоложениеКартинки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Пометка");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ПропускатьПриВводе");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоВертикали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "РастягиватьПоГоризонтали");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "СочетаниеКлавиш");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ТолькоВоВсехДействиях");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Фигура");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветРамки");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветТекста");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "ЦветФона");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Ширина");
с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, "Шрифт");
КонецПроцедуры
#КонецОбласти
#Область ПолучитьОписаниеФормыВспомогательныеПроцедурыИФункции
//Процедура для копирования свойств в структуру с описанием
Процедура с_ДобавитьЗначениеСвойства(ОписаниеЭлемента, Элемент, ИмяСвойства)
Значение = Элемент[ИмяСвойства];
ОписаниеЭлемента.Вставить(ИмяСвойства, Значение);
КонецПроцедуры
//Возвращает структуру с описанием всех свойств элемента, включая подчиненные элементы для групп и для таблиц
Функция с_ПолучитьОписаниеЭлемента(Элемент)
ОписаниеЭлемента = Новый Структура;
//Чтобы отличать корневые элементы от остальных для корневых в качестве родителя передаем "Неопределено"
Если ТипЗнч(Элемент.Родитель) = Тип("УправляемаяФорма") Тогда
ОписаниеЭлемента.Вставить("Родитель", Неопределено);
Иначе
ОписаниеЭлемента.Вставить("Родитель", Элемент.Родитель.Имя);
КонецЕсли;
//Основные свойства элемента
ОписаниеЭлемента.Вставить("Имя", Элемент.Имя);
ОписаниеЭлемента.Вставить("ТипЭлемента", ТипЗнч(Элемент));
//Остальные свойства в зависимости от типа элемента
Если ТипЗнч(Элемент) = Тип("ГруппаФормы") Тогда
с_ДобавитьОписаниеГруппыФормы(ОписаниеЭлемента, Элемент);
ИначеЕсли ТипЗнч(Элемент) = Тип("ТаблицаФормы") Тогда
с_ДобавитьОписаниеТаблицыФормы(ОписаниеЭлемента, Элемент);
ИначеЕсли ТипЗнч(Элемент) = Тип("ПолеФормы") Тогда
с_ДобавитьОписаниеПоляФормы(ОписаниеЭлемента, Элемент);
ИначеЕсли ТипЗнч(Элемент) = Тип("КнопкаФормы") Тогда
с_ДобавитьОписаниеКнопкиФормы(ОписаниеЭлемента, Элемент);
КонецЕсли;
Для Каждого КлючИЗначение Из ОписаниеЭлемента Цикл
//Заменяем в пути к данным "Объект" на "Obj" чтобы не было конфликтов между объектами форм источника и приемника
Если (КлючИЗначение.Ключ = "ПутьКДанным"
Или КлючИЗначение.Ключ = "ПутьКДаннымПодвала"
Или КлючИЗначение.Ключ = "ПутьКДаннымЗаголовка")
И Лев(КлючИЗначение.Значение, 6) = "Объект" Тогда
ОписаниеЭлемента[КлючИЗначение.Ключ] = "Obj" + Прав(КлючИЗначение.Значение, СтрДлина(КлючИЗначение.Значение) - 6);
КонецЕсли;
КонецЦикла;
Возврат ОписаниеЭлемента;
КонецФункции
//Возвращает массив с описаниями элементов, входящих в коллекцию
Функция с_ПолучитьОписаниеЭлементов(КоллекцияЭлементовФормы)
ОписаниеКоллекции = Новый Массив;
Для Каждого Элемент Из КоллекцияЭлементовФормы Цикл
ОписаниеЭлемента = с_ПолучитьОписаниеЭлемента(Элемент);
ОписаниеКоллекции.Добавить(ОписаниеЭлемента);
КонецЦикла;
Возврат ОписаниеКоллекции;
КонецФункции
#КонецОбласти
#КонецОбласти
#Область ЗаполнитьФормуПоОписанию
// Процедура - С заполнить форму по описанию
//
// Пример вызова:
// с_КопированиеФорм.с_ЗаполнитьФормуПоОписанию(ЭтаФорма, РеквизитФормыВЗначение("Объект"), АдресВоВременномХранилище);
//
// Параметры:
// Форма - УправляемаяФорма - Форма, описание которой требуется получить
// АдресВоВременномХранилище - Временное хранилище, в котором находится описание формы
//
Процедура с_ЗаполнитьФормуПоОписанию(Форма, АдресВоВременномХранилище) Экспорт
ОписаниеФормы = ПолучитьИзВременногоХранилища(АдресВоВременномХранилище);
//Реквизиты
с_СоздатьРеквизитыФормы(Форма, ОписаниеФормы);
//Коменды
с_СоздатьКомандыФормы(Форма, ОписаниеФормы);
//Свойства и элементы формы
с_ЗаполнитьСвойстваФормы(Форма, ОписаниеФормы);
КонецПроцедуры
//Создает на форме реквизиты по переданному описанию
Процедура с_СоздатьРеквизитыФормы(Форма, ОписаниеФормы)
ДобавляемыеРеквизиты = Новый Массив;
//Заполнение массива ДобавляемыеРеквизиты
Для Каждого ОписаниеРеквизита Из ОписаниеФормы.Реквизиты Цикл
Если ОписаниеРеквизита.Имя = "Obj" Тогда
ТипЗначения = Новый ОписаниеТипов("ДокументОбъект." + ОписаниеРеквизита.ТипЗначения);
Иначе
ТипЗначения = ОписаниеРеквизита.ТипЗначения;
КонецЕсли;
Реквизит = Новый РеквизитФормы(ОписаниеРеквизита.Имя, ТипЗначения, ОписаниеРеквизита.Путь, ОписаниеРеквизита.Заголовок);
с_ЗаполнитьЗначениеСвойства(Реквизит, ОписаниеРеквизита, "СохраняемыеДанные");
ДобавляемыеРеквизиты.Добавить(Реквизит);
КонецЦикла;
Форма.ИзменитьРеквизиты(ДобавляемыеРеквизиты);
//Заполнение значений реквизитов (для копирования форм с уже заполненными реквизитами)
Для Каждого ОписаниеРеквизита Из ОписаниеФормы.Реквизиты Цикл
Если ОписаниеРеквизита.Свойство("Значение") Тогда
Если ТипЗнч(ОписаниеРеквизита.Значение) = Тип("ДанныеФормыКоллекция") Тогда
Форма[ОписаниеРеквизита.Имя].Очистить();
Форма[ОписаниеРеквизита.Имя].Загрузить(ОписаниеРеквизита.Значение.Выгрузить());
Иначе
Форма[ОписаниеРеквизита.Имя] = ОписаниеРеквизита.Значение;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
//Создает на форме команды по переданному описанию
Процедура с_СоздатьКомандыФормы(Форма, ОписаниеФормы)
Для Каждого ОписаниеКоманды Из ОписаниеФормы.Команды Цикл
Команда = Форма.Команды.Добавить(ОписаниеКоманды.Имя);
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "Действие");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "Заголовок");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "ИзменяетСохраняемыеДанные");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "ИспользованиеТекущейСтроки");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "ИспользуемаяТаблица");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "Картинка");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "Отображение");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "Подсказка");
с_ЗаполнитьЗначениеСвойства(Команда, ОписаниеКоманды, "СочетаниеКлавиш");
КонецЦикла;
КонецПроцедуры
//Заполняет свойства формы по переданному описанию, в том числе создает подчиненные элементы и заполняет командную панель
Процедура с_ЗаполнитьСвойстваФормы(Форма, ОписаниеФормы)
//Основные свойства
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "АвтоЗаголовок");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "АвтоматическоеСохранениеДанныхВНастройках");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "АвтоНавигационнаяСсылка");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ВертикальнаяПрокрутка");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ВертикальноеПоложениеПодчиненных");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ВертикальныйИнтервал");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ВыравниваниеЭлементовИЗаголовков");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "Высота");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ГоризонтальноеПоложениеПодчиненных");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ГоризонтальныйИнтервал");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "Группировка");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "Доступность");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "Заголовок");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ЗакрыватьПриВыборе");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ЗакрыватьПриЗакрытииВладельца");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "КлючНазначенияИспользования");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "КлючСохраненияПоложенияОкна");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "Масштаб");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "Модифицированность");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "НавигационнаяСсылка");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ОтображатьЗаголовок");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ОтображатьКнопкуЗакрытия");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ОтображениеОбсуждений");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ПоведениеКлавишиEnter");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ПоложениеКоманднойПанели");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ПроверятьЗаполнениеАвтоматически");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "РежимОткрытияОкна");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "СворачиваниеЭлементовПоВажности");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "СохранениеДанныхВНастройках");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "СохраняемыеВНастройкахДанныеМодифицированы");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "ТолькоПросмотр");
с_ЗаполнитьЗначениеСвойства(Форма, ОписаниеФормы, "Ширина");
//Создаем подчиненные элементы
с_ЗаполнитьСвойстваЭлементаФормы(Форма, Форма.КоманднаяПанель, ОписаниеФормы.КоманднаяПанель);
с_СоздатьЭлементы(Форма, ОписаниеФормы.ПодчиненныеЭлементы);
ТипОбъекта = ОписаниеФормы.ТипОбъекта;
МетаданныеОбъекта = Метаданные.НайтиПоТипу(ТипОбъекта);
КонецПроцедуры
#Область ГруппыФормы
//Заполняет свойства элемента с типом ГруппаФормы
Процедура с_ЗаполнитьСвойстваГруппыФормы(Форма, Элемент, Знач ОписаниеЭлемента)
//Основные свойства
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вид");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Видимость");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Доступность");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Заголовок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеПодсказки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Подсказка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьИзменениеСостава");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "СочетаниеКлавиш");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТолькоПросмотр");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекстаЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШрифтЗаголовка");
//Создаем подчиненные элементы
с_СоздатьЭлементы(Форма, ОписаниеЭлемента.ПодчиненныеЭлементы);
//Заполнение особых свойств, существующих в зависимости от вида группы
Если Элемент.Вид = ВидГруппыФормы.КоманднаяПанель Тогда
с_ЗаполнитьРасширениеКоманднойПанели(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.Подменю Тогда
с_ЗаполнитьРасширениеПодменю(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.ГруппаКолонок Тогда
с_ЗаполнитьРасширениеГруппыКолонок(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.Страницы Тогда
с_ЗаполнитьРасширениеСтраниц(Форма, Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.Страница Тогда
с_ЗаполнитьРасширениеСтраницы(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.ОбычнаяГруппа Тогда
с_ЗаполнитьРасширениеОбычнойГруппы(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидГруппыФормы.ГруппаКнопок Тогда
с_ЗаполнитьРасширениеГруппыКнопок(Элемент, ОписаниеЭлемента);
КонецЕсли;
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у командной панели
Процедура с_ЗаполнитьРасширениеКоманднойПанели(Элемент, ОписаниеЭлемента);
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВажностьПриОтображении");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложение");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у подменю
Процедура с_ЗаполнитьРасширениеПодменю(Элемент, ОписаниеЭлемента);
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Картинка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Отображение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеФигуры");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Фигура");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у группы колонок
Процедура с_ЗаполнитьРасширениеГруппыКолонок(Элемент, ОписаниеЭлемента);
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеВШапке");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Группировка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КартинкаШапки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьВШапке");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьЗаголовок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПутьКДаннымШапки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ФиксацияВТаблице");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ФорматШапки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФонаЗаголовка");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у страниц
Процедура с_ЗаполнитьРасширениеСтраниц(Форма, Элемент, ОписаниеЭлемента);
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИспользованиеТекущейСтроки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИспользуемаяТаблица");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеСтраниц");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекущееСостояниеСтраниц");
//Если копируется уже открытая форма, текущая страница может отличаться
Элемент.ТекущаяСтраница = Форма.Элементы[ОписаниеЭлемента.ТекущаяСтраница];
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у страницы
Процедура с_ЗаполнитьРасширениеСтраницы(Элемент, ОписаниеЭлемента);
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВажностьПриОтображении");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальнаяПрокруткаПриСжатии");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальноеПоложениеПодчиненных");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальныйИнтервал");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыравниваниеЭлементовИЗаголовков");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеПодчиненных");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальныйИнтервал");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Группировка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Картинка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьЗаголовок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПутьКДаннымЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Формат");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у обычной группы
Процедура с_ЗаполнитьРасширениеОбычнойГруппы(Элемент, ОписаниеЭлемента);
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВажностьПриОтображении");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальноеПоложениеПодчиненных");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальныйИнтервал");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыравниваниеЭлементовИЗаголовков");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеПодчиненных");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальныйИнтервал");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Группировка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЗаголовокСвернутогоОтображения");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИспользованиеТекущейСтроки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИспользуемаяТаблица");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Объединенная");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьЗаголовок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьОтступСлева");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Отображение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеУправления");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Поведение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "СквозноеВыравнивание");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Формат");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФонаЗаголовкаСкрытогоОтображения");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у группы колонок
Процедура с_ЗаполнитьРасширениеГруппыКнопок(Элемент, ОписаниеЭлемента);
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Отображение");
КонецПроцедуры
#КонецОбласти
#Область ТаблицыФормы
//Заполняет свойства элемента с типом ТаблицаФормы
Процедура с_ЗаполнитьСвойстваТаблицыФормы(Форма, Элемент, ОписаниеЭлемента)
//Основные свойства
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоВводНезаполненного");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоВводНовойСтроки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысотаВСтрокахТаблицы");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоОтметкаНезаполненного");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АктивизироватьПоУмолчанию");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВажностьПриОтображении");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВариантУправленияВысотой");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальнаяПолосаПрокрутки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальныеЛинии");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Видимость");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вывод");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаВСтрокахТаблицы");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаПодвала");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаШапки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальнаяПолосаПрокрутки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальныеЛинии");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Доступность");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Заголовок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИзменятьПорядокСтрок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИзменятьСоставСтрок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИспользованиеТекущейСтроки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КартинкаСтрок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысотаВСтрокахТаблицы");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МножественныйВыбор");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "НачальноеОтображениеДерева");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "НачальноеОтображениеСписка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтметкаНезаполненного");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Отображение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеПодсказки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоведениеПриСжатииПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Подвал");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Подсказка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоискПриВводе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоложениеЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоложениеКоманднойПанели");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоложениеСостоянияПросмотра");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоложениеСтрокиПоиска");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоложениеУправленияПоиском");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПропускатьПриВводе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПутьКДанным");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПутьКДаннымКартинкиСтроки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьНачалоПеретаскивания");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьПеретаскивание");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимВводаСтрок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимВыделения");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимВыделенияСтроки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "СочетаниеКлавиш");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекущаяСтрока");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекущийРодитель");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекущийЭлемент");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТолькоПросмотр");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекстаЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЧередованиеЦветовСтрок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шапка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШрифтЗаголовка");
//Создаем подчиненные элементы
с_СоздатьЭлементы(Форма, ОписаниеЭлемента.ПодчиненныеЭлементы);
//Командная панель и контекстное меню существуют на форме по умолчанию, их нужно только заполнить
с_ЗаполнитьСвойстваЭлементаФормы(Форма, Элемент.КоманднаяПанель, ОписаниеЭлемента.КоманднаяПанель);
с_ЗаполнитьСвойстваЭлементаФормы(Форма, Элемент.КонтекстноеМеню, ОписаниеЭлемента.КонтекстноеМеню);
КонецПроцедуры
#КонецОбласти
#Область ПоляФормы
//Заполняет свойства элемента с типом ПолеФормы
Процедура с_ЗаполнитьСвойстваПоляФормы(Элемент, ОписаниеЭлемента)
//Основные свойства
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоВысотаЯчейки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АктивизироватьПоУмолчанию");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВажностьПриОтображении");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальноеПоложение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вид");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Видимость");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГиперссылкаЯчейки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеВПодвале");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеВШапке");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Доступность");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Заголовок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КартинкаПодвала");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КартинкаШапки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОграничениеТипа");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьВПодвале");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьВШапке");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеПодсказки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеПредупрежденияПриРедактировании");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Подсказка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоложениеЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПредупреждениеПриРедактировании");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПропускатьПриВводе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПутьКДанным");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПутьКДаннымПодвала");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимРедактирования");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "СочетаниеКлавиш");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекстПодвала");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТолькоПросмотр");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ФиксацияВТаблице");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекстаЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекстаПодвала");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФонаЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФонаПодвала");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШрифтЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШрифтПодвала");
//Заполнение особых свойств, существующих в зависимости от вида поля
Если Элемент.Вид = ВидПоляФормы.ПолеВвода Тогда
с_ЗаполнитьРасширениеПоляВвода(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеНадписи Тогда
с_ЗаполнитьРасширениеНадписи(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеФлажка Тогда
с_ЗаполнитьРасширениеФлажка(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеКартинки Тогда
с_ЗаполнитьРасширениеКартинки(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПереключателя Тогда
с_ЗаполнитьРасширениеПереключателя(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеКалендаря Тогда
с_ЗаполнитьРасширениеКалендаря(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеИндикатора Тогда
с_ЗаполнитьРасширениеИндикатора(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПолосыРегулирования Тогда
с_ЗаполнитьРасширениеПолосыРегулирования(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеДиаграммы Тогда
с_ЗаполнитьРасширениеДиаграммы(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеДиаграммыГанта Тогда
с_ЗаполнитьРасширениеДиаграммыГанта(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеДендрограммы Тогда
с_ЗаполнитьРасширениеДендрограммы(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеТекстовогоДокумента Тогда
с_ЗаполнитьРасширениеТекстовогоДокумента(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеТабличногоДокумента Тогда
с_ЗаполнитьРасширениеТабличногоДокумента(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеФорматированногоДокумента Тогда
с_ЗаполнитьРасширениеФорматированногоДокумента(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеHTMLДокумента Тогда
с_ЗаполнитьРасширениеHTMLДокумента(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеГрафическойСхемы Тогда
с_ЗаполнитьРасширениеГрафическойСхемы(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеГеографическойСхемы Тогда
с_ЗаполнитьРасширениеГеографическойСхемы(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПланировщика Тогда
с_ЗаполнитьРасширениеПланировщика(Элемент, ОписаниеЭлемента);
ИначеЕсли Элемент.Вид = ВидПоляФормы.ПолеПериода Тогда
с_ЗаполнитьРасширениеПериода(Элемент, ОписаниеЭлемента);
КонецЕсли;
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у поля ввода
Процедура с_ЗаполнитьРасширениеПоляВвода(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоВыборНезаполненного");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоОтметкаНезаполненного");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоПереносСтрок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "БыстрыйВыбор");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыбиратьТип");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыборГруппИЭлементов");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыделятьОтрицательные");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаСпискаВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ДоступныеТипы");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИсторияВыбораПриВводе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КартинкаКнопкиВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КнопкаВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КнопкаВыпадающегоСписка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КнопкаОткрытия");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КнопкаОчистки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КнопкаРегулирования");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КнопкаСоздания");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальноеЗначение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Маска");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МинимальноеЗначение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МногострочныйРежим");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОбновлениеТекстаРедактирования");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтметкаНезаполненного");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеКнопкиВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПараметрыВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПодсказкаВвода");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьСоставнойТип");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РасширенноеРедактирование");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РедактированиеТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимВыбораИзСписка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимВыбораНезаполненного");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимПароля");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ФормаВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Формат");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ФорматРедактирования");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШиринаВыпадающегоСписка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у надписи
Процедура с_ЗаполнитьРасширениеНадписи(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыделятьОтрицательные");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Гиперссылка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Рамка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимПароля");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Формат");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у флажка
Процедура с_ЗаполнитьРасширениеФлажка(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВидФлажка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаЗаголовкаЭлемента");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаЭлемента");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОдинаковаяШиринаЭлементов");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТриСостояния");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ФорматРедактирования");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШиринаЭлемента");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у картинки
Процедура с_ЗаполнитьРасширениеКартинки(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Гиперссылка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КартинкаЗначений");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Масштабировать");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазмерКартинки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьНачалоПеретаскивания");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьПеретаскивание");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Рамка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекстНевыбраннойКартинки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у переключателя
Процедура с_ЗаполнитьРасширениеПереключателя(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВидПереключателя");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаЗаголовкаЭлемента");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаЭлемента");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КоличествоКолонок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОдинаковаяШиринаКолонок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "СписокВыбора");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШиринаЭлемента");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у календаря
Процедура с_ЗаполнитьРасширениеКалендаря(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыделенныеДаты");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаВМесяцах");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КонецПериодаОтображения");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "НачалоПериодаОтображения");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьПанельМесяцев");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьТекущуюДату");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПеремещениеПоКалендарю");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьНачалоПеретаскивания");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьПеретаскивание");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Рамка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимВыделения");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШиринаВМесяцах");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у индикатора
Процедура с_ЗаполнитьРасширениеИндикатора(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальноеЗначение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МинимальноеЗначение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ориентация");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьПроценты");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Отображение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у полосы регулирования
Процедура с_ЗаполнитьРасширениеПолосыРегулирования(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "БольшойШаг");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальноеЗначение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МинимальноеЗначение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ориентация");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеРазметки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шаг");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ШагРазметки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у диаграммы
Процедура с_ЗаполнитьРасширениеДиаграммы(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у диаграммы ганта
Процедура с_ЗаполнитьРасширениеДиаграммыГанта(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у дендрограммы
Процедура с_ЗаполнитьРасширениеДендрограммы(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у текстового документа
Процедура с_ЗаполнитьРасширениеТекстовогоДокумента(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вывод");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыделенныйТекст");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у табличного документа
Процедура с_ЗаполнитьРасширениеТабличногоДокумента(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальнаяПолосаПрокрутки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вывод");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальнаяПолосаПрокрутки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Защита");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИспользуемоеИмяФайла");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьГруппировки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьЗаголовки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьИменаСтрокИКолонок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьИменаЯчеек");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображатьСетку");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеСостояния");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьНачалоПеретаскивания");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьПеретаскивание");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Редактирование");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимМасштабированияПросмотра");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РежимОтображенияВыделения");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекущаяОбласть");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТипКурсоров");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЧерноБелыйПросмотр");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у форматированного документа
Процедура с_ЗаполнитьРасширениеФорматированногоДокумента(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вывод");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыделенныйТекст");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у HTML документа
Процедура с_ЗаполнитьРасширениеHTMLДокумента(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вывод");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Документ");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИнформацияПрограммыПросмотра");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у графической схемы
Процедура с_ЗаполнитьРасширениеГрафическойСхемы(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вывод");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Редактирование");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТекущийЭлемент");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у географической схемы
Процедура с_ЗаполнитьРасширениеГеографическойСхемы(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вывод");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у планировщика
Процедура с_ЗаполнитьРасширениеПланировщика(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВыделенныеЭлементы");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьНачалоПеретаскивания");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РазрешитьПеретаскивание");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
КонецПроцедуры
//Заполняет свойства элемента, которые есть только у периода
Процедура с_ЗаполнитьРасширениеПериода(Элемент, ОписаниеЭлемента)
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Рамка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
#КонецОбласти
#Область КнопкиФормы
//Заполняет свойства элемента с типом КнопкаФормы
Процедура с_ЗаполнитьСвойстваКнопкиФормы(Элемент, ОписаниеЭлемента)
//Основные свойства
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АвтоМаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "АктивизироватьПоУмолчанию");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВажностьПриОтображении");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВертикальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Вид");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Видимость");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Высота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ВысотаЗаголовка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ГоризонтальноеПоложениеВГруппе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Доступность");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Заголовок");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ИмяКоманды");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Картинка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "КнопкаПоУмолчанию");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяВысота");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "МаксимальнаяШирина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Отображение");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеПодсказки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ОтображениеФигуры");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПоложениеКартинки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Пометка");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ПропускатьПриВводе");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоВертикали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "РастягиватьПоГоризонтали");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "СочетаниеКлавиш");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ТолькоВоВсехДействиях");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Фигура");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветРамки");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветТекста");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "ЦветФона");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Ширина");
с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, "Шрифт");
КонецПроцедуры
#КонецОбласти
#Область ЗаполнитьФормуПоОПисаниюВспомогательныеПроцедурыИФункции
//Процедура для заполнения конкретного свойства из описания
Процедура с_ЗаполнитьЗначениеСвойства(Элемент, ОписаниеЭлемента, ИмяСвойства);
Если Элемент[ИмяСвойства] <> ОписаниеЭлемента[ИмяСвойства] Тогда
Элемент[ИмяСвойства] = ОписаниеЭлемента[ИмяСвойства];
КонецЕсли;
КонецПроцедуры
//Процедура для создания элементов по списку описаний
Процедура с_СоздатьЭлементы(Форма, ОписаниеКоллекции)
Для Каждого ОписаниеЭлемента Из ОписаниеКоллекции Цикл
//"Неопределено" в качестве родителя записано у корневых элементов
Если ОписаниеЭлемента.Родитель = Неопределено Тогда
Родитель = Форма;
Иначе
Родитель = Форма.Элементы[ОписаниеЭлемента.Родитель];
КонецЕсли;
//Создаем элемент на форме
Элемент = Форма.Элементы.Добавить(ОписаниеЭлемента.Имя, ОписаниеЭлемента.ТипЭлемента, Родитель);
//Заполняем элемент в соответствии с описанием
с_ЗаполнитьСвойстваЭлементаФормы(Форма, Элемент, ОписаниеЭлемента);
КонецЦикла;
КонецПроцедуры
//Заполняет элемент по описанию с учетом типа элемента
Процедура с_ЗаполнитьСвойстваЭлементаФормы(Форма, Элемент, ОписаниеЭлемента)
Если ОписаниеЭлемента.ТипЭлемента = Тип("ГруппаФормы") Тогда
с_ЗаполнитьСвойстваГруппыФормы(Форма, Элемент, ОписаниеЭлемента);
ИначеЕсли ОписаниеЭлемента.ТипЭлемента = Тип("ТаблицаФормы") Тогда
с_ЗаполнитьСвойстваТаблицыФормы(Форма, Элемент, ОписаниеЭлемента);
ИначеЕсли ОписаниеЭлемента.ТипЭлемента = Тип("ПолеФормы") Тогда
с_ЗаполнитьСвойстваПоляФормы(Элемент, ОписаниеЭлемента);
ИначеЕсли ОписаниеЭлемента.ТипЭлемента = Тип("КнопкаФормы") Тогда
с_ЗаполнитьСвойстваКнопкиФормы(Элемент, ОписаниеЭлемента);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецОбласти
Конфигурация значения не имеет.
Обе обработки тестировались на платформе 8.3.15.1565
Внешняя обработка заполнения тестировалась на БСП версии 3.0.3.77
Обработка копирования форм от БСП не зависит.