ВыполнитьОтложеннуюИнициализацию (БСП)

Автор: 1С
ОбщийМодуль.УправлениеКонтактнойИнформацией
БСП

Выполнить отложенную инициализацию. Выполняет отложенную инициализацию реквизитов и элементов контактной информации.

// Выполняет отложенную инициализацию реквизитов и элементов контактной информации.
//
// Параметры:
//  Форма                    - ФормаКлиентскогоПриложения - форма объекта-владельца, предназначенная для вывода контактной информации.
//  Объект                   - Произвольный - объект-владелец контактной информации.
//  ИмяЭлементаДляРазмещения - Строка - имя группы, где размещена контактная информация.
//
Процедура ВыполнитьОтложеннуюИнициализацию(Форма, Объект, ИмяЭлементаДляРазмещения = "ГруппаКонтактнаяИнформация") Экспорт
	
	КонтактнаяИнформацияЗаглушка = Форма.Элементы.Найти("КонтактнаяИнформацияЗаглушка"); // временный элемент
	Если КонтактнаяИнформацияЗаглушка <> Неопределено Тогда
		Форма.Элементы.Удалить(КонтактнаяИнформацияЗаглушка);
	КонецЕсли;
	
	ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения);
	
	КонтактнаяИнформацияОписаниеДополнительныхРеквизитов = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Выгрузить(, "Вид, Представление, Значение, Комментарий");
	Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Очистить();
	
	ПоложениеЗаголовкаКИ = ?(ЗначениеЗаполнено(ПараметрыКонтактнойИнформации.ПоложениеЗаголовка), ПредопределенноеЗначение(ПараметрыКонтактнойИнформации.ПоложениеЗаголовка), ПоложениеЗаголовкаЭлементаФормы.Лево);
	ПриСозданииНаСервере(Форма, Объект, ИмяЭлементаДляРазмещения, ПоложениеЗаголовкаКИ, ПараметрыКонтактнойИнформации.ИсключаемыеВиды);
	ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения);
	
	Для Каждого ВидКонтактнойИнформации Из ПараметрыКонтактнойИнформации.ИсключаемыеВиды Цикл
		
		Отбор = Новый Структура("Вид", ВидКонтактнойИнформации);
		МассивСтрок = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор);
		
		Если МассивСтрок.Количество() > 0 Тогда
			СохраненноеЗначение = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор)[0];
			ТекущееЗначение = МассивСтрок[0];
			ЗаполнитьЗначенияСвойств(ТекущееЗначение, СохраненноеЗначение);
			Форма[ТекущееЗначение.ИмяРеквизита] = СохраненноеЗначение.Представление;
		КонецЕсли;
	КонецЦикла;
	
	Если Форма.Элементы.Найти("ПустаяДекорацияКонтактнаяИнформация") <> Неопределено Тогда
		Форма.Элементы.ПустаяДекорацияКонтактнаяИнформация.Видимость = Ложь;
	КонецЕсли;
	
	ПараметрыКонтактнойИнформации.ВыполненаОтложеннаяИнициализация = Истина;
	
КонецПроцедуры

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ВыполнитьОтложенныеОбработчики (БСП)

ВыполнитьОтложенныйОбработчик (БСП)

ОповеститьОтложенныеОбработчикиНеВыполнены (БСП)

ВыполнитьОтложенноеОбновлениеСейчас (БСП)

ВыполнитьОтложенноеОбновление (БСП)

ВыполненаРегистрацияОтложенныхОбработчиковОбновления (БСП)

ВыполнитьНаСторонеПодготовкаСертификатовПослеИнициализацииСертификата (БСП)

ВыполнитьОтложенноеПроведениеДокументов (БСП)

Инициализация компоновщика настроек

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз